{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [], "source": [ "S. = PolynomialRing(QQ, order='neglex')\n", "f=((y^2+x^3)^2 + x^5*y)*((x^2+y^3)^2 + y^5*x)\n", "g=(y^6+x^7)*(x^6+y^7)\n", "h = f^3 - g^2\n", "F= z^3 - 3 * f * z + 2 * g" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "h = f^3 - g^2\n", "F.discriminant(z) - 108 * h" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "D=F.discriminant(z)\n", "# load('ZetaFunctionsNewtonND.py')\n", "ZD = ZetaFunctions(D)\n", "ZD.is_newton_non_degenerated(local=True)" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(-108) * y^26\n", "(-216) * x^6 * y^19\n", "(-108) * x^26\n", "(-216) * y^6 * x^19\n", "(-108) * y^19 * (y^7 + 2*x^6)\n", "(-216) * (y + x) * x^6 * y^6 * (y^12 - x*y^11 + x^2*y^10 - x^3*y^9 - 2*x^4*y^8 + 2*x^5*y^7 - 2*x^6*y^6 + 2*x^7*y^5 - 2*x^8*y^4 - x^9*y^3 + x^10*y^2 - x^11*y + x^12)\n", "(-108) * x^19 * (2*y^6 + x^7)\n" ] } ], "source": [ "for p in ZD.get_polyfaces_dictionary(compact=True):\n", " print(p.factor())" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "y^13\n", "x^6 * y^6\n", "x^13\n", "y^6 * (y^7 + x^6)\n", "x^6 * (y^6 + x^7)\n" ] } ], "source": [ "for p in ZetaFunctions(g).get_polyfaces_dictionary(compact=True):\n", " print(p.factor())" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "y^10\n", "x^10\n", "x^4 * y^4\n", "y^4 * (y^3 + x^2)^2\n", "x^4 * (y^2 + x^3)^2\n" ] } ], "source": [ "for p in ZetaFunctions(f).get_polyfaces_dictionary(compact=True):\n", " print(p.factor())" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [], "source": [ "def estrato(ff, chi, pesos):\n", " Z1 = ZetaFunctions(ff)\n", " zetamon1 = Z1.monodromy_zeta().value()^chi\n", " zetatop1 = chi * Z1.topological_zeta(local=True, weights=pesos)\n", " return zetamon1, zetatop1" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "source": [ "Veamos que la resolución larga no aporta\n", "\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "M39, Z39 = estrato(z^3+x^20*y^42*z+x^26*y^52, 1, [5,11,1])\n", "M98, Z98 = estrato(z^3+x^42*y^21*z+x^52*y^26, 1, [11,6,1])\n", "M38, Z38 = estrato(z^3+x^20*y^21*z+x^26*y^26, 1, [5,6,1])" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Z39 + Z98 - Z38" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "estrato(z^3+x^20*y^42*z+x^26*y^52, 1, [5,11,1]) == estrato(z^3+0*x^20*y^42*z+x^26*y^52, 1, [5,11,1])" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [], "source": [ "M3, Z3 = estrato(z^3+x^20*z+x^26, 1, [5,1,1])\n", "M8, Z8 = estrato(z^3+x^21*z+x^26, 1, [6,1,1])" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Z38 + Z8 - Z3" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "((t + 1)^-2 * (t^2 - t + 1)^-1 * (t^2 + 1)^-1 * (t^4 - t^2 + 1)^-1 * (t^12 - t^11 + t^10 - t^9 + t^8 - t^7 + t^6 - t^5 + t^4 - t^3 + t^2 - t + 1)^-1,\n", " (19/156) * (s + 1/2)^-2 * (s + 1)^-1 * (s^2 + 48/19*s + 39/38))" ] }, "execution_count": 39, "metadata": {}, "output_type": "execute_result" } ], "source": [ "a, b = estrato(z^3+x^4*z^2+x^13, 1, [2,1,1])\n", "a.factor(), b.factor()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [], "source": [ "T. = QQ[]" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "A1 = 3 * s / (s + 1) / (78 * s + 39)\n", "V1 = 2 / (78 * s + 39)\n", "V2 = 1 / (78 * s + 39)\n", "M7, Z7 = estrato(z^3 + x^78, 1, [13,1,1])\n", "Z7 - (V1 + V2 - A1)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(8/39) * (s + 1/2)^-1 * (s + 1)^-1 * (s + 9/8)" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "M7a, Z7a = estrato(z^3 + x^13, 1, [13/6,1,1])\n", "Z7a.factor()" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "0" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(6 * V1 + 6 * V2 - 2 / 3 * A1 - Z7a)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "source": [ "Cálculo completo\n", "\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [ { "ename": "SyntaxError", "evalue": "invalid syntax (3357930205.py, line 3)", "output_type": "error", "traceback": [ "\u001b[0;36m Cell \u001b[0;32mIn [9], line 3\u001b[0;36m\u001b[0m\n\u001b[0;31m M17, Z17 = estrato(z**Integer(3)+, Integer(2), [Integer(2),Integer(13),Integer(1)])\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n" ] } ], "source": [ "M1, Zt1 = estrato(z^3+x^4*z^2 + x^13, -13, [2,1,1])\n", "M1d, Zt1d = estrato(z^3+x^4*z^2 + x^13*y, 13, [2,1,1])\n", "M17, Z17 = estrato(z^3+x^4*y^28*z^2 + x^13*y^78 , 2, [2,13,1])\n", "M7, Z7 = estrato(z^3+x^4*z + x^13*y, -4, [13,1,1])\n", "M7d, Z7d = estrato(z^3+x^4*z + x^13*y, -4, [13,1,1])\n", "M7g, Z7g\n" ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Newton's polyhedron of z^3 + x^4*z + x^13:\n", " support points = [(0, 0, 3), (4, 0, 1), (13, 0, 0)]\n", " vertices = [(0, 0, 3), (4, 0, 1), (13, 0, 0)]\n", " number of proper faces = 15\n", " Facet 0: z >= 0\n", " Facet 1: -13 + 9*z + x >= 0\n", " Facet 2: -6 + 2*z + x >= 0\n", " Facet 3: x >= 0\n", " Facet 4: y >= 0\n" ] }, { "data": { "text/plain": [ "(-1/6) * (s + 2/3)^-1 * (s + 1)^-1 * (s - 2)" ] }, "execution_count": 55, "metadata": {}, "output_type": "execute_result" } ], "source": [ "G=z^3+x^4*z + x^13\n", "ZG=ZetaFunctions(G)\n", "ZG.give_info_newton(faces=False, cones=False, compact = False)\n", "ZG.topological_zeta(local= True, weights = [2,1,1])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false, "jupyter": { "outputs_hidden": false } }, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "SageMath 10.3.rc4", "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.11.1" } }, "nbformat": 4, "nbformat_minor": 4 }