Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
AndrewVSutherland
GitHub Repository: AndrewVSutherland/lmfdb
Path: blob/main/scripts/belyi/fix-polred-bug.m
1127 views
1
// fixing wrong base field polynomial
2
// currently affecting 8T50-8_4.1.1.1.1_4.4-b and 8T50-8_4.1.1.1.1_6.2-a
3
4
load "8T50-8_4.1.1.1.1_4.4-b.m";
5
AttachSpec("~/github/CHIMP/CHIMP.spec");
6
Kred, mpred:= Polredabs(K);
7
f, _ := HyperellipticPolynomials(X);
8
// make isomorphic curve over polredabs-ed numfield
9
Xred := EllipticCurve(Polynomial([mpred(el) : el in Coefficients(f)]));
10
KXred := FunctionField(Xred);
11
12
// make homomorphism from KX to KXred
13
cf := hom< Kred -> KXred | Kred.1>;
14
KXalg, mp_alg := AlgorithmicFunctionField(KX);
15
Kx := BaseRing(KXalg);
16
//Kx := RationalFunctionField(K);
17
c_final := hom< Kx -> KXred | (mpred*cf), [KXred.1] >;
18
//hom< Kx -> KXred | (iota*cf), [KXred.1] >;
19
20
// final success
21
chg_fld := hom< KXalg -> KXred | c_final, [KXred.2]>;
22
chg_fld(mp_alg(phi));
23
24