# SageMath code for working with modular form 7803.2.a.cd # Compute space of new eigenforms: from sage.modular.dirichlet import DirichletCharacter H = DirichletGroup(7803, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([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(7803, base_ring=CyclotomicField(2)) chi = DirichletCharacter(H, H._module([0, 0])) N = Newforms(chi, 2, names="a") # select newform: traces = [24,0,0,24,-20,0,0,0,0,0,-8,0,4,-16,0,24,0,0,4,-48,0,0,-36,0, 28,0,0,0,-64,0,0,0,0,0,0,0,0,0,0,0,-36,0,4,-16,0,0,0,0,24,0,0,16,0,0,20, -80,0,0,0,0,0,16,0,-24,-72,0,16,0,0,-48,-72,0,0] f = next(g for g in N if [g.coefficient(i+1).trace() for i in range(73)] == traces) # q-expansion: f.q_expansion() # note that sage often uses an isomorphic number field