// Make newform 1003.2.a.j in Magma, downloaded from the LMFDB on 29 March 2024. // To make the character of type GrpDrchElt, type "MakeCharacter_1003_a();" // To make the Hecke irreducible modular symbols subspace (type ModSym) // containing the newform, type "MakeNewformModSym_1003_2_a_j();". // This may take a long time! To see verbose output, uncomment the SetVerbose line below. // The default sign is -1. You can change this with the optional parameter "sign". // To make the character of type GrpDrchElt, type "MakeCharacter_1003_a();" function MakeCharacter_1003_a() N := 1003; order := 1; char_gens := [768, 120]; v := [1, 1]; // chi(gens[i]) = zeta^v[i] assert UnitGenerators(DirichletGroup(N)) eq char_gens; F := CyclotomicField(order); chi := DirichletCharacterFromValuesOnUnitGenerators(DirichletGroup(N,F),[F|F.1^e:e in v]); return MinimalBaseRingCharacter(chi); end function; function MakeCharacter_1003_a_Hecke(Kf) return MakeCharacter_1003_a(); end function; // To make the Hecke irreducible modular symbols subspace (type ModSym) // containing the newform, type "MakeNewformModSym_1003_2_a_j();". // This may take a long time! To see verbose output, uncomment the SetVerbose line below. // The default sign is -1. You can change this with the optional parameter "sign". function MakeNewformModSym_1003_2_a_j( : sign := -1) R := PolynomialRing(Rationals()); chi := MakeCharacter_1003_a(); // SetVerbose("ModularSymbols", true); Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,2,sign))); Vf := Kernel([<2,R![12, 540, -4430, 5113, 27259, -46548, -66881, 115125, 81634, -138076, -53292, 94814, 18176, -39728, -2353, 10298, -371, -1607, 171, 138, -22, -5, 1]>,<3,R![-128, 1472, 49984, 292480, 324016, -768268, -1052280, 971082, 1209743, -787756, -712621, 425192, 232957, -147389, -41051, 31442, 3122, -3924, 65, 260, -24, -7, 1]>],Snew); return Vf; end function;