diff --git a/RamaTangente13.ipynb b/RamaTangente13.ipynb new file mode 100644 index 0000000..37797ee --- /dev/null +++ b/RamaTangente13.ipynb @@ -0,0 +1,217 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 65, + "id": "232ac4e6-80fb-4842-bab2-97c82a517a6d", + "metadata": {}, + "outputs": [], + "source": [ + "S0 = PolynomialRing(QQ, 'a', 12)\n", + "S0.inject_variables(verbose=False)\n", + "R. = S0[]\n", + "def fct(p):\n", + " RF = PolynomialRing(QQ, S0.gens() + R.gens())\n", + " p1 = sum(RF(a0) * RF(b0) for a0, b0 in p)\n", + " fc = p1.factor()\n", + " unidad = fc.unit()\n", + " fcts = [(R(p0), m) for p0, m in fc]\n", + " return (unidad, fcts)" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "ec7af5b3-8106-4d16-999f-09da392c48f5", + "metadata": {}, + "outputs": [], + "source": [ + "f = (y^4 - x^6 + a0 * x^2 * y^3) * (x^4 - y^6 + a1 * x^3 * y^2)\n", + "g = (y^6 + x^7 + a2 * x^6 * y + a4 * x^5 * y^2 + a6 * x^4 * y^3 + a8 * x^3 * y^4 + a10 * x * y^6) * (x^6 + y^7 + a3 * x * y^6 + a5 * x^2 * y^5 + a7 * x^3 * y^4 + a9 * x^4 * y^3 + a11 * x^6 * y)\n", + "p = f^3 - g^2" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "15b0b7dd-286d-41cd-b6a8-afb1243bbf1b", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(-1, [(x, 19), (x^7 + 2*y^6, 1)]),\n", + " (-1, [(y, 19), (y^7 + 2*x^6, 1)]),\n", + " (-1,\n", + " [(y, 6),\n", + " (x, 6),\n", + " (2*x^13 + 2*a2*x^12*y + 2*a4*x^11*y^2 + 2*a6*x^10*y^3 + 2*a8*x^9*y^4 + (-3*a0)*x^8*y^5 + 2*a10*x^7*y^6 + 2*a11*x^6*y^7 + (-3*a1)*x^5*y^8 + 2*a9*x^4*y^9 + 2*a7*x^3*y^10 + 2*a5*x^2*y^11 + 2*a3*x*y^12 + 2*y^13,\n", + " 1)])]" + ] + }, + "execution_count": 67, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Z = ZetaFunctions(p)\n", + "u = [fct(q) for q in Z.get_polyfaces_dictionary(compact=True) if q.number_of_terms() > 1]\n", + "u" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "id": "b9a91f1d-2d4e-46fc-b2fb-b19e8ac3f097", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(2*a2 - 26)*x^12*y + (2*a4 - 156)*x^11*y^2 + (2*a6 - 572)*x^10*y^3 + (2*a8 - 1430)*x^9*y^4 + (-3*a0 - 2574)*x^8*y^5 + (2*a10 - 3432)*x^7*y^6 + (2*a11 - 3432)*x^6*y^7 + (-3*a1 - 2574)*x^5*y^8 + (2*a9 - 1430)*x^4*y^9 + (2*a7 - 572)*x^3*y^10 + (2*a5 - 156)*x^2*y^11 + (2*a3 - 26)*x*y^12" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "q = 2*x^13 + 2*a2*x^12*y + 2*a4*x^11*y^2 + 2*a6*x^10*y^3 + 2*a8*x^9*y^4 + (-3*a0)*x^8*y^5 + 2*a10*x^7*y^6 + 2*a11*x^6*y^7 + (-3*a1)*x^5*y^8 + 2*a9*x^4*y^9 + 2*a7*x^3*y^10 + 2*a5*x^2*y^11 + 2*a3*x*y^12 + 2*y^13 - 2 * (x + y)^13\n", + "q" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "a573d7e3-c568-4210-8b03-1a2333c432cd", + "metadata": {}, + "outputs": [], + "source": [ + "J = S0.ideal(q.coefficients())" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "id": "4869bc3a-a30c-4f74-b33f-cd9a621fe2ad", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1716*x^6*y + 715*x^4*y^3 + 286*x^3*y^4 + 78*x^2*y^5 + 13*x*y^6 + y^7 + x^6) * (x^7 + 13*x^6*y + 78*x^5*y^2 + 286*x^4*y^3 + 715*x^3*y^4 + 1716*x*y^6 + y^6)" + ] + }, + "execution_count": 75, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "G.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "id": "7d0e90b3-1955-4a84-8c8b-137765241570", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(-1) * x^19 * (x^7 + 2*y^6),\n", + " (-1) * y^19 * (y^7 + 2*x^6),\n", + " (-2) * y^6 * x^6 * (x + y)^13]" + ] + }, + "execution_count": 74, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "F = f.map_coefficients(lambda u: u.reduce(J)).change_ring(QQ)\n", + "G = g.map_coefficients(lambda u: u.reduce(J)).change_ring(QQ)\n", + "P = F^3 - G^2\n", + "Z = ZetaFunctions(P)\n", + "u = [q.factor() for q in Z.get_polyfaces_dictionary(compact=True) if q.number_of_terms() > 1]\n", + "u" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "id": "7b07cd90-991b-4c1a-899d-4eb51c3f1c5a", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defining x, y\n" + ] + } + ], + "source": [ + "RQ = R.change_ring(QQ)\n", + "RQ.inject_variables()" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "b97e77ca-e99e-4050-847e-bb8287a94a8e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[(-2) * (y^13 - 3784272*x)]" + ] + }, + "execution_count": 78, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "P1 = RQ(P(y=x*(y - 1)) / x^25)\n", + "Z = ZetaFunctions(P1)\n", + "u = [q.factor() for q in Z.get_polyfaces_dictionary(compact=True) if q.number_of_terms() > 1]\n", + "u" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d16f3d74-fb25-4332-8049-f360eeb9da92", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "SageMath 10.5.beta8", + "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.5" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}