Opened 11 years ago
Closed 8 years ago
#11631 closed defect (fixed)
L-series attached to cusp forms are broken
Reported by: | was | Owned by: | was |
---|---|---|---|
Priority: | major | Milestone: | sage-6.4 |
Component: | number theory | Keywords: | |
Cc: | Merged in: | ||
Authors: | Gonzalo Tornaría | Reviewers: | Michael Neururer |
Report Upstream: | N/A | Work issues: | |
Branch: | 1939a9c (Commits, GitHub, GitLab) | Commit: | 1939a9cc8480d42441bb4f71a784ac85e934b80b |
Dependencies: | #16916 | Stopgaps: |
Description (last modified by )
sage: C = CuspForms(43,2) sage: N = C.newforms('a') sage: f = N[1] sage: L = f.cuspform_lseries() Boom!
There are two issues:
(1) the code doesn't work at all when the degree of the form is > 1, which is the main interesting case,
(2) the name "cuspform_lseries" is bad, since f is already a cuspform, and we use the name "lseries" in all other places (e.g., elliptic curves, abelian varieties), so it is hard to find. In fact, I didn't even think to look for cuspform_lseries, instead only finding this via lots of grepping and reading source code.
So to fix this issue, I think (1) the bug should get fixed, and (2) the name should be changed (actually *deprecate* the old name as explained in the developers guide and introduce the name lseries).
See also #12015.
The part about deprecating cuspform_lseries() is moved to #16917.
Change History (14)
comment:1 Changed 11 years ago by
comment:2 Changed 11 years ago by
- Description modified (diff)
comment:3 Changed 9 years ago by
- Milestone changed from sage-5.11 to sage-5.12
comment:4 Changed 8 years ago by
- Milestone changed from sage-6.1 to sage-6.2
comment:5 Changed 8 years ago by
- Milestone changed from sage-6.2 to sage-6.3
comment:6 Changed 8 years ago by
- Milestone changed from sage-6.3 to sage-6.4
comment:7 Changed 8 years ago by
- Branch set to u/tornaria/11631
- Commit set to 1939a9cc8480d42441bb4f71a784ac85e934b80b
- Status changed from new to needs_review
Inspired in the patch at #12015, I added a parameter to cuspform_lseries()
so one can specify which of the conjugates of the newform to use (defaults to 0). The order is arbitrary as it comes from the embeddings()
method for self.base_ring()
.
In the long term #12015 is much more general, but this is a good fix and much easier to review and merge.
New commits:
74b6a67 | Trac #16916: fix precision issues in cuspform_lseries()
|
ae26b4a | Trac #16916: avoid precision issues in cuspform_lseries
|
13dbf33 | remove tabs
|
1939a9c | Trac #11631: fix cuspform_lseries() for non-rational newforms
|
comment:8 Changed 8 years ago by
- Dependencies set to #16916
comment:9 Changed 8 years ago by
Review: This patch allows one to compute with L-functions of non-rational new forms and fixes the first problem mentioned in the description (the one ending with 'Boom!' now produces a real number).
comment:10 Changed 8 years ago by
- Reviewers set to Michael Neururer
comment:11 Changed 8 years ago by
- Description modified (diff)
I moved the part about deprecation to #16917 so the bugfix can be reviewed and merged independently.
comment:12 Changed 8 years ago by
- Status changed from needs_review to positive_review
comment:13 Changed 8 years ago by
comment:14 Changed 8 years ago by
- Branch changed from u/tornaria/11631 to 1939a9cc8480d42441bb4f71a784ac85e934b80b
- Resolution set to fixed
- Status changed from positive_review to closed
I have now written (or am writing) similar (but more powerful) functionality for psage. It'll end up in this directory of psage: psage/lseries/
http://code.google.com/p/purplesage/source/browse/#hg%2Fpsage%2Flseries