Open alexjbest opened 5 years ago
The mathematical difficulty is virtually nil; the problem is one of designing a consistent interface.
The problem is that Sage's "newforms" were originally intended to represent simple (not absolutely simple!) factors of the new part of the Hecke algebra over Q, or Q(chi) where chi is the character. So the Galois action is by definition trivial, at least if chi is Q-valued.
Some of the more recent functionality, e.g. L-functions and Atkin--Lehner eigenvalues, blurs these distinctions by choosing -- or allowing the user to choose -- embeddings into C and then computing things that really depend on that embedding; but this is done in a rather inconsistent ad-hoc way, and this has led to some genuine bugs e.g. #18672.
If we were re-designing Sage from scratch, I'd be in favour of changing the Newform
class, and the Newforms(N, k, chi)
constructor function, so a Newform always comes with a specified embedding into C, and Newforms
returns all newforms, not just one from every Galois orbit. This is how Magma behaves. However, making Sage do this would be a huge backward-incompatible change, breaking virtually every piece of code that uses Sage modular forms, so I don't know if it'd be a good idea to make the change now.
(Your example is actually a bit misleading because the coefficient field of your form is the same as the coefficient field of its character, which does come with a specified embedding into C, so the Sage object "f" represents a uniquely determined element of C[[q]]
and sigma(f) is well-defined. But this is a pretty unusual case.)
Would be nice if something like this could be made to work out of the box, unsure as to difficulty
Component: modular forms
Keywords: galois
Issue created by migration from https://trac.sagemath.org/ticket/26157