#8622: Atkin-Lehner operators don't work for odd weight modular forms
-----------------------------+----------------------------------------------
Reporter: davidloeffler | Owner: craigcitro
Type: defect | Status: new
Priority: major | Milestone:
Component: modular forms | Keywords: atkin-lehner
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
-----------------------------+----------------------------------------------
Description changed by davidloeffler:
Old description:
> In ticket #5262 I implemented a method to find the Atkin-Lehner
> eigenvalue of a modular form. Sadly this does not work if the form has
> odd weight:
>
> {{{
> sage: f = Newforms(Gamma1(13),3,names='a')[0]
> sage: f
> q + a0*q^2 + (1/7*a0^3 + 2/7*a0^2 - 3/7*a0 - 27/7)*q^3 + (-8/21*a0^3 -
> 23/21*a0^2 - 88/21*a0 + 16/7)*q^4 + (2/7*a0^3 + 11/7*a0^2 + 29/7*a0 +
> 9/7)*q^5 + O(q^6)
> sage: f.atkin_lehner_eigenvalue()
> ---------------------------------------------------------------------------
> ArithmeticError Traceback (most recent call
> last)
> ...
> ArithmeticError: subspace is not invariant under matrix
> }}}
>
> This comes up because for modular symbols of any odd weight, the Atkin-
> Lehner involution doesn't commute with the star involution and hence
> doesn't restrict to an operator on the plus submodule of the modular
> forms (hence "subspace not invariant under matrix"). In fact they ''anti-
> commute'':
> {{{
> sage: N = f.modular_symbols(sign=0)
> sage: a = N.atkin_lehner_operator(13).matrix()
> sage: b = N.star_involution().matrix()
> sage: a * b * ~a * ~b
> [-1 0 0 0 0 0 0 0]
> [ 0 -1 0 0 0 0 0 0]
> [ 0 0 -1 0 0 0 0 0]
> [ 0 0 0 -1 0 0 0 0]
> [ 0 0 0 0 -1 0 0 0]
> [ 0 0 0 0 0 -1 0 0]
> [ 0 0 0 0 0 0 -1 0]
> [ 0 0 0 0 0 0 0 -1]
> }}}
New description:
In ticket #5262 I implemented a method to find the Atkin-Lehner eigenvalue
of a modular form. Sadly this does not work if the form has odd weight:
{{{
sage: f = Newforms(Gamma1(13),3,names='a')[0]
sage: f
q + a0*q^2 + (1/7*a0^3 + 2/7*a0^2 - 3/7*a0 - 27/7)*q^3 + (-8/21*a0^3 -
23/21*a0^2 - 88/21*a0 + 16/7)*q^4 + (2/7*a0^3 + 11/7*a0^2 + 29/7*a0 +
9/7)*q^5 + O(q^6)
sage: f.atkin_lehner_eigenvalue()
---------------------------------------------------------------------------
ArithmeticError Traceback (most recent call
last)
...
ArithmeticError: subspace is not invariant under matrix
}}}
This comes up because for modular symbols of any odd weight, the Atkin-
Lehner involution doesn't commute with the star involution and hence
doesn't restrict to an operator on the plus submodule of the modular forms
(hence "subspace not invariant under matrix"). In fact they ''anti-
commute'':
{{{
sage: N = f.modular_symbols(sign=0)
sage: a = N.atkin_lehner_operator(13).matrix()
sage: b = N.star_involution().matrix()
sage: a * b * ~a * ~b
[-1 0 0 0 0 0 0 0]
[ 0 -1 0 0 0 0 0 0]
[ 0 0 -1 0 0 0 0 0]
[ 0 0 0 -1 0 0 0 0]
[ 0 0 0 0 -1 0 0 0]
[ 0 0 0 0 0 -1 0 0]
[ 0 0 0 0 0 0 -1 0]
[ 0 0 0 0 0 0 0 -1]
}}}
A morally right fix would probably also allow us to implement pseudo-
eigenvalues for Atkin-Lehner operators when the character is not trivial
or quadratic. See also the [http://groups.google.com/group/sage-
nt/browse_thread/thread/3c7bd65248e3b0c8/f8b9f3595f38788b sage-nt thread].
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8622#comment:1>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.