/////////////////////////////////////////////////////////////////////////// // // "An algorithm for determining torsion growth of elliptic curves" // Enrique González-Jiménez & Filip Najman // // Magma script related to Lemma 2.6 CM case // // file: Lemma_2_6CM.txt // /////////////////////////////////////////////////////////////////////////// // 25/3/2019 - Magma 2.24 ////////////////////////////////////////////////////////////////////////// jCM:=[0,1728,2^4*3^3*5^3,2^3*3^3*11^3,-3^3*5^3,3^3*5^3*17^3,2^6*5^3,-2^(15)*3*5^3,-2^(15),-2^(15)*3^3,-2^(18)*3^3*5^3,-2^(15)*3^3*5^3*11^3,-2^(18)*3^3*5^3*23^3*29^3]; D:=6*21; L:=<>; for j in jCM do E:=MinimalQuadraticTwist(EllipticCurveFromjInvariant(j)); fac:=Factorization(DivisionPolynomial(E,81) div DivisionPolynomial(E,27):DegreeLimit:=D); deg81:=[Degree(g[1]): g in fac]; printf "j=%o -- %o\n",j,deg81; L:=Append(L,); end for; assert L eq <<0, []>, <1728, []>, <54000, []>, <287496, []>, <-3375, []>, <16581375, []>, <8000, [ 54, 108 ]>, <-12288000, [ 81 ]>, <-32768, [ 54, 108 ]>, <-884736, []>, <-884736000, []>, <-147197952000, []>, <-262537412640768000, []>>; print "Done"; quit;