# SageMath code for working with modular form 42978.2.a.r # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(42978, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0, 0, 0])) B = ModularForms(chi, 1).cuspidal_submodule().basis() N = [B[i] for i in range(len(B))] # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(42978, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0, 0, 0])) N = Newforms(chi, 2, names="a") # select newform: traces = [1,1,1,1,-4,1,-2,1,1,-4,-3,1,1,-2,-4,1,-7,1,-1,-4,-2,-3,-6,1, 11,1,1,-2,-1,-4,-3,1,-3,-7,8,1,-2,-1,1,-4,-8,-2,-1,-3,-4,-6,-12,1,-3,11, -7,1,-11,1,12,-2,-1,-1,10,-4,7,-3,-2,1,-4,-3,-7,-7,-6,8,-3,1,-1,-2,11, -1,6,1,-10,-4,1,-8,-6,-2,28,-1,-1,-3,0,-4,-2,-6,-3,-12,4,1,-2,-3,-3,11] f = next(g for g in N if [g.coefficient(i+1).trace() for i in range(None)] == traces) # q-expansion: f.q_expansion() # note that sage often uses an isomorphic number field