// Make newform 6048.2.h.i in Magma, downloaded from the LMFDB on 29 March 2024. // To make the character of type GrpDrchElt, type "MakeCharacter_6048_h();" // To make the Hecke irreducible modular symbols subspace (type ModSym) // containing the newform, type "MakeNewformModSym_6048_2_h_i();". // 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_6048_h();" function MakeCharacter_6048_h() N := 6048; order := 2; char_gens := [4159, 3781, 3809, 2593]; v := [1, 2, 1, 2]; // 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_6048_h_Hecke(Kf) return MakeCharacter_6048_h(); end function; // To make the Hecke irreducible modular symbols subspace (type ModSym) // containing the newform, type "MakeNewformModSym_6048_2_h_i();". // 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_6048_2_h_i( : sign := -1) R := PolynomialRing(Rationals()); chi := MakeCharacter_6048_h(); // SetVerbose("ModularSymbols", true); Snew := NewSubspace(CuspidalSubspace(ModularSymbols(chi,2,sign))); Vf := Kernel([<5,R![576, 0, 2544, 0, 3649, 0, 2004, 0, 422, 0, 36, 0, 1]>,<11,R![1218816, 0, -1016448, 0, 307984, 0, -42880, 0, 2856, 0, -88, 0, 1]>],Snew); return Vf; end function;