diff --git a/DosLados.ipynb b/DosLados.ipynb new file mode 100644 index 0000000..dfbd8a5 --- /dev/null +++ b/DosLados.ipynb @@ -0,0 +1,1070 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 4, + "id": "4778e32e-f561-4e4d-b63a-d4d60f91abde", + "metadata": {}, + "outputs": [], + "source": [ + "R. = QQ[]" + ] + }, + { + "cell_type": "code", + "execution_count": 141, + "id": "f042e81b-abf8-4e09-bc67-a19d778033e6", + "metadata": {}, + "outputs": [], + "source": [ + "e1, e2, e3 = [v.change_ring(R) for v in (QQ^3).gens()]" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "id": "0733b364-bbf6-486c-a5d1-e72c7a5d48ca", + "metadata": {}, + "outputs": [], + "source": [ + "V2 = vector([0, 0, 3])\n", + "V1 = vector([b1, b2, 2])\n", + "V0 = vector([a1 + b1, a2 + b2, 0])\n", + "nu = vector([nu1, nu2, 1])" + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "id": "b81e1db9-883e-4a03-a38c-1ca296c9d25b", + "metadata": {}, + "outputs": [], + "source": [ + "Q1 = vector([1, 0, b1])\n", + "Q2 = vector([0, 1, b2])\n", + "R1 = vector([2, 0, a1]) / alpha1\n", + "R2 = vector([0, 2, a2]) / alpha2" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "id": "f97fbf75-4da5-45db-8f66-cdccdd052326", + "metadata": {}, + "outputs": [], + "source": [ + "def cono3(u, v, w, vert, nu0):\n", + " m = Matrix([u, v, w]).det()\n", + " den = 1\n", + " for u0 in (u, v, w):\n", + " den *= (u0 * vert) * ss + u0 * nu0\n", + " return m / den" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "id": "04072945-1ada-4d66-b44e-95318f073634", + "metadata": {}, + "outputs": [], + "source": [ + "# sb = {ss: (t - 1) / 3}\n", + "sb = {}" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "id": "d9834ff4-e09f-4cf9-abd0-9b1eea6ca033", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1} \\cdot (3 \\mathit{ss} b_{1} b_{2} + b_{1} b_{2} + b_{2} \\nu_{1} + b_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1} \\cdot (3 \\mathit{ss} b_{1} b_{2} + b_{1} b_{2} + b_{2} \\nu_{1} + b_{1} \\nu_{2})$" + ], + "text/plain": [ + "nu2^-1 * nu1^-1 * (3*ss*b2 + b2 + nu2)^-1 * (3*ss*b1 + b1 + nu1)^-1 * (3*ss*b1*b2 + b1*b2 + b2*nu1 + b1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "vertice2 = cono3(e1, e2, e3, V2, nu) - cono3(Q1, Q2, e3, V2, nu)\n", + "show(vertice2.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 147, + "id": "fe5aa4f3-db61-4a38-a1d1-dd100d819937", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1} \\cdot (-16 \\mathit{ss} b_{1} b_{2} + 2 \\mathit{ss} b_{2} a_{1} + 2 \\mathit{ss} b_{1} a_{2} + 2 \\mathit{ss} a_{1} a_{2} - 4 b_{1} b_{2} + a_{1} a_{2} - 4 b_{2} \\nu_{1} + 2 a_{2} \\nu_{1} - 4 b_{1} \\nu_{2} + 2 a_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1} \\cdot (-16 \\mathit{ss} b_{1} b_{2} + 2 \\mathit{ss} b_{2} a_{1} + 2 \\mathit{ss} b_{1} a_{2} + 2 \\mathit{ss} a_{1} a_{2} - 4 b_{1} b_{2} + a_{1} a_{2} - 4 b_{2} \\nu_{1} + 2 a_{2} \\nu_{1} - 4 b_{1} \\nu_{2} + 2 a_{1} \\nu_{2})$" + ], + "text/plain": [ + "(2*ss*b2 + 2*ss*a2 + a2 + 2*nu2)^-1 * (3*ss*b2 + b2 + nu2)^-1 * (2*ss*b1 + 2*ss*a1 + a1 + 2*nu1)^-1 * (3*ss*b1 + b1 + nu1)^-1 * (-16*ss*b1*b2 + 2*ss*b2*a1 + 2*ss*b1*a2 + 2*ss*a1*a2 - 4*b1*b2 + a1*a2 - 4*b2*nu1 + 2*a2*nu1 - 4*b1*nu2 + 2*a1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "vertice1 = cono3(Q1, Q2, e3, V1, nu) - cono3(R1, R2, e3, V1, nu)\n", + "show(vertice1.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 148, + "id": "f76b95e9-634c-4d99-a2a3-763535da1463", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle 2^{2} \\cdot (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1}\\)" + ], + "text/latex": [ + "$\\displaystyle 2^{2} \\cdot (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1}$" + ], + "text/plain": [ + "2^2 * (2*ss*b2 + 2*ss*a2 + a2 + 2*nu2)^-1 * (2*ss*b1 + 2*ss*a1 + a1 + 2*nu1)^-1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "vertice0 = cono3(R1, R2, e3, V0, nu)\n", + "show(vertice0.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 149, + "id": "ab73606f-7a83-433b-a6f4-7f804d4e0285", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[1, b2, -b1]" + ] + }, + "execution_count": 149, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Matrix([Q1, Q2]).minors(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "id": "d73f3cc0-d2f0-4dff-80d5-112d12a5aca1", + "metadata": {}, + "outputs": [], + "source": [ + "mgamma1 = 1" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "id": "308921cc-14d7-4b94-a581-ecbf2a755530", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3*b1, 3*b1, 3*b2, 3*b2, b1 + nu1, b2 + nu2)" + ] + }, + "execution_count": 151, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Q1 * V2, Q1 * V1, Q2 * V2, Q2 * V1, Q1 * nu, Q2 * nu" + ] + }, + { + "cell_type": "code", + "execution_count": 152, + "id": "3e906a75-7de6-4137-8e2c-dce142bd25e3", + "metadata": {}, + "outputs": [], + "source": [ + "den11 = ((Q1 * V1) * ss + Q1 * nu)\n", + "den21 = ((Q2 * V1) * ss + Q2 * nu)" + ] + }, + { + "cell_type": "code", + "execution_count": 153, + "id": "3efe2c9c-2428-4980-b460-e50c0d5595cc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle (\\mathit{ss} + 1)^{-1} \\cdot \\mathit{ss} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1}\\)" + ], + "text/latex": [ + "$\\displaystyle (\\mathit{ss} + 1)^{-1} \\cdot \\mathit{ss} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1}$" + ], + "text/plain": [ + "(ss + 1)^-1 * ss * (3*ss*b2 + b2 + nu2)^-1 * (3*ss*b1 + b1 + nu1)^-1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "arista1 = mgamma1 * ss / (ss + 1) / den11 / den21 \n", + "show(arista1.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "id": "0c268f0e-8485-4d7e-930f-d11527ab2849", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[4/(alpha1*alpha2), 2*a2/(alpha1*alpha2), (-2*a1)/(alpha1*alpha2)]" + ] + }, + "execution_count": 154, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Matrix([R1, R2]).minors(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "id": "cfd485c7-8660-4869-ba19-c189be444171", + "metadata": {}, + "outputs": [], + "source": [ + "mgamma0 = 2 * cd / alpha1 / alpha2" + ] + }, + { + "cell_type": "code", + "execution_count": 156, + "id": "6bd1e3a1-692d-4e76-99dd-0d832d5806c9", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "((2*b1 + 2*a1)/alpha1,\n", + " (2*b1 + 2*a1)/alpha1,\n", + " (2*b2 + 2*a2)/alpha2,\n", + " (2*b2 + 2*a2)/alpha2,\n", + " (a1 + 2*nu1)/alpha1,\n", + " (a2 + 2*nu2)/alpha2)" + ] + }, + "execution_count": 156, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "R1 * V1, R1 * V0, R2 * V1, R2 * V0, R1 * nu, R2 * nu" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "id": "8e8e3cbb-6af9-4876-a7bd-1c0d14c4a16e", + "metadata": {}, + "outputs": [], + "source": [ + "den10 = ((R1 * V1) * ss + R1 * nu)\n", + "den20 = ((R2 * V1) * ss + R2 * nu)" + ] + }, + { + "cell_type": "code", + "execution_count": 159, + "id": "490c5397-227e-48a0-8675-893d0762a16c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(2\\right) \\cdot (\\mathit{ss} + 1)^{-1} \\cdot \\mathit{ss} \\cdot \\mathit{cd}^{2} \\cdot (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1}\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(2\\right) \\cdot (\\mathit{ss} + 1)^{-1} \\cdot \\mathit{ss} \\cdot \\mathit{cd}^{2} \\cdot (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1}$" + ], + "text/plain": [ + "(2) * (ss + 1)^-1 * ss * cd^2 * (2*ss*b2 + 2*ss*a2 + a2 + 2*nu2)^-1 * (2*ss*b1 + 2*ss*a1 + a1 + 2*nu1)^-1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "arista0 = mgamma0 * ss / (ss + 1) / den10 / den20 * cd\n", + "show(arista0.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 161, + "id": "c18631c1-f18a-48a2-8e9a-727d347ef89a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-1\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (\\mathit{ss} + 1)^{-1} \\cdot (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1} \\cdot (18 \\mathit{ss}^{3} b_{1} b_{2} \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 12 \\mathit{ss}^{4} b_{1}^{2} b_{2}^{2} - 12 \\mathit{ss}^{4} b_{1} b_{2}^{2} a_{1} - 12 \\mathit{ss}^{4} b_{1}^{2} b_{2} a_{2} - 12 \\mathit{ss}^{4} b_{1} b_{2} a_{1} a_{2} + 12 \\mathit{ss}^{2} b_{1} b_{2} \\nu_{1} \\nu_{2} \\mathit{cd}^{2} + 6 \\mathit{ss}^{2} b_{2} \\nu_{1}^{2} \\nu_{2} \\mathit{cd}^{2} + 6 \\mathit{ss}^{2} b_{1} \\nu_{1} \\nu_{2}^{2} \\mathit{cd}^{2} - 16 \\mathit{ss}^{3} b_{1}^{2} b_{2}^{2} - 22 \\mathit{ss}^{3} b_{1} b_{2}^{2} a_{1} - 22 \\mathit{ss}^{3} b_{1}^{2} b_{2} a_{2} - 28 \\mathit{ss}^{3} b_{1} b_{2} a_{1} a_{2} - 16 \\mathit{ss}^{3} b_{1} b_{2}^{2} \\nu_{1} - 4 \\mathit{ss}^{3} b_{2}^{2} a_{1} \\nu_{1} - 16 \\mathit{ss}^{3} b_{1} b_{2} a_{2} \\nu_{1} - 4 \\mathit{ss}^{3} b_{2} a_{1} a_{2} \\nu_{1} - 16 \\mathit{ss}^{3} b_{1}^{2} b_{2} \\nu_{2} - 16 \\mathit{ss}^{3} b_{1} b_{2} a_{1} \\nu_{2} - 4 \\mathit{ss}^{3} b_{1}^{2} a_{2} \\nu_{2} - 4 \\mathit{ss}^{3} b_{1} a_{1} a_{2} \\nu_{2} - 32 \\mathit{ss}^{3} b_{1} b_{2} \\nu_{1} \\nu_{2} + 4 \\mathit{ss}^{3} b_{2} a_{1} \\nu_{1} \\nu_{2} + 4 \\mathit{ss}^{3} b_{1} a_{2} \\nu_{1} \\nu_{2} + 4 \\mathit{ss}^{3} a_{1} a_{2} \\nu_{1} \\nu_{2} + 2 \\mathit{ss} b_{1} b_{2} \\nu_{1} \\nu_{2} \\mathit{cd}^{2} + 2 \\mathit{ss} b_{2} \\nu_{1}^{2} \\nu_{2} \\mathit{cd}^{2} + 2 \\mathit{ss} b_{1} \\nu_{1} \\nu_{2}^{2} \\mathit{cd}^{2} + 2 \\mathit{ss} \\nu_{1}^{2} \\nu_{2}^{2} \\mathit{cd}^{2} - 4 \\mathit{ss}^{2} b_{1}^{2} b_{2}^{2} - 12 \\mathit{ss}^{2} b_{1} b_{2}^{2} a_{1} - 12 \\mathit{ss}^{2} b_{1}^{2} b_{2} a_{2} - 23 \\mathit{ss}^{2} b_{1} b_{2} a_{1} a_{2} - 20 \\mathit{ss}^{2} b_{1} b_{2}^{2} \\nu_{1} - 6 \\mathit{ss}^{2} b_{2}^{2} a_{1} \\nu_{1} - 28 \\mathit{ss}^{2} b_{1} b_{2} a_{2} \\nu_{1} - 8 \\mathit{ss}^{2} b_{2} a_{1} a_{2} \\nu_{1} - 4 \\mathit{ss}^{2} b_{2}^{2} \\nu_{1}^{2} - 4 \\mathit{ss}^{2} b_{2} a_{2} \\nu_{1}^{2} - 20 \\mathit{ss}^{2} b_{1}^{2} b_{2} \\nu_{2} - 28 \\mathit{ss}^{2} b_{1} b_{2} a_{1} \\nu_{2} - 6 \\mathit{ss}^{2} b_{1}^{2} a_{2} \\nu_{2} - 8 \\mathit{ss}^{2} b_{1} a_{1} a_{2} \\nu_{2} - 64 \\mathit{ss}^{2} b_{1} b_{2} \\nu_{1} \\nu_{2} - 4 \\mathit{ss}^{2} b_{2} a_{1} \\nu_{1} \\nu_{2} - 4 \\mathit{ss}^{2} b_{1} a_{2} \\nu_{1} \\nu_{2} + 2 \\mathit{ss}^{2} a_{1} a_{2} \\nu_{1} \\nu_{2} - 8 \\mathit{ss}^{2} b_{2} \\nu_{1}^{2} \\nu_{2} + 4 \\mathit{ss}^{2} a_{2} \\nu_{1}^{2} \\nu_{2} - 4 \\mathit{ss}^{2} b_{1}^{2} \\nu_{2}^{2} - 4 \\mathit{ss}^{2} b_{1} a_{1} \\nu_{2}^{2} - 8 \\mathit{ss}^{2} b_{1} \\nu_{1} \\nu_{2}^{2} + 4 \\mathit{ss}^{2} a_{1} \\nu_{1} \\nu_{2}^{2} - 2 \\mathit{ss} b_{1} b_{2}^{2} a_{1} - 2 \\mathit{ss} b_{1}^{2} b_{2} a_{2} - 8 \\mathit{ss} b_{1} b_{2} a_{1} a_{2} - 4 \\mathit{ss} b_{1} b_{2}^{2} \\nu_{1} - 2 \\mathit{ss} b_{2}^{2} a_{1} \\nu_{1} - 14 \\mathit{ss} b_{1} b_{2} a_{2} \\nu_{1} - 5 \\mathit{ss} b_{2} a_{1} a_{2} \\nu_{1} - 4 \\mathit{ss} b_{2}^{2} \\nu_{1}^{2} - 6 \\mathit{ss} b_{2} a_{2} \\nu_{1}^{2} - 4 \\mathit{ss} b_{1}^{2} b_{2} \\nu_{2} - 14 \\mathit{ss} b_{1} b_{2} a_{1} \\nu_{2} - 2 \\mathit{ss} b_{1}^{2} a_{2} \\nu_{2} - 5 \\mathit{ss} b_{1} a_{1} a_{2} \\nu_{2} - 32 \\mathit{ss} b_{1} b_{2} \\nu_{1} \\nu_{2} - 8 \\mathit{ss} b_{2} a_{1} \\nu_{1} \\nu_{2} - 8 \\mathit{ss} b_{1} a_{2} \\nu_{1} \\nu_{2} - 2 \\mathit{ss} a_{1} a_{2} \\nu_{1} \\nu_{2} - 16 \\mathit{ss} b_{2} \\nu_{1}^{2} \\nu_{2} - 4 \\mathit{ss} b_{1}^{2} \\nu_{2}^{2} - 6 \\mathit{ss} b_{1} a_{1} \\nu_{2}^{2} - 16 \\mathit{ss} b_{1} \\nu_{1} \\nu_{2}^{2} - b_{1} b_{2} a_{1} a_{2} - 2 b_{1} b_{2} a_{2} \\nu_{1} - b_{2} a_{1} a_{2} \\nu_{1} - 2 b_{2} a_{2} \\nu_{1}^{2} - 2 b_{1} b_{2} a_{1} \\nu_{2} - b_{1} a_{1} a_{2} \\nu_{2} - 4 b_{1} b_{2} \\nu_{1} \\nu_{2} - 2 b_{2} a_{1} \\nu_{1} \\nu_{2} - 2 b_{1} a_{2} \\nu_{1} \\nu_{2} - a_{1} a_{2} \\nu_{1} \\nu_{2} - 4 b_{2} \\nu_{1}^{2} \\nu_{2} - 2 a_{2} \\nu_{1}^{2} \\nu_{2} - 2 b_{1} a_{1} \\nu_{2}^{2} - 4 b_{1} \\nu_{1} \\nu_{2}^{2} - 2 a_{1} \\nu_{1} \\nu_{2}^{2} - 4 \\nu_{1}^{2} \\nu_{2}^{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-1\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (\\mathit{ss} + 1)^{-1} \\cdot (2 \\mathit{ss} b_{2} + 2 \\mathit{ss} a_{2} + a_{2} + 2 \\nu_{2})^{-1} \\cdot (3 \\mathit{ss} b_{2} + b_{2} + \\nu_{2})^{-1} \\cdot (2 \\mathit{ss} b_{1} + 2 \\mathit{ss} a_{1} + a_{1} + 2 \\nu_{1})^{-1} \\cdot (3 \\mathit{ss} b_{1} + b_{1} + \\nu_{1})^{-1} \\cdot (18 \\mathit{ss}^{3} b_{1} b_{2} \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 12 \\mathit{ss}^{4} b_{1}^{2} b_{2}^{2} - 12 \\mathit{ss}^{4} b_{1} b_{2}^{2} a_{1} - 12 \\mathit{ss}^{4} b_{1}^{2} b_{2} a_{2} - 12 \\mathit{ss}^{4} b_{1} b_{2} a_{1} a_{2} + 12 \\mathit{ss}^{2} b_{1} b_{2} \\nu_{1} \\nu_{2} \\mathit{cd}^{2} + 6 \\mathit{ss}^{2} b_{2} \\nu_{1}^{2} \\nu_{2} \\mathit{cd}^{2} + 6 \\mathit{ss}^{2} b_{1} \\nu_{1} \\nu_{2}^{2} \\mathit{cd}^{2} - 16 \\mathit{ss}^{3} b_{1}^{2} b_{2}^{2} - 22 \\mathit{ss}^{3} b_{1} b_{2}^{2} a_{1} - 22 \\mathit{ss}^{3} b_{1}^{2} b_{2} a_{2} - 28 \\mathit{ss}^{3} b_{1} b_{2} a_{1} a_{2} - 16 \\mathit{ss}^{3} b_{1} b_{2}^{2} \\nu_{1} - 4 \\mathit{ss}^{3} b_{2}^{2} a_{1} \\nu_{1} - 16 \\mathit{ss}^{3} b_{1} b_{2} a_{2} \\nu_{1} - 4 \\mathit{ss}^{3} b_{2} a_{1} a_{2} \\nu_{1} - 16 \\mathit{ss}^{3} b_{1}^{2} b_{2} \\nu_{2} - 16 \\mathit{ss}^{3} b_{1} b_{2} a_{1} \\nu_{2} - 4 \\mathit{ss}^{3} b_{1}^{2} a_{2} \\nu_{2} - 4 \\mathit{ss}^{3} b_{1} a_{1} a_{2} \\nu_{2} - 32 \\mathit{ss}^{3} b_{1} b_{2} \\nu_{1} \\nu_{2} + 4 \\mathit{ss}^{3} b_{2} a_{1} \\nu_{1} \\nu_{2} + 4 \\mathit{ss}^{3} b_{1} a_{2} \\nu_{1} \\nu_{2} + 4 \\mathit{ss}^{3} a_{1} a_{2} \\nu_{1} \\nu_{2} + 2 \\mathit{ss} b_{1} b_{2} \\nu_{1} \\nu_{2} \\mathit{cd}^{2} + 2 \\mathit{ss} b_{2} \\nu_{1}^{2} \\nu_{2} \\mathit{cd}^{2} + 2 \\mathit{ss} b_{1} \\nu_{1} \\nu_{2}^{2} \\mathit{cd}^{2} + 2 \\mathit{ss} \\nu_{1}^{2} \\nu_{2}^{2} \\mathit{cd}^{2} - 4 \\mathit{ss}^{2} b_{1}^{2} b_{2}^{2} - 12 \\mathit{ss}^{2} b_{1} b_{2}^{2} a_{1} - 12 \\mathit{ss}^{2} b_{1}^{2} b_{2} a_{2} - 23 \\mathit{ss}^{2} b_{1} b_{2} a_{1} a_{2} - 20 \\mathit{ss}^{2} b_{1} b_{2}^{2} \\nu_{1} - 6 \\mathit{ss}^{2} b_{2}^{2} a_{1} \\nu_{1} - 28 \\mathit{ss}^{2} b_{1} b_{2} a_{2} \\nu_{1} - 8 \\mathit{ss}^{2} b_{2} a_{1} a_{2} \\nu_{1} - 4 \\mathit{ss}^{2} b_{2}^{2} \\nu_{1}^{2} - 4 \\mathit{ss}^{2} b_{2} a_{2} \\nu_{1}^{2} - 20 \\mathit{ss}^{2} b_{1}^{2} b_{2} \\nu_{2} - 28 \\mathit{ss}^{2} b_{1} b_{2} a_{1} \\nu_{2} - 6 \\mathit{ss}^{2} b_{1}^{2} a_{2} \\nu_{2} - 8 \\mathit{ss}^{2} b_{1} a_{1} a_{2} \\nu_{2} - 64 \\mathit{ss}^{2} b_{1} b_{2} \\nu_{1} \\nu_{2} - 4 \\mathit{ss}^{2} b_{2} a_{1} \\nu_{1} \\nu_{2} - 4 \\mathit{ss}^{2} b_{1} a_{2} \\nu_{1} \\nu_{2} + 2 \\mathit{ss}^{2} a_{1} a_{2} \\nu_{1} \\nu_{2} - 8 \\mathit{ss}^{2} b_{2} \\nu_{1}^{2} \\nu_{2} + 4 \\mathit{ss}^{2} a_{2} \\nu_{1}^{2} \\nu_{2} - 4 \\mathit{ss}^{2} b_{1}^{2} \\nu_{2}^{2} - 4 \\mathit{ss}^{2} b_{1} a_{1} \\nu_{2}^{2} - 8 \\mathit{ss}^{2} b_{1} \\nu_{1} \\nu_{2}^{2} + 4 \\mathit{ss}^{2} a_{1} \\nu_{1} \\nu_{2}^{2} - 2 \\mathit{ss} b_{1} b_{2}^{2} a_{1} - 2 \\mathit{ss} b_{1}^{2} b_{2} a_{2} - 8 \\mathit{ss} b_{1} b_{2} a_{1} a_{2} - 4 \\mathit{ss} b_{1} b_{2}^{2} \\nu_{1} - 2 \\mathit{ss} b_{2}^{2} a_{1} \\nu_{1} - 14 \\mathit{ss} b_{1} b_{2} a_{2} \\nu_{1} - 5 \\mathit{ss} b_{2} a_{1} a_{2} \\nu_{1} - 4 \\mathit{ss} b_{2}^{2} \\nu_{1}^{2} - 6 \\mathit{ss} b_{2} a_{2} \\nu_{1}^{2} - 4 \\mathit{ss} b_{1}^{2} b_{2} \\nu_{2} - 14 \\mathit{ss} b_{1} b_{2} a_{1} \\nu_{2} - 2 \\mathit{ss} b_{1}^{2} a_{2} \\nu_{2} - 5 \\mathit{ss} b_{1} a_{1} a_{2} \\nu_{2} - 32 \\mathit{ss} b_{1} b_{2} \\nu_{1} \\nu_{2} - 8 \\mathit{ss} b_{2} a_{1} \\nu_{1} \\nu_{2} - 8 \\mathit{ss} b_{1} a_{2} \\nu_{1} \\nu_{2} - 2 \\mathit{ss} a_{1} a_{2} \\nu_{1} \\nu_{2} - 16 \\mathit{ss} b_{2} \\nu_{1}^{2} \\nu_{2} - 4 \\mathit{ss} b_{1}^{2} \\nu_{2}^{2} - 6 \\mathit{ss} b_{1} a_{1} \\nu_{2}^{2} - 16 \\mathit{ss} b_{1} \\nu_{1} \\nu_{2}^{2} - b_{1} b_{2} a_{1} a_{2} - 2 b_{1} b_{2} a_{2} \\nu_{1} - b_{2} a_{1} a_{2} \\nu_{1} - 2 b_{2} a_{2} \\nu_{1}^{2} - 2 b_{1} b_{2} a_{1} \\nu_{2} - b_{1} a_{1} a_{2} \\nu_{2} - 4 b_{1} b_{2} \\nu_{1} \\nu_{2} - 2 b_{2} a_{1} \\nu_{1} \\nu_{2} - 2 b_{1} a_{2} \\nu_{1} \\nu_{2} - a_{1} a_{2} \\nu_{1} \\nu_{2} - 4 b_{2} \\nu_{1}^{2} \\nu_{2} - 2 a_{2} \\nu_{1}^{2} \\nu_{2} - 2 b_{1} a_{1} \\nu_{2}^{2} - 4 b_{1} \\nu_{1} \\nu_{2}^{2} - 2 a_{1} \\nu_{1} \\nu_{2}^{2} - 4 \\nu_{1}^{2} \\nu_{2}^{2})$" + ], + "text/plain": [ + "(-1) * nu2^-1 * nu1^-1 * (ss + 1)^-1 * (2*ss*b2 + 2*ss*a2 + a2 + 2*nu2)^-1 * (3*ss*b2 + b2 + nu2)^-1 * (2*ss*b1 + 2*ss*a1 + a1 + 2*nu1)^-1 * (3*ss*b1 + b1 + nu1)^-1 * (18*ss^3*b1*b2*nu1*nu2*cd^2 - 12*ss^4*b1^2*b2^2 - 12*ss^4*b1*b2^2*a1 - 12*ss^4*b1^2*b2*a2 - 12*ss^4*b1*b2*a1*a2 + 12*ss^2*b1*b2*nu1*nu2*cd^2 + 6*ss^2*b2*nu1^2*nu2*cd^2 + 6*ss^2*b1*nu1*nu2^2*cd^2 - 16*ss^3*b1^2*b2^2 - 22*ss^3*b1*b2^2*a1 - 22*ss^3*b1^2*b2*a2 - 28*ss^3*b1*b2*a1*a2 - 16*ss^3*b1*b2^2*nu1 - 4*ss^3*b2^2*a1*nu1 - 16*ss^3*b1*b2*a2*nu1 - 4*ss^3*b2*a1*a2*nu1 - 16*ss^3*b1^2*b2*nu2 - 16*ss^3*b1*b2*a1*nu2 - 4*ss^3*b1^2*a2*nu2 - 4*ss^3*b1*a1*a2*nu2 - 32*ss^3*b1*b2*nu1*nu2 + 4*ss^3*b2*a1*nu1*nu2 + 4*ss^3*b1*a2*nu1*nu2 + 4*ss^3*a1*a2*nu1*nu2 + 2*ss*b1*b2*nu1*nu2*cd^2 + 2*ss*b2*nu1^2*nu2*cd^2 + 2*ss*b1*nu1*nu2^2*cd^2 + 2*ss*nu1^2*nu2^2*cd^2 - 4*ss^2*b1^2*b2^2 - 12*ss^2*b1*b2^2*a1 - 12*ss^2*b1^2*b2*a2 - 23*ss^2*b1*b2*a1*a2 - 20*ss^2*b1*b2^2*nu1 - 6*ss^2*b2^2*a1*nu1 - 28*ss^2*b1*b2*a2*nu1 - 8*ss^2*b2*a1*a2*nu1 - 4*ss^2*b2^2*nu1^2 - 4*ss^2*b2*a2*nu1^2 - 20*ss^2*b1^2*b2*nu2 - 28*ss^2*b1*b2*a1*nu2 - 6*ss^2*b1^2*a2*nu2 - 8*ss^2*b1*a1*a2*nu2 - 64*ss^2*b1*b2*nu1*nu2 - 4*ss^2*b2*a1*nu1*nu2 - 4*ss^2*b1*a2*nu1*nu2 + 2*ss^2*a1*a2*nu1*nu2 - 8*ss^2*b2*nu1^2*nu2 + 4*ss^2*a2*nu1^2*nu2 - 4*ss^2*b1^2*nu2^2 - 4*ss^2*b1*a1*nu2^2 - 8*ss^2*b1*nu1*nu2^2 + 4*ss^2*a1*nu1*nu2^2 - 2*ss*b1*b2^2*a1 - 2*ss*b1^2*b2*a2 - 8*ss*b1*b2*a1*a2 - 4*ss*b1*b2^2*nu1 - 2*ss*b2^2*a1*nu1 - 14*ss*b1*b2*a2*nu1 - 5*ss*b2*a1*a2*nu1 - 4*ss*b2^2*nu1^2 - 6*ss*b2*a2*nu1^2 - 4*ss*b1^2*b2*nu2 - 14*ss*b1*b2*a1*nu2 - 2*ss*b1^2*a2*nu2 - 5*ss*b1*a1*a2*nu2 - 32*ss*b1*b2*nu1*nu2 - 8*ss*b2*a1*nu1*nu2 - 8*ss*b1*a2*nu1*nu2 - 2*ss*a1*a2*nu1*nu2 - 16*ss*b2*nu1^2*nu2 - 4*ss*b1^2*nu2^2 - 6*ss*b1*a1*nu2^2 - 16*ss*b1*nu1*nu2^2 - b1*b2*a1*a2 - 2*b1*b2*a2*nu1 - b2*a1*a2*nu1 - 2*b2*a2*nu1^2 - 2*b1*b2*a1*nu2 - b1*a1*a2*nu2 - 4*b1*b2*nu1*nu2 - 2*b2*a1*nu1*nu2 - 2*b1*a2*nu1*nu2 - a1*a2*nu1*nu2 - 4*b2*nu1^2*nu2 - 2*a2*nu1^2*nu2 - 2*b1*a1*nu2^2 - 4*b1*nu1*nu2^2 - 2*a1*nu1*nu2^2 - 4*nu1^2*nu2^2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prueba = vertice2 - arista1 + vertice1 - arista0 + vertice0\n", + "# prueba.numerator().variables() + prueba.denominator().variables()\n", + "show(prueba.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 162, + "id": "3dca988e-ab5a-45df-ad41-ef3f0a72dd68", + "metadata": {}, + "outputs": [], + "source": [ + "def compara(aa1, aa2, bb1, bb2, nnu1, nnu2):\n", + " R. = QQ[]\n", + " F = z^3 + x^bb1 * y^bb2 * (z^2 + x^aa1 * y^aa2)\n", + " zt = ZetaFunctions(F).topological_zeta(local=True, weights=(nnu1, nnu2, 1))\n", + " S = zt.parent()\n", + " s = S.gen(0)\n", + " aalpha1 = aa1.gcd(2)\n", + " aalpha2 = aa2.gcd(2)\n", + " ccd = aalpha1.gcd(aalpha2)\n", + " pr = prueba(nu1=nnu1, nu2=nnu2, b1=bb1, b2=bb2, alpha1=aalpha1, alpha2=aalpha2, a1=aa1, a2=aa2, cd=ccd, ss=s)\n", + " return (zt, pr)" + ] + }, + { + "cell_type": "code", + "execution_count": 163, + "id": "073d82a2-a980-49b8-af90-6eceb62f3e8d", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(5, 7, 2, 3, 2, 3)" + ] + }, + { + "cell_type": "code", + "execution_count": 164, + "id": "8dcbe7a7-d101-4467-816b-be27da69ec4e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/18) * (s + 9/14)^-1 * (s + 13/20)^-1 * (s + 2/3)^-1 * (s + 1)^-1 * (s^3 + 339/140*s^2 + 97/40*s + 117/140)" + ] + }, + "execution_count": 164, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 165, + "id": "859d400a-7531-4d67-9f2b-93d504e67a4c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/18) * (s + 9/14)^-1 * (s + 13/20)^-1 * (s + 2/3)^-1 * (s + 1)^-1 * (s^3 + 339/140*s^2 + 97/40*s + 117/140)" + ] + }, + "execution_count": 165, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 166, + "id": "17be1a78-85e6-43d1-9195-2eb8087e8014", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 166, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 167, + "id": "71b3a501-34ea-4088-8e1e-cbb2443d8bf3", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(8, 12, 3, 5, 2, 5)" + ] + }, + { + "cell_type": "code", + "execution_count": 168, + "id": "4e819dc3-3ec2-4f56-beab-f1f3305810a6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/30) * (s + 6/11)^-1 * (s + 5/9)^-1 * (s + 11/17)^-1 * (s + 1)^-1 * (s^3 + 380/187*s^2 + 1049/561*s + 10/17)" + ] + }, + "execution_count": 168, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 169, + "id": "5b253517-325f-46db-99ca-0ccfeba8ddd0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/30) * (s + 6/11)^-1 * (s + 5/9)^-1 * (s + 11/17)^-1 * (s + 1)^-1 * (s^3 + 380/187*s^2 + 1049/561*s + 10/17)" + ] + }, + "execution_count": 169, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 170, + "id": "36c06394-c632-47af-9763-4087cd66b85c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 170, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 269, + "id": "b33a603c-96ba-4fe6-8db1-270536077a49", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(5, 0, 2, 0, 8, 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 270, + "id": "3a9accb9-47b2-4e8e-ad24-555933f516a5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-3/56) * (s + 1)^-1 * (s + 5/3)^-1 * (s - 35/9)" + ] + }, + "execution_count": 270, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 271, + "id": "9f299f5e-36e3-46e4-a0cd-8c08d107d229", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-3/56) * (s + 1)^-1 * (s + 5/3)^-1 * (s - 35/9)" + ] + }, + "execution_count": 271, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 179, + "id": "94a24032-ab8a-4d90-a88a-8695ca4255e1", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 179, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 201, + "id": "96473553-7d90-4537-83f8-3a1c7e16a4df", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(8, 0, 2, 0, 2, 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 202, + "id": "bdec0869-286f-46e4-a615-93779957bd70", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-1/10) * (s + 3/5)^-1 * (s + 1)^-1 * (s - 3)" + ] + }, + "execution_count": 202, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 203, + "id": "f0bdb839-c6e7-4928-bb94-dbed2ab5dca5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-1/10) * (s + 3/5)^-1 * (s + 1)^-1 * (s - 3)" + ] + }, + "execution_count": 203, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "id": "bb8c2b27-5112-412f-b77c-21e6b854f8f6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 77, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "124c73b9-0e00-4b54-b361-834aae7093d3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/4) * (t + 1)^-1 * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (2*nu1*nu2*t*cd^2 - 2*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 2*a2*nu1*t - 2*a1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prt = prueba.subs(sb)\n", + "show(prt.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "id": "655a992c-c841-4ebd-b641-fbfa107b1a2f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/4) * nu2^-1 * nu1^-1 * (2*nu1*nu2*t*cd^2 - 2*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 2*a2*nu1*t - 2*a1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prt1 = prt * (a2 * t + nu2) * (a1 * t + nu1) * (t + 1)\n", + "show(prt1.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "id": "348ed4c3-3e5b-437d-b2ce-80cf913b2ab0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot (-a_{1} + \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot (-a_{1} + \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)$" + ], + "text/plain": [ + "(-3/4) * (a2 - nu2)^-1 * (-a1 + nu1)^-1 * (cd^2 + 2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf23 = (prt1 / (a2 * t + nu2) / (a1 * t + nu1))(t=-1)\n", + "show(cf23.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "id": "33c604e3-cef3-4785-a4ba-5481905f7662", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot a_{1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (-a_{2} \\nu_{1} + a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot a_{1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (-a_{2} \\nu_{1} + a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})$" + ], + "text/plain": [ + "(1/4) * nu1^-1 * (a1 - nu1)^-1 * a1 * (a1 + 2*nu1) * (-a2*nu1 + a1*nu2)^-1 * (nu1*cd^2 + 2*a1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf1 = (prt1 / (t + 1) / (a2 * t + nu2))(t=-nu1 / a1)\n", + "show(cf1.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "id": "eefdd19d-2b7e-4037-b448-70b360f99324", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot a_{2} \\cdot (a_{2} + 2 \\nu_{2}) \\cdot (a_{2} \\nu_{1} - a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{2} \\mathit{cd}^{2} + 2 a_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot a_{2} \\cdot (a_{2} + 2 \\nu_{2}) \\cdot (a_{2} \\nu_{1} - a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{2} \\mathit{cd}^{2} + 2 a_{2})$" + ], + "text/plain": [ + "(1/4) * nu2^-1 * (a2 - nu2)^-1 * a2 * (a2 + 2*nu2) * (a2*nu1 - a1*nu2)^-1 * (nu2*cd^2 + 2*a2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf2 = (prt1 / (t + 1) / (a1 * t + nu1))(t=-nu2 / a2)\n", + "show(cf2.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "id": "b9b27e01-26a3-4ce1-8c45-b1cef61e241e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 84, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(cf23 / (t + 1) + cf1 / (a1 * t + nu1) + cf2 / (a2 * t + nu2) - prt)" + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "id": "32c69f2c-559d-444d-9ba2-28ebe87860b7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 85, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cf23(a2=0, nu2=1) / (t + 1) + cf1(a2=0, nu2=1) / (a1 * t + nu1) - prt(a2=0, nu2=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "id": "3a8f4455-9759-4266-80fb-72bbc9eb5f9d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)$" + ], + "text/plain": [ + "(-3/4) * (a1 - nu1)^-1 * (cd^2 + 2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show(cf23(a2=0, nu2=1).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 87, + "id": "5f833a09-ae0c-468e-9c48-f7de392135b5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})$" + ], + "text/plain": [ + "(1/4) * nu1^-1 * (a1 - nu1)^-1 * (a1 + 2*nu1) * (nu1*cd^2 + 2*a1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show(cf1(a2=0, nu2=1).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "id": "fa15ead6-04ac-47dc-be90-56c6ed7c24db", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (t + 1)^{-1} \\cdot (a_{1} t + \\nu_{1})^{-2} \\cdot (2 \\nu_{1}^{2} t \\mathit{cd}^{2} - 2 a_{1}^{2} t^{2} - \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} t - 4 a_{1} \\nu_{1} t - 4 a_{1} \\nu_{1} - 6 \\nu_{1}^{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (t + 1)^{-1} \\cdot (a_{1} t + \\nu_{1})^{-2} \\cdot (2 \\nu_{1}^{2} t \\mathit{cd}^{2} - 2 a_{1}^{2} t^{2} - \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} t - 4 a_{1} \\nu_{1} t - 4 a_{1} \\nu_{1} - 6 \\nu_{1}^{2})$" + ], + "text/plain": [ + "(-1/4) * nu1^-2 * rt^-1 * (t + 1)^-1 * (a1*t + nu1)^-2 * (2*nu1^2*t*cd^2 - 2*a1^2*t^2 - nu1^2*cd^2 - 2*a1^2*t - 4*a1*nu1*t - 4*a1*nu1 - 6*nu1^2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prta = prt(a2=rt * a1, nu2=rt * nu1)\n", + "show(prta.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "id": "def3aa24-7451-4a55-8f00-dfe19eb69ca8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (\\mathit{cd}^{2} + 2)\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (\\mathit{cd}^{2} + 2)$" + ], + "text/plain": [ + "(3/4) * (a1 - nu1)^-2 * rt^-1 * (cd^2 + 2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf23a = cf23(a2=rt * a1, nu2=rt * nu1)\n", + "show(cf23a.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 90, + "id": "522409a6-3cd4-44d5-9647-b78bcbe86007", + "metadata": {}, + "outputs": [], + "source": [ + "prtb = prta - cf23a / (t + 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 91, + "id": "e17948dd-26fb-48e0-9740-0bc20c584dbb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\mathit{rt}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\mathit{rt}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})$" + ], + "text/plain": [ + "(1/4) * rt^-1 * nu1^-1 * (a1 - nu1)^-1 * (a1 + 2*nu1) * (nu1*cd^2 + 2*a1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot a_{1} \\cdot (3 \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} + 4 a_{1} \\nu_{1} + 4 \\nu_{1}^{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot a_{1} \\cdot (3 \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} + 4 a_{1} \\nu_{1} + 4 \\nu_{1}^{2})$" + ], + "text/plain": [ + "(-1/4) * nu1^-2 * (a1 - nu1)^-2 * rt^-1 * a1 * (3*nu1^2*cd^2 - 2*a1^2 + 4*a1*nu1 + 4*nu1^2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf1a = (prtb * (a1 * t + nu1)^2)(t=-nu1 / a1)\n", + "show(cf1a.factor())\n", + "prtc = prtb - cf1a / (a1 * t + nu1)^2\n", + "cf2a = prtc * (a1 * t + nu1)\n", + "show(cf2a.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 93, + "id": "5c6d7d36-ca2d-41d1-8272-80908564cbbc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 93, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(cf23a / (t + 1) + cf1a / (a1 * t + nu1)^2 + cf2a / (a1 * t + nu1) - prta)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "632d9fd5-b8a2-4b48-be93-54a23f3418a7", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "SageMath 10.3.rc3", + "language": "sage", + "name": "sagemath-310" + }, + "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": 5 +} diff --git a/UnLado.ipynb b/UnLado.ipynb new file mode 100644 index 0000000..d0cd61d --- /dev/null +++ b/UnLado.ipynb @@ -0,0 +1,966 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 113, + "id": "4778e32e-f561-4e4d-b63a-d4d60f91abde", + "metadata": {}, + "outputs": [], + "source": [ + "R. = QQ[]" + ] + }, + { + "cell_type": "code", + "execution_count": 115, + "id": "f042e81b-abf8-4e09-bc67-a19d778033e6", + "metadata": {}, + "outputs": [], + "source": [ + "e1, e2, e3 = [v.change_ring(R) for v in (QQ^3).gens()]" + ] + }, + { + "cell_type": "code", + "execution_count": 116, + "id": "0733b364-bbf6-486c-a5d1-e72c7a5d48ca", + "metadata": {}, + "outputs": [], + "source": [ + "V1 = vector([0, 0, 3])\n", + "V0 = vector([a1, a2, 0])\n", + "nu = vector([nu1, nu2, 1])" + ] + }, + { + "cell_type": "code", + "execution_count": 117, + "id": "b81e1db9-883e-4a03-a38c-1ca296c9d25b", + "metadata": {}, + "outputs": [], + "source": [ + "Q1 = vector([3, 0, a1]) / alpha1\n", + "Q2 = vector([0, 3, a2]) / alpha2" + ] + }, + { + "cell_type": "code", + "execution_count": 118, + "id": "f97fbf75-4da5-45db-8f66-cdccdd052326", + "metadata": {}, + "outputs": [], + "source": [ + "def cono3(u, v, w, vert, nu0):\n", + " m = Matrix([u, v, w]).det()\n", + " den = 1\n", + " for u0 in (u, v, w):\n", + " den *= (u0 * vert) * ss + u0 * nu0\n", + " return m / den" + ] + }, + { + "cell_type": "code", + "execution_count": 119, + "id": "04072945-1ada-4d66-b44e-95318f073634", + "metadata": {}, + "outputs": [], + "source": [ + "sb = {ss: t - 1 / 3}" + ] + }, + { + "cell_type": "code", + "execution_count": 120, + "id": "d9834ff4-e09f-4cf9-abd0-9b1eea6ca033", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2})$" + ], + "text/plain": [ + "(1/3) * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (a1*a2*t + a2*nu1 + a1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "vertical = cono3(e1, e2, e3, V1, nu) - cono3(Q1, Q2, e3, V1, nu)\n", + "show(vertical.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 121, + "id": "fe5aa4f3-db61-4a38-a1d1-dd100d819937", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}\\)" + ], + "text/latex": [ + "$\\displaystyle (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}$" + ], + "text/plain": [ + "(a2*t + nu2)^-1 * (a1*t + nu1)^-1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "horizontal = cono3(Q1, Q2, e3, V0, nu)\n", + "horizontal = (horizontal.numerator() / 9) / (horizontal.denominator() / 9)\n", + "show(horizontal.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 122, + "id": "a3ea1fac-c5e0-4eed-8074-482879c11b70", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2} + 3 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2} + 3 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(1/3) * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (a1*a2*t + a2*nu1 + a1*nu2 + 3*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show((vertical + horizontal).subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 123, + "id": "29605b7d-37f7-4f22-80bd-1694134cd9b7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[9/(alpha1*alpha2), 3*a2/(alpha1*alpha2), (-3*a1)/(alpha1*alpha2)]" + ] + }, + "execution_count": 123, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Matrix([Q1, Q2]).minors(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 124, + "id": "83121ff8-547c-424b-b3ce-860a80f0541e", + "metadata": {}, + "outputs": [], + "source": [ + "mgamma = 3 * cd / alpha1 / alpha2" + ] + }, + { + "cell_type": "code", + "execution_count": 125, + "id": "b3963226-7397-4cb5-bdff-5382f74df8df", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3*a1/alpha1, 3*a1/alpha1, 3*a2/alpha2, 3*a2/alpha2, (a1 + 3*nu1)/alpha1)" + ] + }, + "execution_count": 125, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Q1 * V1, Q1 * V0, Q2 * V1, Q2 * V0, Q1 * nu" + ] + }, + { + "cell_type": "code", + "execution_count": 126, + "id": "36201bc7-a7e2-4c9e-a8e9-5865cb9686f9", + "metadata": {}, + "outputs": [], + "source": [ + "f1 = ((Q1 * V1) * ss + Q1 * nu)\n", + "f2 = ((Q2 * V1) * ss + Q2 * nu)" + ] + }, + { + "cell_type": "code", + "execution_count": 127, + "id": "d77f48f5-2236-4cb6-a211-14f3623539c0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot (3 t + 2)^{-1} \\cdot (3 t - 1) \\cdot \\mathit{cd}^{2} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot (3 t + 2)^{-1} \\cdot (3 t - 1) \\cdot \\mathit{cd}^{2} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}$" + ], + "text/plain": [ + "(1/3) * (3*t + 2)^-1 * (3*t - 1) * cd^2 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "arista = mgamma * ss / (ss + 1) / f1 / f2 * cd \n", + "show(arista.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 128, + "id": "c18631c1-f18a-48a2-8e9a-727d347ef89a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot (3 t + 2)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (3 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 3 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 3 a_{2} \\nu_{1} t - 3 a_{1} \\nu_{2} t - 9 \\nu_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot (3 t + 2)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (3 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 3 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 3 a_{2} \\nu_{1} t - 3 a_{1} \\nu_{2} t - 9 \\nu_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/3) * (3*t + 2)^-1 * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (3*nu1*nu2*t*cd^2 - 3*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 3*a2*nu1*t - 3*a1*nu2*t - 9*nu1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prueba = horizontal - arista + vertical\n", + "# prueba.numerator().variables() + prueba.denominator().variables()\n", + "show(prueba.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 129, + "id": "3dca988e-ab5a-45df-ad41-ef3f0a72dd68", + "metadata": {}, + "outputs": [], + "source": [ + "def compara(aa1, aa2, nnu1, nnu2):\n", + " R. = QQ[]\n", + " F = z^3 + x^aa1 * y^aa2\n", + " zt = ZetaFunctions(F).topological_zeta(local=True, weights=(nnu1, nnu2, 1))\n", + " S = zt.parent()\n", + " s = S.gen(0)\n", + " aalpha1 = aa1.gcd(3)\n", + " aalpha2 = aa2.gcd(3)\n", + " ccd = aalpha1.gcd(aalpha2)\n", + " pr = prueba(nu1=nnu1, nu2=nnu2, a1=aa1, a2=aa2, cd=ccd, ss=s)\n", + " return (zt, pr)" + ] + }, + { + "cell_type": "code", + "execution_count": 130, + "id": "073d82a2-a980-49b8-af90-6eceb62f3e8d", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(5, 7, 2, 3)" + ] + }, + { + "cell_type": "code", + "execution_count": 131, + "id": "8dcbe7a7-d101-4467-816b-be27da69ec4e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/18) * (s + 11/15)^-1 * (s + 16/21)^-1 * (s + 1)^-1 * (s^2 + 263/105*s + 176/105)" + ] + }, + "execution_count": 131, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 132, + "id": "859d400a-7531-4d67-9f2b-93d504e67a4c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/18) * (s + 11/15)^-1 * (s + 16/21)^-1 * (s + 1)^-1 * (s^2 + 263/105*s + 176/105)" + ] + }, + "execution_count": 132, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 133, + "id": "17be1a78-85e6-43d1-9195-2eb8087e8014", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 133, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 134, + "id": "71b3a501-34ea-4088-8e1e-cbb2443d8bf3", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(6, 9, 2, 5)" + ] + }, + { + "cell_type": "code", + "execution_count": 135, + "id": "4e819dc3-3ec2-4f56-beab-f1f3305810a6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/30) * (s + 2/3)^-1 * (s + 8/9)^-1 * (s + 1)^-1 * (s^2 + 10/9*s + 16/9)" + ] + }, + "execution_count": 135, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 136, + "id": "5b253517-325f-46db-99ca-0ccfeba8ddd0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/30) * (s + 2/3)^-1 * (s + 8/9)^-1 * (s + 1)^-1 * (s^2 + 10/9*s + 16/9)" + ] + }, + "execution_count": 136, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 137, + "id": "36c06394-c632-47af-9763-4087cd66b85c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 137, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 138, + "id": "b33a603c-96ba-4fe6-8db1-270536077a49", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(5, 0, 2, 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 139, + "id": "3a9accb9-47b2-4e8e-ad24-555933f516a5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3/10) * (s + 11/15)^-1 * (s + 1)^-1 * (s + 11/9)" + ] + }, + "execution_count": 139, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 140, + "id": "9f299f5e-36e3-46e4-a0cd-8c08d107d229", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3/10) * (s + 11/15)^-1 * (s + 1)^-1 * (s + 11/9)" + ] + }, + "execution_count": 140, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 141, + "id": "94a24032-ab8a-4d90-a88a-8695ca4255e1", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 141, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 142, + "id": "96473553-7d90-4537-83f8-3a1c7e16a4df", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(6, 0, 2, 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 143, + "id": "bdec0869-286f-46e4-a615-93779957bd70", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-1/6) * (s + 2/3)^-1 * (s + 1)^-1 * (s - 2)" + ] + }, + "execution_count": 143, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 144, + "id": "f0bdb839-c6e7-4928-bb94-dbed2ab5dca5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-1/6) * (s + 2/3)^-1 * (s + 1)^-1 * (s - 2)" + ] + }, + "execution_count": 144, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 145, + "id": "bb8c2b27-5112-412f-b77c-21e6b854f8f6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 145, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 146, + "id": "124c73b9-0e00-4b54-b361-834aae7093d3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot (3 t + 2)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (3 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 3 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 3 a_{2} \\nu_{1} t - 3 a_{1} \\nu_{2} t - 9 \\nu_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot (3 t + 2)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (3 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 3 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 3 a_{2} \\nu_{1} t - 3 a_{1} \\nu_{2} t - 9 \\nu_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/3) * (3*t + 2)^-1 * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (3*nu1*nu2*t*cd^2 - 3*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 3*a2*nu1*t - 3*a1*nu2*t - 9*nu1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prt = prueba.subs(sb)\n", + "show(prt.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 147, + "id": "655a992c-c841-4ebd-b641-fbfa107b1a2f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (3 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 3 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 3 a_{2} \\nu_{1} t - 3 a_{1} \\nu_{2} t - 9 \\nu_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (3 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 3 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 3 a_{2} \\nu_{1} t - 3 a_{1} \\nu_{2} t - 9 \\nu_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/3) * nu2^-1 * nu1^-1 * (3*nu1*nu2*t*cd^2 - 3*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 3*a2*nu1*t - 3*a1*nu2*t - 9*nu1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prt1 = prt * (a2 * t + nu2) * (a1 * t + nu1) * (3 * t + 2)\n", + "show(prt1.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 148, + "id": "348ed4c3-3e5b-437d-b2ce-80cf913b2ab0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-9\\right) \\cdot (2 a_{2} - 3 \\nu_{2})^{-1} \\cdot (-2 a_{1} + 3 \\nu_{1})^{-1} \\cdot \\mathit{cd}^{2}\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-9\\right) \\cdot (2 a_{2} - 3 \\nu_{2})^{-1} \\cdot (-2 a_{1} + 3 \\nu_{1})^{-1} \\cdot \\mathit{cd}^{2}$" + ], + "text/plain": [ + "(-9) * (2*a2 - 3*nu2)^-1 * (-2*a1 + 3*nu1)^-1 * cd^2" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf23 = (prt1 / (a2 * t + nu2) / (a1 * t + nu1))(t=-2 / 3)\n", + "show(cf23.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 149, + "id": "33c604e3-cef3-4785-a4ba-5481905f7662", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{1}^{-1} \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot a_{1} \\cdot (a_{1} + 3 \\nu_{1}) \\cdot (-a_{2} \\nu_{1} + a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1} - 3 \\nu_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{1}^{-1} \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot a_{1} \\cdot (a_{1} + 3 \\nu_{1}) \\cdot (-a_{2} \\nu_{1} + a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1} - 3 \\nu_{1})$" + ], + "text/plain": [ + "(1/3) * nu1^-1 * (2*a1 - 3*nu1)^-1 * a1 * (a1 + 3*nu1) * (-a2*nu1 + a1*nu2)^-1 * (nu1*cd^2 + 2*a1 - 3*nu1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf1 = (prt1 / (3 * t + 2) / (a2 * t + nu2))(t=-nu1 / a1)\n", + "show(cf1.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 150, + "id": "eefdd19d-2b7e-4037-b448-70b360f99324", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot (2 a_{2} - 3 \\nu_{2})^{-1} \\cdot a_{2} \\cdot (a_{2} + 3 \\nu_{2}) \\cdot (a_{2} \\nu_{1} - a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{2} \\mathit{cd}^{2} + 2 a_{2} - 3 \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{2}^{-1} \\cdot (2 a_{2} - 3 \\nu_{2})^{-1} \\cdot a_{2} \\cdot (a_{2} + 3 \\nu_{2}) \\cdot (a_{2} \\nu_{1} - a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{2} \\mathit{cd}^{2} + 2 a_{2} - 3 \\nu_{2})$" + ], + "text/plain": [ + "(1/3) * nu2^-1 * (2*a2 - 3*nu2)^-1 * a2 * (a2 + 3*nu2) * (a2*nu1 - a1*nu2)^-1 * (nu2*cd^2 + 2*a2 - 3*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf2 = (prt1 / (3 * t + 2) / (a1 * t + nu1))(t=-nu2 / a2)\n", + "show(cf2.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 151, + "id": "b9b27e01-26a3-4ce1-8c45-b1cef61e241e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 151, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(cf23 / (3 * t + 2) + cf1 / (a1 * t + nu1) + cf2 / (a2 * t + nu2) - prt)" + ] + }, + { + "cell_type": "code", + "execution_count": 152, + "id": "32c69f2c-559d-444d-9ba2-28ebe87860b7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 152, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cf23(a2=0, nu2=1) / (3 * t + 2) + cf1(a2=0, nu2=1) / (a1 * t + nu1) - prt(a2=0, nu2=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 153, + "id": "3a8f4455-9759-4266-80fb-72bbc9eb5f9d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-3\\right) \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot \\mathit{cd}^{2}\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-3\\right) \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot \\mathit{cd}^{2}$" + ], + "text/plain": [ + "(-3) * (2*a1 - 3*nu1)^-1 * cd^2" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show(cf23(a2=0, nu2=1).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 154, + "id": "5f833a09-ae0c-468e-9c48-f7de392135b5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{1}^{-1} \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot (a_{1} + 3 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1} - 3 \\nu_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\nu_{1}^{-1} \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot (a_{1} + 3 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1} - 3 \\nu_{1})$" + ], + "text/plain": [ + "(1/3) * nu1^-1 * (2*a1 - 3*nu1)^-1 * (a1 + 3*nu1) * (nu1*cd^2 + 2*a1 - 3*nu1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show(cf1(a2=0, nu2=1).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 155, + "id": "fa15ead6-04ac-47dc-be90-56c6ed7c24db", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-1/3) * nu1^-2 * rt^-1 * (3*t + 2)^-1 * (a1*t + nu1)^-2 * (3*nu1^2*t*cd^2 - 3*a1^2*t^2 - nu1^2*cd^2 - 2*a1^2*t - 6*a1*nu1*t - 9*nu1^2*t - 4*a1*nu1 - 6*nu1^2)" + ] + }, + "execution_count": 155, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "prta = prt(a2=rt * a1, nu2=rt * nu1)\n", + "prta.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 156, + "id": "def3aa24-7451-4a55-8f00-dfe19eb69ca8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(9\\right) \\cdot (2 a_{1} - 3 \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot \\mathit{cd}^{2}\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(9\\right) \\cdot (2 a_{1} - 3 \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot \\mathit{cd}^{2}$" + ], + "text/plain": [ + "(9) * (2*a1 - 3*nu1)^-2 * rt^-1 * cd^2" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf23a = cf23(a2=rt * a1, nu2=rt * nu1)\n", + "show(cf23a.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 157, + "id": "522409a6-3cd4-44d5-9647-b78bcbe86007", + "metadata": {}, + "outputs": [], + "source": [ + "prtb = prta - cf23a / (3 * t + 2)" + ] + }, + { + "cell_type": "code", + "execution_count": 159, + "id": "e17948dd-26fb-48e0-9740-0bc20c584dbb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\mathit{rt}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot (a_{1} + 3 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1} - 3 \\nu_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{3}\\right) \\cdot \\mathit{rt}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (2 a_{1} - 3 \\nu_{1})^{-1} \\cdot (a_{1} + 3 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1} - 3 \\nu_{1})$" + ], + "text/plain": [ + "(1/3) * rt^-1 * nu1^-1 * (2*a1 - 3*nu1)^-1 * (a1 + 3*nu1) * (nu1*cd^2 + 2*a1 - 3*nu1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot \\nu_{1}^{-2} \\cdot (2 a_{1} - 3 \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot a_{1} \\cdot (3 \\nu_{1} \\mathit{cd} - 2 a_{1} + 3 \\nu_{1}) \\cdot (3 \\nu_{1} \\mathit{cd} + 2 a_{1} - 3 \\nu_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{3}\\right) \\cdot \\nu_{1}^{-2} \\cdot (2 a_{1} - 3 \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot a_{1} \\cdot (3 \\nu_{1} \\mathit{cd} - 2 a_{1} + 3 \\nu_{1}) \\cdot (3 \\nu_{1} \\mathit{cd} + 2 a_{1} - 3 \\nu_{1})$" + ], + "text/plain": [ + "(-1/3) * nu1^-2 * (2*a1 - 3*nu1)^-2 * rt^-1 * a1 * (3*nu1*cd - 2*a1 + 3*nu1) * (3*nu1*cd + 2*a1 - 3*nu1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf1a = (prtb * (a1 * t + nu1)^2)(t=-nu1 / a1)\n", + "show(cf1a.factor())\n", + "prtc = prtb - cf1a / (a1 * t + nu1)^2\n", + "cf2a = prtc * (a1 * t + nu1)\n", + "show(cf2a.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 160, + "id": "5c6d7d36-ca2d-41d1-8272-80908564cbbc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 160, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(cf23a / (3 * t + 2) + cf1a / (a1 * t + nu1)^2 + cf2a / (a1 * t + nu1) - prta)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "632d9fd5-b8a2-4b48-be93-54a23f3418a7", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "SageMath 10.3.rc3", + "language": "sage", + "name": "sagemath-310" + }, + "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": 5 +} diff --git a/UnLadoZ.ipynb b/UnLadoZ.ipynb new file mode 100644 index 0000000..2679134 --- /dev/null +++ b/UnLadoZ.ipynb @@ -0,0 +1,971 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "id": "4778e32e-f561-4e4d-b63a-d4d60f91abde", + "metadata": {}, + "outputs": [], + "source": [ + "R. = QQ[]" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "f042e81b-abf8-4e09-bc67-a19d778033e6", + "metadata": {}, + "outputs": [], + "source": [ + "e1, e2, e3 = [v.change_ring(R) for v in (QQ^3).gens()]" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "0733b364-bbf6-486c-a5d1-e72c7a5d48ca", + "metadata": {}, + "outputs": [], + "source": [ + "V1 = vector([0, 0, 3])\n", + "V0 = vector([a1, a2, 1])\n", + "nu = vector([nu1, nu2, 1])" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "b81e1db9-883e-4a03-a38c-1ca296c9d25b", + "metadata": {}, + "outputs": [], + "source": [ + "Q1 = vector([2, 0, a1]) / alpha1\n", + "Q2 = vector([0, 2, a2]) / alpha2" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "f97fbf75-4da5-45db-8f66-cdccdd052326", + "metadata": {}, + "outputs": [], + "source": [ + "def cono3(u, v, w, vert, nu0):\n", + " m = Matrix([u, v, w]).det()\n", + " den = 1\n", + " for u0 in (u, v, w):\n", + " den *= (u0 * vert) * ss + u0 * nu0\n", + " return m / den" + ] + }, + { + "cell_type": "code", + "execution_count": 51, + "id": "04072945-1ada-4d66-b44e-95318f073634", + "metadata": {}, + "outputs": [], + "source": [ + "sb = {ss: (2 * t - 1) / 3}" + ] + }, + { + "cell_type": "code", + "execution_count": 52, + "id": "d9834ff4-e09f-4cf9-abd0-9b1eea6ca033", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{2}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{2}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2})$" + ], + "text/plain": [ + "(1/2) * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (a1*a2*t + a2*nu1 + a1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "vertical = cono3(e1, e2, e3, V1, nu) - cono3(Q1, Q2, e3, V1, nu)\n", + "show(vertical.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 53, + "id": "fe5aa4f3-db61-4a38-a1d1-dd100d819937", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{3}{8}\\right) \\cdot 2^{2} \\cdot (t + 1)^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{3}{8}\\right) \\cdot 2^{2} \\cdot (t + 1)^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}$" + ], + "text/plain": [ + "(3/8) * 2^2 * (t + 1)^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "horizontal = cono3(Q1, Q2, e3, V0, nu)\n", + "horizontal = (horizontal.numerator() / 1) / (horizontal.denominator() / 1)\n", + "show(horizontal.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "id": "a3ea1fac-c5e0-4eed-8074-482879c11b70", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{2}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t^{2} + a_{1} a_{2} t + a_{2} \\nu_{1} t + a_{1} \\nu_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2} + 3 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{2}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (a_{1} a_{2} t^{2} + a_{1} a_{2} t + a_{2} \\nu_{1} t + a_{1} \\nu_{2} t + a_{2} \\nu_{1} + a_{1} \\nu_{2} + 3 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(1/2) * (t + 1)^-1 * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (a1*a2*t^2 + a1*a2*t + a2*nu1*t + a1*nu2*t + a2*nu1 + a1*nu2 + 3*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show((vertical + horizontal).subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 55, + "id": "29605b7d-37f7-4f22-80bd-1694134cd9b7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[4/(alpha1*alpha2), 2*a2/(alpha1*alpha2), (-2*a1)/(alpha1*alpha2)]" + ] + }, + "execution_count": 55, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Matrix([Q1, Q2]).minors(2)" + ] + }, + { + "cell_type": "code", + "execution_count": 56, + "id": "83121ff8-547c-424b-b3ce-860a80f0541e", + "metadata": {}, + "outputs": [], + "source": [ + "mgamma = 2 * cd / alpha1 / alpha2" + ] + }, + { + "cell_type": "code", + "execution_count": 57, + "id": "b3963226-7397-4cb5-bdff-5382f74df8df", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(3*a1/alpha1, 3*a1/alpha1, 3*a2/alpha2, 3*a2/alpha2, (a1 + 2*nu1)/alpha1)" + ] + }, + "execution_count": 57, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "Q1 * V1, Q1 * V0, Q2 * V1, Q2 * V0, Q1 * nu" + ] + }, + { + "cell_type": "code", + "execution_count": 58, + "id": "36201bc7-a7e2-4c9e-a8e9-5865cb9686f9", + "metadata": {}, + "outputs": [], + "source": [ + "f1 = ((Q1 * V1) * ss + Q1 * nu)\n", + "f2 = ((Q2 * V1) * ss + Q2 * nu)" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "id": "d77f48f5-2236-4cb6-a211-14f3623539c0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot (2 t - 1) \\cdot \\mathit{cd}^{2} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot (2 t - 1) \\cdot \\mathit{cd}^{2} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1}$" + ], + "text/plain": [ + "(1/4) * (t + 1)^-1 * (2*t - 1) * cd^2 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "arista = mgamma * ss / (ss + 1) / f1 / f2 * cd \n", + "show(arista.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "id": "c18631c1-f18a-48a2-8e9a-727d347ef89a", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/4) * (t + 1)^-1 * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (2*nu1*nu2*t*cd^2 - 2*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 2*a2*nu1*t - 2*a1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prueba = horizontal - arista + vertical\n", + "# prueba.numerator().variables() + prueba.denominator().variables()\n", + "show(prueba.subs(sb).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 61, + "id": "3dca988e-ab5a-45df-ad41-ef3f0a72dd68", + "metadata": {}, + "outputs": [], + "source": [ + "def compara(aa1, aa2, nnu1, nnu2):\n", + " R. = QQ[]\n", + " F = z^3 + x^aa1 * y^aa2 * z\n", + " zt = ZetaFunctions(F).topological_zeta(local=True, weights=(nnu1, nnu2, 1))\n", + " S = zt.parent()\n", + " s = S.gen(0)\n", + " aalpha1 = aa1.gcd(2)\n", + " aalpha2 = aa2.gcd(2)\n", + " ccd = aalpha1.gcd(aalpha2)\n", + " pr = prueba(nu1=nnu1, nu2=nnu2, a1=aa1, a2=aa2, cd=ccd, ss=s)\n", + " return (zt, pr)" + ] + }, + { + "cell_type": "code", + "execution_count": 62, + "id": "073d82a2-a980-49b8-af90-6eceb62f3e8d", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(5, 7, 2, 3)" + ] + }, + { + "cell_type": "code", + "execution_count": 63, + "id": "8dcbe7a7-d101-4467-816b-be27da69ec4e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/18) * (s + 3/5)^-1 * (s + 13/21)^-1 * (s + 1)^-1 * (s^2 + 62/35*s + 39/35)" + ] + }, + "execution_count": 63, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 64, + "id": "859d400a-7531-4d67-9f2b-93d504e67a4c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/18) * (s + 3/5)^-1 * (s + 13/21)^-1 * (s + 1)^-1 * (s^2 + 62/35*s + 39/35)" + ] + }, + "execution_count": 64, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 65, + "id": "17be1a78-85e6-43d1-9195-2eb8087e8014", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 65, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 66, + "id": "71b3a501-34ea-4088-8e1e-cbb2443d8bf3", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(8, 4, 2, 5)" + ] + }, + { + "cell_type": "code", + "execution_count": 67, + "id": "4e819dc3-3ec2-4f56-beab-f1f3305810a6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/30) * (s + 1/2)^-1 * (s + 1)^-1 * (s + 7/6)^-1 * (s^2 + 3/2*s + 7/4)" + ] + }, + "execution_count": 67, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 68, + "id": "5b253517-325f-46db-99ca-0ccfeba8ddd0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/30) * (s + 1/2)^-1 * (s + 1)^-1 * (s + 7/6)^-1 * (s^2 + 3/2*s + 7/4)" + ] + }, + "execution_count": 68, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 69, + "id": "36c06394-c632-47af-9763-4087cd66b85c", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 69, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 70, + "id": "b33a603c-96ba-4fe6-8db1-270536077a49", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(5, 0, 2, 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 71, + "id": "3a9accb9-47b2-4e8e-ad24-555933f516a5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/10) * (s + 3/5)^-1 * (s + 1)^-1 * (s + 3)" + ] + }, + "execution_count": 71, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 72, + "id": "9f299f5e-36e3-46e4-a0cd-8c08d107d229", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(1/10) * (s + 3/5)^-1 * (s + 1)^-1 * (s + 3)" + ] + }, + "execution_count": 72, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 73, + "id": "94a24032-ab8a-4d90-a88a-8695ca4255e1", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 73, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 74, + "id": "96473553-7d90-4537-83f8-3a1c7e16a4df", + "metadata": {}, + "outputs": [], + "source": [ + "zt, pr = compara(6, 0, 2, 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 75, + "id": "bdec0869-286f-46e4-a615-93779957bd70", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-1/18) * (s + 5/9)^-1 * (s + 1)^-1 * (s - 5)" + ] + }, + "execution_count": 75, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 76, + "id": "f0bdb839-c6e7-4928-bb94-dbed2ab5dca5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "(-1/18) * (s + 5/9)^-1 * (s + 1)^-1 * (s - 5)" + ] + }, + "execution_count": 76, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pr.factor()" + ] + }, + { + "cell_type": "code", + "execution_count": 77, + "id": "bb8c2b27-5112-412f-b77c-21e6b854f8f6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 77, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "zt - pr" + ] + }, + { + "cell_type": "code", + "execution_count": 78, + "id": "124c73b9-0e00-4b54-b361-834aae7093d3", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot (t + 1)^{-1} \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{2} t + \\nu_{2})^{-1} \\cdot (a_{1} t + \\nu_{1})^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/4) * (t + 1)^-1 * nu2^-1 * nu1^-1 * (a2*t + nu2)^-1 * (a1*t + nu1)^-1 * (2*nu1*nu2*t*cd^2 - 2*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 2*a2*nu1*t - 2*a1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prt = prueba.subs(sb)\n", + "show(prt.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 80, + "id": "655a992c-c841-4ebd-b641-fbfa107b1a2f", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (2 \\nu_{1} \\nu_{2} t \\mathit{cd}^{2} - 2 a_{1} a_{2} t^{2} - \\nu_{1} \\nu_{2} \\mathit{cd}^{2} - 2 a_{1} a_{2} t - 2 a_{2} \\nu_{1} t - 2 a_{1} \\nu_{2} t - 2 a_{2} \\nu_{1} - 2 a_{1} \\nu_{2} - 6 \\nu_{1} \\nu_{2})$" + ], + "text/plain": [ + "(-1/4) * nu2^-1 * nu1^-1 * (2*nu1*nu2*t*cd^2 - 2*a1*a2*t^2 - nu1*nu2*cd^2 - 2*a1*a2*t - 2*a2*nu1*t - 2*a1*nu2*t - 2*a2*nu1 - 2*a1*nu2 - 6*nu1*nu2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prt1 = prt * (a2 * t + nu2) * (a1 * t + nu1) * (t + 1)\n", + "show(prt1.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 81, + "id": "348ed4c3-3e5b-437d-b2ce-80cf913b2ab0", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot (-a_{1} + \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot (-a_{1} + \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)$" + ], + "text/plain": [ + "(-3/4) * (a2 - nu2)^-1 * (-a1 + nu1)^-1 * (cd^2 + 2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf23 = (prt1 / (a2 * t + nu2) / (a1 * t + nu1))(t=-1)\n", + "show(cf23.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 82, + "id": "33c604e3-cef3-4785-a4ba-5481905f7662", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot a_{1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (-a_{2} \\nu_{1} + a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot a_{1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (-a_{2} \\nu_{1} + a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})$" + ], + "text/plain": [ + "(1/4) * nu1^-1 * (a1 - nu1)^-1 * a1 * (a1 + 2*nu1) * (-a2*nu1 + a1*nu2)^-1 * (nu1*cd^2 + 2*a1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf1 = (prt1 / (t + 1) / (a2 * t + nu2))(t=-nu1 / a1)\n", + "show(cf1.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 83, + "id": "eefdd19d-2b7e-4037-b448-70b360f99324", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot a_{2} \\cdot (a_{2} + 2 \\nu_{2}) \\cdot (a_{2} \\nu_{1} - a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{2} \\mathit{cd}^{2} + 2 a_{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{2}^{-1} \\cdot (a_{2} - \\nu_{2})^{-1} \\cdot a_{2} \\cdot (a_{2} + 2 \\nu_{2}) \\cdot (a_{2} \\nu_{1} - a_{1} \\nu_{2})^{-1} \\cdot (\\nu_{2} \\mathit{cd}^{2} + 2 a_{2})$" + ], + "text/plain": [ + "(1/4) * nu2^-1 * (a2 - nu2)^-1 * a2 * (a2 + 2*nu2) * (a2*nu1 - a1*nu2)^-1 * (nu2*cd^2 + 2*a2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf2 = (prt1 / (t + 1) / (a1 * t + nu1))(t=-nu2 / a2)\n", + "show(cf2.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 84, + "id": "b9b27e01-26a3-4ce1-8c45-b1cef61e241e", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 84, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(cf23 / (t + 1) + cf1 / (a1 * t + nu1) + cf2 / (a2 * t + nu2) - prt)" + ] + }, + { + "cell_type": "code", + "execution_count": 85, + "id": "32c69f2c-559d-444d-9ba2-28ebe87860b7", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 85, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "cf23(a2=0, nu2=1) / (t + 1) + cf1(a2=0, nu2=1) / (a1 * t + nu1) - prt(a2=0, nu2=1)" + ] + }, + { + "cell_type": "code", + "execution_count": 86, + "id": "3a8f4455-9759-4266-80fb-72bbc9eb5f9d", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (\\mathit{cd}^{2} + 2)$" + ], + "text/plain": [ + "(-3/4) * (a1 - nu1)^-1 * (cd^2 + 2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show(cf23(a2=0, nu2=1).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 87, + "id": "5f833a09-ae0c-468e-9c48-f7de392135b5", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})$" + ], + "text/plain": [ + "(1/4) * nu1^-1 * (a1 - nu1)^-1 * (a1 + 2*nu1) * (nu1*cd^2 + 2*a1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "show(cf1(a2=0, nu2=1).factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 88, + "id": "fa15ead6-04ac-47dc-be90-56c6ed7c24db", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (t + 1)^{-1} \\cdot (a_{1} t + \\nu_{1})^{-2} \\cdot (2 \\nu_{1}^{2} t \\mathit{cd}^{2} - 2 a_{1}^{2} t^{2} - \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} t - 4 a_{1} \\nu_{1} t - 4 a_{1} \\nu_{1} - 6 \\nu_{1}^{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (t + 1)^{-1} \\cdot (a_{1} t + \\nu_{1})^{-2} \\cdot (2 \\nu_{1}^{2} t \\mathit{cd}^{2} - 2 a_{1}^{2} t^{2} - \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} t - 4 a_{1} \\nu_{1} t - 4 a_{1} \\nu_{1} - 6 \\nu_{1}^{2})$" + ], + "text/plain": [ + "(-1/4) * nu1^-2 * rt^-1 * (t + 1)^-1 * (a1*t + nu1)^-2 * (2*nu1^2*t*cd^2 - 2*a1^2*t^2 - nu1^2*cd^2 - 2*a1^2*t - 4*a1*nu1*t - 4*a1*nu1 - 6*nu1^2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "prta = prt(a2=rt * a1, nu2=rt * nu1)\n", + "show(prta.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 89, + "id": "def3aa24-7451-4a55-8f00-dfe19eb69ca8", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (\\mathit{cd}^{2} + 2)\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{3}{4}\\right) \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot (\\mathit{cd}^{2} + 2)$" + ], + "text/plain": [ + "(3/4) * (a1 - nu1)^-2 * rt^-1 * (cd^2 + 2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf23a = cf23(a2=rt * a1, nu2=rt * nu1)\n", + "show(cf23a.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 90, + "id": "522409a6-3cd4-44d5-9647-b78bcbe86007", + "metadata": {}, + "outputs": [], + "source": [ + "prtb = prta - cf23a / (t + 1)" + ] + }, + { + "cell_type": "code", + "execution_count": 91, + "id": "e17948dd-26fb-48e0-9740-0bc20c584dbb", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\mathit{rt}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(\\frac{1}{4}\\right) \\cdot \\mathit{rt}^{-1} \\cdot \\nu_{1}^{-1} \\cdot (a_{1} - \\nu_{1})^{-1} \\cdot (a_{1} + 2 \\nu_{1}) \\cdot (\\nu_{1} \\mathit{cd}^{2} + 2 a_{1})$" + ], + "text/plain": [ + "(1/4) * rt^-1 * nu1^-1 * (a1 - nu1)^-1 * (a1 + 2*nu1) * (nu1*cd^2 + 2*a1)" + ] + }, + "metadata": {}, + "output_type": "display_data" + }, + { + "data": { + "text/html": [ + "\\(\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot a_{1} \\cdot (3 \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} + 4 a_{1} \\nu_{1} + 4 \\nu_{1}^{2})\\)" + ], + "text/latex": [ + "$\\displaystyle \\left(-\\frac{1}{4}\\right) \\cdot \\nu_{1}^{-2} \\cdot (a_{1} - \\nu_{1})^{-2} \\cdot \\mathit{rt}^{-1} \\cdot a_{1} \\cdot (3 \\nu_{1}^{2} \\mathit{cd}^{2} - 2 a_{1}^{2} + 4 a_{1} \\nu_{1} + 4 \\nu_{1}^{2})$" + ], + "text/plain": [ + "(-1/4) * nu1^-2 * (a1 - nu1)^-2 * rt^-1 * a1 * (3*nu1^2*cd^2 - 2*a1^2 + 4*a1*nu1 + 4*nu1^2)" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "cf1a = (prtb * (a1 * t + nu1)^2)(t=-nu1 / a1)\n", + "show(cf1a.factor())\n", + "prtc = prtb - cf1a / (a1 * t + nu1)^2\n", + "cf2a = prtc * (a1 * t + nu1)\n", + "show(cf2a.factor())" + ] + }, + { + "cell_type": "code", + "execution_count": 93, + "id": "5c6d7d36-ca2d-41d1-8272-80908564cbbc", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "0" + ] + }, + "execution_count": 93, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "(cf23a / (t + 1) + cf1a / (a1 * t + nu1)^2 + cf2a / (a1 * t + nu1) - prta)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "632d9fd5-b8a2-4b48-be93-54a23f3418a7", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "SageMath 10.3.rc3", + "language": "sage", + "name": "sagemath-310" + }, + "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": 5 +}