From 6d409aacdd4e4dbf63b6d8625dab62b937ae5ef1 Mon Sep 17 00:00:00 2001 From: Enrique Artal Date: Thu, 18 Jul 2024 16:51:43 +0200 Subject: [PATCH] deformacion --- DeformacionGenerica0.ipynb | 1860 ++++++++++++++++++++++++++++++++++++ 1 file changed, 1860 insertions(+) create mode 100644 DeformacionGenerica0.ipynb diff --git a/DeformacionGenerica0.ipynb b/DeformacionGenerica0.ipynb new file mode 100644 index 0000000..5123f8b --- /dev/null +++ b/DeformacionGenerica0.ipynb @@ -0,0 +1,1860 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "72d5a30c-1a59-4a55-9680-fdfa7979625b", + "metadata": {}, + "outputs": [], + "source": [ + "# load('zetas_triples_general.py')\n", + "R. = PolynomialRing(QQ, order='neglex')\n", + "S. = PolynomialRing(QQ, order='neglex')\n", + "f = v^2 - u^2\n", + "g = u^4\n", + "F = z^3 - 3 * f(u=x, v=y) * z + 2 * g(u=x, v=y)\n", + "h = F.discriminant(z)(x=u, y=v)" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "57f4e587-fd6a-4aa2-8423-78e8b5f0d2dd", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "10" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "F.jacobian_ideal().vector_space_dimension()" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "9207fe2e-adca-4549-a083-74d467563684", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "10" + ] + }, + "execution_count": 3, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "R0. = QQ[]\n", + "Kt = R0.fraction_field()\n", + "Rt. = PolynomialRing(Kt, order='neglex')\n", + "S. = PolynomialRing(Kt, order='neglex')\n", + "f = v^2 - u^2\n", + "g = u^4\n", + "F = z^3 - 3 * f(u=x, v=y) * z + 2 * g(u=x, v=y)\n", + "h = F.discriminant(z)(x=u, y=v)\n", + "F.jacobian_ideal().vector_space_dimension()" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "27e92ddc-34d6-4290-880f-9d3561a8ec4e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "10" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Ft = F + t * x * z^2\n", + "Ft.jacobian_ideal().vector_space_dimension()" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "8cc358aa-03d1-4b9c-b4ff-87b0324bd55b", + "metadata": {}, + "outputs": [], + "source": [ + "load('zetas_triples_general.py')\n", + "ht = Ft.discriminant(z)(x=u, y=v)" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "d21a93b0-b0c4-4cd2-b648-f4bca8f78376", + "metadata": {}, + "outputs": [], + "source": [ + "Zt = ZetaFunctions(ht)\n", + "Z = ZetaFunctions(h)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "59240908-d672-4520-90e5-7358840f8c23", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(-108) * (-v + u)^3 * (v + u)^3]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[p.factor() for p in Z.get_polyfaces_dictionary(compact=True) if p.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "a1a4111c-050d-4656-be38-ceac87684b47", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(9) * (v - u)^2 * (v + u)^2 * (12*v^2 + (t^2 - 12)*u^2)]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[p.factor() for p in Zt.get_polyfaces_dictionary(compact=True) if p.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "8ac2847d-121a-4a78-a202-7e1692998c99", + "metadata": {}, + "outputs": [], + "source": [ + "Zta = ZetaFunctions(ht(v=v + u))\n", + "Za = ZetaFunctions(h(v=v + u))" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "id": "e7884c6b-458b-4d7c-8c8f-376ec4b87c9a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(108) * v^3 * (v + 2*u)^3, (108) * u^3 * (8*v^3 - u^5)]" + ] + }, + "execution_count": 15, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[p.factor() for p in Za.get_polyfaces_dictionary(compact=True) if p.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "id": "442b2c9c-c7f1-4fb9-ac12-bf372d90a342", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(9) * v^2 * (v + 2*u)^2 * (12*v^2 + 24*u*v + (t^2)*u^2),\n", + " ((4*t^2)) * u^4 * (9*v^2 + (-2*t)*u^3)]" + ] + }, + "execution_count": 16, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[p.factor() for p in Zta.get_polyfaces_dictionary(compact=True) if p.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "bb3b178d-c56c-491d-8bc6-c951d101ff92", + "metadata": {}, + "outputs": [], + "source": [ + "Ztb = ZetaFunctions(ht(v=v - u))\n", + "Zb = ZetaFunctions(h(v=v -u ))" + ] + }, + { + "cell_type": "code", + "execution_count": 18, + "id": "7121f34f-2792-4ed5-8e20-fb0024e1638d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(-108) * (-v + 2*u)^3 * v^3, (-108) * u^3 * (8*v^3 + u^5)]" + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[p.factor() for p in Zb.get_polyfaces_dictionary(compact=True) if p.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "id": "9986d1b9-fc85-4019-845f-438f79021f2b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(9) * v^2 * (v - 2*u)^2 * (12*v^2 - 24*u*v + (t^2)*u^2),\n", + " ((4*t^2)) * u^4 * (9*v^2 + (-2*t)*u^3)]" + ] + }, + "execution_count": 19, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[p.factor() for p in Ztb.get_polyfaces_dictionary(compact=True) if p.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "id": "fb974d4e-ea53-48e8-97e3-6878039dfbe6", + "metadata": {}, + "outputs": [], + "source": [ + "Zt = ZetaFunctions(Ft)\n", + "Z = ZetaFunctions(F)" + ] + }, + { + "cell_type": "code", + "execution_count": 47, + "id": "9974eefe-db38-4da1-b438-eb56f6effbe4", + "metadata": {}, + "outputs": [], + "source": [ + "def nwt(p):\n", + " return p(u=u^2, v=u^7 * (v + 1))" + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "id": "2b0713c1-0f81-4477-b0e4-b37c3ad80456", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n" + ], + "text/plain": [ + "Graphics3d Object" + ] + }, + "execution_count": 27, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Z.newton_plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "id": "9ce635a7-c084-458e-889c-62d791adbf57", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\n", + "\n" + ], + "text/plain": [ + "Graphics3d Object" + ] + }, + "execution_count": 28, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Zt.newton_plot()" + ] + }, + { + "cell_type": "code", + "execution_count": 30, + "id": "974b2099-0fdb-42b4-829b-72b6e0a7b38b", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Newton's polyhedron of z^3 - 3*y^2*z + 3*x^2*z + 2*x^4:\n", + " support points = [(0, 0, 3), (0, 2, 1), (2, 0, 1), (4, 0, 0)]\n", + " vertices = [(0, 0, 3), (0, 2, 1), (2, 0, 1), (4, 0, 0)]\n", + " number of compact faces = 11\n", + " Facet 1: -4 + 2*z + y + x >= 0\n", + " Facet 4: -3 + z + y + x >= 0\n" + ] + } + ], + "source": [ + "Z.give_info_newton(compact=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "id": "7a653a38-c2f6-45e5-bf44-81173d1ede55", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Newton's polyhedron of z^3 - 3*y^2*z + t*x*z^2 + 3*x^2*z + 2*x^4:\n", + " support points = [(0, 0, 3), (0, 2, 1), (1, 0, 2), (2, 0, 1), (4, 0, 0)]\n", + " vertices = [(0, 0, 3), (0, 2, 1), (4, 0, 0), (2, 0, 1)]\n", + " number of compact faces = 11\n", + " Facet 0: -4 + 2*z + y + x >= 0\n", + " Facet 4: -3 + z + y + x >= 0\n" + ] + } + ], + "source": [ + "Zt.give_info_newton(compact=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "id": "448680b0-7998-4c7a-a400-f44bbed407bb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "z^3 - 3*y^2*z + t*x*z^2 + 3*x^2*z + 2*x^4" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Ft" + ] + }, + { + "cell_type": "code", + "execution_count": 48, + "id": "05705617-d0f6-464a-a9a0-4cefb5bce4d1", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "u^14 * (2*v + v^2 + u^3 + u^3*v)" + ] + }, + "execution_count": 48, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nwt(f).factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 49, + "id": "4eb24e43-3a10-4db9-8502-8c62289a3fe7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "u^24 * (1 + 6*u^3 + 6*u^3*v + 4*u^4*v^2 + 4*u^4*v^3 + u^4*v^4 + 15*u^6 + 30*u^6*v + 15*u^6*v^2 + 4*u^7*v + 6*u^7*v^2 + 2*u^7*v^3 + 20*u^9 + 60*u^9*v + 60*u^9*v^2 + 20*u^9*v^3 + u^10 + 2*u^10*v + u^10*v^2 + 15*u^12 + 60*u^12*v + 90*u^12*v^2 + 60*u^12*v^3 + 15*u^12*v^4 + 6*u^15 + 30*u^15*v + 60*u^15*v^2 + 60*u^15*v^3 + 30*u^15*v^4 + 6*u^15*v^5 + u^18 + 6*u^18*v + 15*u^18*v^2 + 20*u^18*v^3 + 15*u^18*v^4 + 6*u^18*v^5 + u^18*v^6)" + ] + }, + "execution_count": 49, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nwt(g).factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 50, + "id": "28776340-947d-4ed6-a492-79f9341b9f18", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1 + v)^2 * u^14" + ] + }, + "execution_count": 50, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nwt(f2).factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "id": "358b6044-7de1-4bfe-9e4f-283adfc93aca", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3/2) * (1 + v) * u^21 * (2*v + v^2 + u^3 + u^3*v)" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nwt(g1).factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 40, + "id": "cda085bf-987d-44c2-8dbd-ae21afaa3251", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1 + v)^3 * u^21" + ] + }, + "execution_count": 40, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "nwt(g3).factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 41, + "id": "9684ce50-7ff0-4b4c-9580-497c3e3b3964", + "metadata": {}, + "outputs": [], + "source": [ + "h1 = F1.discriminant(z)(x=u, y=v)" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "id": "220532f1-226a-4898-9ff8-5f0344a7de16", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(-27) * (v^2 - u^7) * (3965*v^4 + 2735*u^7*v^2 + 2048*u^14)]" + ] + }, + "execution_count": 42, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Z1 = ZetaFunctions(h1)\n", + "[q.factor() for q in Z1.get_polyfaces_dictionary(compact=True) if q.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "17c661cd-7293-41a1-b9ec-2e71269ae582", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(108) * u^21 * (3*v^2 - 2*u^3)]" + ] + }, + "execution_count": 20, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "h1a = S(h1(u=u^2, v=u^7 * (1 + v)) / u^21)\n", + "Z1a = ZetaFunctions(h1a)\n", + "[q.factor() for q in Z1a.get_polyfaces_dictionary(compact=True) if q.number_of_terms() > 1]" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "aa670fe5-7aa2-4b88-9e85-4351e528b2a1", + "metadata": {}, + "outputs": [], + "source": [ + "Rt. = QQ[]\n", + "Ft = Rt(F - 3 * f2(u=x, v=y) * t^2 * z + 2 * g1(u=x, v=y) * t + 2 * g3(u=x, v=y) * t^3)" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "198a37ca-5a9d-4fe4-8949-e9ca06d48119", + "metadata": {}, + "outputs": [], + "source": [ + "J = Rt.ideal([Ft.derivative(a) for a in Rt.gens()[:-1]] + [Ft])" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "77792a73-db8e-43a5-93b7-dacb75f92c4f", + "metadata": {}, + "outputs": [], + "source": [ + "Gt = Ft(z=z + y * t)" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "18ec2301-7665-436a-9a9c-e1070d99dfd1", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "3*y*z^2" + ] + }, + "execution_count": 67, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Gt.derivative(t)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "0fa40cb1-67c3-40c4-bf4b-60dd202979d2", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "SageMath 10.4.rc3", + "language": "sage", + "name": "sagemath-devel" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.12.4" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}