{ "cells": [ { "cell_type": "code", "execution_count": 84, "id": "46be1ee8-65c3-46fc-b045-33f4de5f7f61", "metadata": {}, "outputs": [], "source": [ "n=6\n", "g=(n-1)*(n-2)/2;\n", "K=CyclotomicField(2*n)\n", "z=K.gen()\n", "zn=z^2\n", "PP.=PolynomialRing(K)" ] }, { "cell_type": "code", "execution_count": 85, "id": "56307de0-af9e-45f7-b49e-2143f0c8e41c", "metadata": {}, "outputs": [], "source": [ "def IMod(a,b):\n", " ypol=a-b*floor(a/b)\n", " return ypol\n", "def rat(x):\n", " return numerator(x)/denominator(x)" ] }, { "cell_type": "code", "execution_count": 86, "id": "3e0f8e33-a387-4161-bd0a-d2656c740f10", "metadata": {}, "outputs": [], "source": [ "def polynom(V,Q,ka,la,nu,rho):\n", " if not(3.divides(n)) and nu > 0:\n", " print(\"3 does not divide\",n, \" and nu=\",nu)\n", " return \"ERROR\"\n", " print(\"XXXXXXXXXX\",V,Q,ka,la,nu,rho)\n", " if Q == 0:\n", " ex=IMod( nu*n/3,n) \n", " if V == 1:\n", " if rho == \"triv\" and nu==0: \n", " poly=1\n", " if rho == \"sgn\" and nu==0:\n", " poly=T^n\n", " if rho == \"triv\" and nu==1: \n", " poly= T^(4*n/3)\n", " if rho == \"sgn\" and nu==1:\n", " poly=T^(n/3)\n", " if rho == \"triv\" and nu==2: \n", " poly= T^(2*n/3)\n", " if rho == \"sgn\" and nu==2:\n", " poly=T^(5*n/3)\n", " # print(\"--\",poly)\n", " return poly \n", " \n", " if V == 2:\n", " poly=T^(nu*n/3)+T^(n+nu*n/3)\n", " # print(poly)\n", " return poly\n", " \n", " \n", " if V == 3:\n", " if rho == \"triv\":\n", " poly=T^ka+T^(n+ka)+T^(IMod(-2*ka,2*n))\n", " if rho == \"sgn\":\n", " # if ka <=floor(n/2):\n", " # poly=T^ka+T^(n+ka)+T^(n-2*ka)\n", " # if ka >=ceil(n/2):\n", " # poly=T^ka+T^(n+ka)+T^(3*n-2*k)\n", " poly=T^ka+T^(ka+n)+T^(IMod(-2*ka+n,2*n))\n", " return poly\n", " \n", " if V == 6:\n", " ee=IMod(-(ka+la),n)\n", " poly=T^ka+T^la+T^(n+ka)+T^(n+la)+T^ee+T^(ee+n)\n", " # if ka+la <=floor(n/2):\n", " # poly=T^ka+T^la+T^(n+ka)+T^(n+la)+T^(2*n-(ka+la))+T^(n-(ka+la))\n", " # if ka+la >=ceil(n/2):\n", " # poly=T^ka+T^la+T^(n+ka)+T^(n+la)+T^(2*n-(ka+la))+T^(3*n-(ka+la))\n", " return poly\n", " \n", " if Q == 1:\n", " if V == 1 and rho == \"sgn\":\n", " poly=T\n", " return poly\n", " if V == 1 and rho == \"triv\":\n", " poly=1\n", " return poly\n", " \n", " if V == 2:\n", " poly=1+T\n", " return poly\n", " \n", " if V == 3 and rho == \"sgn\":\n", " poly=1+2*T\n", " return poly\n", " if V == 3 and rho == \"triv\":\n", " poly=2+T\n", " return poly\n", " \n", " if V == 6:\n", " poly=3+3*T\n", " \n", " if Q == 2:\n", " \n", " pp=T^IMod(nu,3)\n", " \n", " if V == 1:\n", " poly=pp\n", " # poly=T^3\n", "\n", " if V == 2:\n", " poly=1+T+T^2 -pp\n", "\n", " if V == 3:\n", " poly=1+T+T^2\n", " # poly=T^3+T+T^2\n", "\n", " if V == 6:\n", " poly=2*(1+T+T^2)\n", " # poly=2*(T^3+T+T^2)\n", " \n", " \n", " return poly" ] }, { "cell_type": "code", "execution_count": 91, "id": "c4757fb9-4da2-44f6-8b82-0f485612c314", "metadata": {}, "outputs": [], "source": [ "def Hgen(V,ka,la,nu,rho):\n", " pol0=polynom(V,0,ka,la,nu,rho)\n", " pol1=polynom(V,1,ka,la,nu,rho)\n", " pol2=polynom(V,2,ka,la,nu,rho)\n", " # print(\"V=\",V,\"ka=\",ka,\"la=\",la,\"nu=\",nu,\"rho=\",rho)\n", " # print(\" pol0=\",pol0)\n", " # print(\" pol1=\",pol1)\n", " # print(\" pol2=\",pol2)\n", " Dpol0=derivative(pol0,T)\n", " Dpol1=derivative(pol1,T)\n", " Dpol2=derivative(pol2,T)\n", "\n", " sumD=Dpol0(T=1)/(2*n) + Dpol1(T=1)/2 + Dpol2(T=1)/3\n", " # print(\" sumD=\",sumD)\n", "\n", " sum1=pol0/(1-T^(2*n))+pol1/(1-T^2)+pol2/(1-T^3)\n", "\n", " # print(sum)\n", " H=V/(1-T)^2 -sumD/(1-T)-T*sum1/(1-T)\n", " H=numerator(H)/denominator(H)\n", " return H\n", " " ] }, { "cell_type": "code", "execution_count": 161, "id": "15c31048-e2c4-426f-b483-01c8b780cec5", "metadata": {}, "outputs": [], "source": [ "# Costructing the indices of a basis of holomorphic 1-differentials\n", "L=[] \n", "for i in range(n-3+1):\n", " for j in range(n-3-i+1):\n", " L.append([i,j])\n", "Ls=[]\n", "for el in L:\n", " Ls.append([n-3-el[0]-el[1],el[0]])\n", "# create the matrix for the action on s\n", "M=matrix(g)\n", "for j in range(g):\n", " for i in range(g):\n", " if L[j] == Ls[i]:\n", " # print(i,j)\n", " M[i,j]=1\n", "Lts=[]\n", "for el in L:\n", " Lts.append([el[1],el[0]])\n", "N=matrix(g)\n", "for j in range(g):\n", " for i in range(g):\n", " if L[j] == Lts[i]:\n", " # print(i,j)\n", " N[i,j]=1\n", "\n", "M=M.transpose()\n", "N=N.transpose()\n", "#-----acting on bases so need to take transpose, it makes a difference on multiplication \n", "\n", "# S3=[[M,\"s\"],[M^2,\"s^2\"],[M^3,\"id\"],[N,\"ts\"],[M*N,\"st\"],[N*M,\"t\"]]\n", "\n", "# S3=[[M,\"s\"],[M^2,\"s^2\"],[M^3,\"id\"],[N,\"ts\"],[M*N,\"st\"],[N*M,\"t\"]]\n", "# S3=[[M,\"s^2\"],[M^2,\"s\"],[M^3,\"id\"],[N,\"ts\"],[M*N,\"st\"],[N*M,\"t\"]]\n", "S3=[[M,\"s\"],[M^2,\"s^2\"],[M^3,\"id\"],[N,\"ts\"],[M*N,\"t\"],[N*M,\"st\"]] # <---\n", "\n", "\n", "Dlist=[]\n", "for k in range(n):\n", " for l in range(n):\n", " C=matrix(K,g)\n", " for i in range(g):\n", " el=L[i]\n", " C[i,i]=zn^(k*(el[0]+1)+l*(el[1]+1))\n", " C=C.transpose()\n", " Dlist.append([k,l,C])\n", " # print(C)\n", "\n", " \n", "G=[]\n", "for i in Dlist:\n", " for s in S3:\n", " # print(i[2]*s)\n", " # print(\"------------\")\n", " G.append([s[0]*i[2],i[0],i[1],s[1]])\n", " # In first position is the matrix, then k,l,string determining the element of S_3\n", "\n", "def chara(gg,V,ka,la,nu,rho):\n", " if rho==\"triv\":\n", " if V==1:\n", " ch=zn^(nu*n/3*(gg[1]+gg[2]))\n", " return ch\n", " if V==3:\n", " if gg[3]==\"id\":\n", " ch=zn^(ka*(gg[1]+gg[2]))+zn^(ka*(gg[1]-2*gg[2]))+zn^(ka*(gg[2]-2*gg[1]))\n", " return ch\n", " if gg[3]==\"ts\":\n", " ch=zn^(ka*(gg[1]+gg[2]))\n", " return ch\n", " if gg[3]==\"st\":\n", " ch=zn^(ka*(gg[2]-2*gg[1]))\n", " return ch\n", " if gg[3]==\"t\":\n", " ch=zn^(ka*(gg[1]-2*gg[2]))\n", " return ch \n", " if gg[3]==\"s\" or gg[3]==\"s^2\":\n", " ch=0\n", " return ch\n", " if V==6:\n", " if gg[3]==\"id\":\n", " ch=zn^(ka*gg[1]+la*gg[2])+zn^(-(ka+la)*gg[1]+ka*gg[2])+zn^(la*gg[1]-(ka+la)*gg[2])+zn^(la*gg[1]+ka*gg[2])+zn^(-(ka+la)*gg[1]+la*gg[2])+zn^(ka*gg[1]-(ka+la)*gg[2])\n", " return ch\n", " else:\n", " return 0\n", " if rho==\"sgn\":\n", " if V==1:\n", " # print(\"gg[3]=\",gg[3])\n", " if gg[3]==\"id\" or gg[3]==\"s\" or gg[3]==\"s^2\":\n", " ch=zn^(nu*n/3*(gg[1]+gg[2]))\n", " if gg[3]==\"t\" or gg[3]==\"ts\" or gg[3]==\"st\":\n", " ch=-zn^(nu*n/3*(gg[1]+gg[2]))\n", " return ch\n", " if V==3:\n", " if gg[3]==\"id\":\n", " ch=zn^(ka*(gg[1]+gg[2]))+zn^(ka*(gg[1]-2*gg[2]))+zn^(ka*(gg[2]-2*gg[1]))\n", " return ch\n", " if gg[3]==\"ts\":\n", " ch=-zn^(ka*(gg[1]+gg[2]))\n", " return ch\n", " if gg[3]==\"st\":\n", " ch=-zn^(ka*(gg[2]-2*gg[1]))\n", " return ch\n", " if gg[3]==\"t\":\n", " ch=-zn^(ka*(gg[1]-2*gg[2]))\n", " return ch \n", " if gg[3]==\"s\" or gg[3]==\"s^2\":\n", " ch=0\n", " return ch\n", " if rho==\"stan\":\n", " if gg[3]==\"id\":\n", " cc=2\n", " if gg[3]==\"ts\":\n", " cc=0\n", " if gg[3]==\"t\":\n", " cc=0\n", " if gg[3]==\"st\":\n", " cc=0 \n", " if gg[3]==\"s\" or gg[3]==\"s^2\":\n", " cc=-1\n", " ch=zn^(nu*n/3*(gg[1]+gg[2]))*cc\n", " return ch\n", "\n", "def MolienF(V,ka,la,nu,rho):\n", " sum=0\n", " I=matrix.identity(K,g)\n", " for gg in G:\n", " de=(I-T*gg[0]).determinant()\n", " sum=sum+chara(gg,V,ka,la,nu,rho).conjugate()/de\n", " # sum=sum+chara(gg,V,ka,la,nu,rho)/de\n", " # detList.append(de)\n", " F=1/(6*n^2)*sum\n", " # print(F)\n", " # print(\"-------\")\n", " # print(SR(F).series(T))\n", " return [F,SR(F).series(T)]\n", "\n" ] }, { "cell_type": "code", "execution_count": 141, "id": "3494925f-a315-4701-bbfe-1761b21f066f", "metadata": {}, "outputs": [], "source": [ "def reverse(nu,rho):\n", " if nu !=0 or V==3:\n", " if rho== \"triv\":\n", " rr=\"sgn\"\n", " if rho== \"sgn\":\n", " rr=\"triv\"\n", " if rho == \"stan\":\n", " rr=\"stan\"\n", " else:\n", " rr=rho\n", " return rr" ] }, { "cell_type": "code", "execution_count": 162, "id": "66989088-4c03-4c28-ba0c-92d0f8695015", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "V= 1 ka= 0 la= 0 nu= 0 rho= triv\n", " HH= (T^8 - T^7 + T^6 + T^2 - 2*T + 1)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^14 - T^13 + T^8 - T^7 + T^6 - T + 1)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 1 ka= 0 la= 0 nu= 1 rho= triv\n", " HH= (T^12 - T^11 + T^10 - T^9 + T^6 - T^5 + T^4)/((T^12 - 1)*(T - 1))\n", "MMdual= 0\n", "HHc= (T^12 - T^11 + T^10 - T^9 + T^6 - T^5 + T^4)/((T^12 - 1)*(T - 1))\n", "---------------------------------------------------------------------------\n", "V= 1 ka= 0 la= 0 nu= 2 rho= triv\n", " HH= (T^10 - T^9 + T^8 - T^5 + T^4 - T^3 + T^2)/((T^12 - 1)*(T - 1))\n", "MMdual= 0\n", "HHc= (T^10 - T^9 + T^8 - T^5 + T^4 - T^3 + T^2)/((T^12 - 1)*(T - 1))\n", "---------------------------------------------------------------------------\n", "V= 1 ka= 0 la= 0 nu= 0 rho= sgn\n", " HH= (T^11 - T^10 + T^9 - T^7 + T^5 - T^4 + T^3)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^11 - T^10 + T^9 - T^7 + T^5 - T^4 + T^3)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 1 ka= 0 la= 0 nu= 1 rho= sgn\n", " HH= (T^9 - T^8 + T^7 - T^2 + T)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^9 - T^8 + T^7 - T^2 + T)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 1 ka= 0 la= 0 nu= 2 rho= sgn\n", " HH= (T^7 - T^6 + T^5 + T - 1)/(T^13 - T^12 - T + 1)\n", "MMdual= 1\n", "HHc= (T^13 - T^12 + T^7 - T^6 + T^5)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 2 ka= 0 la= 0 nu= 0 rho= stan\n", " HH= T^4/(T^7 - T^6 - T + 1)\n", "MMdual= 0\n", "HHc= T^4/(T^7 - T^6 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 2 ka= 0 la= 0 nu= 1 rho= stan\n", " HH= (T^5 - T^3 + T^2)/(T^7 - T^6 - T + 1)\n", "MMdual= 0\n", "HHc= (T^5 - T^3 + T^2)/(T^7 - T^6 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 2 ka= 0 la= 0 nu= 2 rho= stan\n", " HH= (T^6 - T^5 + T^3)/(T^7 - T^6 - T + 1)\n", "MMdual= 0\n", "HHc= (T^6 - T^5 + T^3)/(T^7 - T^6 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 3 ka= 3 la= 3 nu= 0 rho= triv\n", " HH= (T^12 + T^8 - T^7 + T^6 + T^2)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^12 + T^8 - T^7 + T^6 + T^2)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 3 ka= 1 la= 1 nu= 0 rho= triv\n", " HH= (T^12 - T^11 + T^10 + T^6 + T^4)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^12 - T^11 + T^10 + T^6 + T^4)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 3 ka= 5 la= 5 nu= 0 rho= triv\n", " HH= (T^10 + T^8 + T^4 - T^3 + T^2)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^10 + T^8 + T^4 - T^3 + T^2)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 3 ka= 3 la= 3 nu= 0 rho= sgn\n", " HH= (T^11 - T^10 + T^9 + T^7 + T^5 - T^4 + T^3)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^11 - T^10 + T^9 + T^7 + T^5 - T^4 + T^3)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 3 ka= 1 la= 1 nu= 0 rho= sgn\n", " HH= (T^11 + T^9 - T^8 + T^7 + T^3 - T^2 + T)/(T^13 - T^12 - T + 1)\n", "MMdual= 0\n", "HHc= (T^11 + T^9 - T^8 + T^7 + T^3 - T^2 + T)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 3 ka= 5 la= 5 nu= 0 rho= sgn\n", " HH= (T^11 + T^7 - T^6 + T^5 + T^3 + T - 1)/(T^13 - T^12 - T + 1)\n", "MMdual= 1\n", "HHc= (T^13 - T^12 + T^11 + T^7 - T^6 + T^5 + T^3)/(T^13 - T^12 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 6 ka= 0 la= 1 nu= 0 rho= triv\n", " HH= T^3/(T^5 - 2*T^4 + T^3 + T^2 - 2*T + 1)\n", "MMdual= 0\n", "HHc= T^3/(T^5 - 2*T^4 + T^3 + T^2 - 2*T + 1)\n", "---------------------------------------------------------------------------\n", "V= 6 ka= 0 la= 2 nu= 0 rho= triv\n", " HH= T^2/(T^3 - T^2 - T + 1)\n", "MMdual= 0\n", "HHc= T^2/(T^3 - T^2 - T + 1)\n", "---------------------------------------------------------------------------\n", "V= 6 ka= 1 la= 2 nu= 0 rho= triv\n", " HH= (T^4 - T^2 + T)/(T^5 - 2*T^4 + T^3 + T^2 - 2*T + 1)\n", "MMdual= 0\n", "HHc= (T^4 - T^2 + T)/(T^5 - 2*T^4 + T^3 + T^2 - 2*T + 1)\n", "---------------------------------------------------------------------------\n", "V= 6 ka= 3 la= 4 nu= 0 rho= triv\n", " HH= (T^4 - T^3 + 2*T - 1)/(T^5 - 2*T^4 + T^3 + T^2 - 2*T + 1)\n", "MMdual= 1\n", "HHc= (T^5 - T^4 + T^2)/(T^5 - 2*T^4 + T^3 + T^2 - 2*T + 1)\n", "---------------------------------------------------------------------------\n" ] } ], "source": [ "repList=[\n", " [1,0,0,0,\"triv\"],\n", " [1,0,0,1,\"triv\"],\n", " [1,0,0,2,\"triv\"],\n", " [1,0,0,0,\"sgn\"],\n", " [1,0,0,1,\"sgn\"],\n", " [1,0,0,2,\"sgn\"],\n", " [2,0,0,0,\"stan\"],\n", " [2,0,0,1,\"stan\"],\n", " [2,0,0,2,\"stan\"],\n", " [3,3,3,0,\"triv\"],\n", " [3,1,1,0,\"triv\"],\n", " [3,5,5,0,\"triv\"],\n", " [3,3,3,0,\"sgn\"],\n", " [3,1,1,0,\"sgn\"],\n", " [3,5,5,0,\"sgn\"],\n", " [6,0,1,0,\"triv\"],\n", " [6,0,2,0,\"triv\"],\n", " [6,1,2,0,\"triv\"],\n", " [6,3,4,0,\"triv\"]]\n", "sum=0\n", "Msum=0\n", "for el in repList:\n", " V=el[0]\n", " ka=el[1]\n", " la=el[2]\n", " nu=el[3]\n", " rho=el[4]\n", " HH=Hgen(V,ka,la,nu,rho)\n", " # print(\"V=\",V,\"ka=\",ka,\"la=\",la,\"nu=\",nu,\"rho=\",rho)\n", " # print(\" HH= \",SR(HH).series(T))\n", " \n", " HHor=HH\n", " \n", " \n", " rr=reverse(nu,rho)\n", " \n", " Moli=MolienF(V,-ka,-la,-nu,rr)\n", " \n", " MM=Moli[1].coefficients()[1][0]\n", " # MM0=MolienF(V,ka,la,nu,rho)[1].coefficients()[1][0]\n", " if el==[1,0,0,0,\"triv\"]:\n", " HH=HH+T\n", " HHc=rat(HH+MM)\n", " \n", " if V == 1 or V==2:\n", " kk=n/3*nu\n", " ll=kk\n", " else:\n", " kk=ka\n", " ll=la\n", " \n", " # #------Uncoment for Latex output-----------\n", " # # print(latex(rat(HHor)), \" & \", latex(rat(HH)), \" & \", latex(rat(Moli[0])), \" & \", latex(rat(HH-Moli[0])), \"EOL\")\n", " # print( V , \" & \", kk , \" & \", ll, \" & RRho_{\\mathrm{\", rho , \"}} & \" , latex(rat(HHor)), \" & \", latex(rat(HHc)), \"EOL\")\n", " # # print(\"\\hline\")\n", " # #------------------------------------------\n", " \n", " #-----------Uncomment for screen printing\n", " print(\"V=\",V,\"ka=\",ka,\"la=\",la,\"nu=\",nu,\"rho=\",rho)\n", " print(\" HH= \",HHor)\n", " print(\"MMdual=\",MM)\n", " print(\"HHc=\",HHc)\n", "\n", " print(\"---------------------------------------------------------------------------\")\n", " #-----------\n", "\n", " sum=sum+V*(HHc)" ] }, { "cell_type": "code", "execution_count": 144, "id": "36daa113-4146-4b49-a376-f4db2a7a7dbe", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(T^3 + 8*T^2 + 8*T + 1)/(T^2 - 2*T + 1)" ] }, "execution_count": 144, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rat(sum)" ] }, { "cell_type": "code", "execution_count": null, "id": "e911a327-5545-4b2e-ac15-71e9c9ec3f07", "metadata": {}, "outputs": [], "source": [ "Mollie" ] }, { "cell_type": "code", "execution_count": 146, "id": "5c5c6a41-e027-41d4-b0ce-6eff647969ad", "metadata": {}, "outputs": [], "source": [ "Moli=MolienF(6,0,1,0,\"triv\")\n", " " ] }, { "cell_type": "code", "execution_count": 149, "id": "9e3d0ec4-b733-44b9-bf3b-05587dc05fc5", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "\\frac{3 T^{18} - 8 T^{17} + 3 T^{16} + 45 T^{15} - 76 T^{14} + 7 T^{13} + 134 T^{12} - 90 T^{11} - 103 T^{10} + 195 T^{9} - 44 T^{8} - 76 T^{7} + 58 T^{6} + 14 T^{5} - 23 T^{4} + 9 T^{3}}{T^{30} - 5 T^{29} + 8 T^{28} + T^{27} - 19 T^{26} + 22 T^{25} - 3 T^{24} - 7 T^{23} - 5 T^{22} - 4 T^{21} + 49 T^{20} - 61 T^{19} + 2 T^{18} + 51 T^{17} - 33 T^{16} + 6 T^{15} - 33 T^{14} + 51 T^{13} + 2 T^{12} - 61 T^{11} + 49 T^{10} - 4 T^{9} - 5 T^{8} - 7 T^{7} - 3 T^{6} + 22 T^{5} - 19 T^{4} + T^{3} + 8 T^{2} - 5 T + 1}" ] }, "execution_count": 149, "metadata": {}, "output_type": "execute_result" } ], "source": [ "latex(rat(Moli[0]))" ] }, { "cell_type": "code", "execution_count": 150, "id": "79ca94b8-4abb-4960-ad32-7fa4763c4902", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "9 T^{3} + 22 T^{4} + 52 T^{5} + 133 T^{6} + 322 T^{7} + 670 T^{8} + 1367 T^{9} + 2562 T^{10} + 4661 T^{11} + 8131 T^{12} + 13849 T^{13} + 22672 T^{14} + 36386 T^{15} + 56700 T^{16} + 86819 T^{17} + 130066 T^{18} + 191986 T^{19} + \\mathcal{O}\\left(T^{20}\\right)" ] }, "execution_count": 150, "metadata": {}, "output_type": "execute_result" } ], "source": [ "latex(Moli[1])" ] }, { "cell_type": "code", "execution_count": 151, "id": "b13da049-7ff6-4bad-8440-c82475267130", "metadata": {}, "outputs": [], "source": [ "FFF=T^3/(T^5 - 2*T^4 + T^3 + T^2 - 2*T + 1)" ] }, { "cell_type": "code", "execution_count": 157, "id": "9aa11346-7506-4c80-a340-94d24a6f4c6e", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "8 T^{3} + 20 T^{4} + 49 T^{5} + 130 T^{6} + 319 T^{7} + 667 T^{8} + 1363 T^{9} + 2557 T^{10} + 4655 T^{11} + 8125 T^{12} + 13843 T^{13} + 22666 T^{14} + 36379 T^{15} + 56692 T^{16} + 86810 T^{17} + 130057 T^{18} + 191977 T^{19} + \\mathcal{O}\\left(T^{20}\\right)" ] }, "execution_count": 157, "metadata": {}, "output_type": "execute_result" } ], "source": [ "latex(SR(Moli[0]-FFF).series(T))" ] }, { "cell_type": "code", "execution_count": null, "id": "fdbcf2e8-423e-4be3-bd95-cc05281f7836", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "SageMath 9.5", "language": "sage", "name": "sagemath" }, "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.8.12" } }, "nbformat": 4, "nbformat_minor": 5 }