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:

Status badges

Description (last modified by tornaria)

sage: C = CuspForms(43,2)
sage: N = C.newforms('a')
sage: f = N[1]
sage: L = f.cuspform_lseries()

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 was

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/

comment:2 Changed 11 years ago by was

  • Description modified (diff)

comment:3 Changed 9 years ago by jdemeyer

  • Milestone changed from sage-5.11 to sage-5.12

comment:4 Changed 8 years ago by vbraun_spam

  • Milestone changed from sage-6.1 to sage-6.2

comment:5 Changed 8 years ago by vbraun_spam

  • Milestone changed from sage-6.2 to sage-6.3

comment:6 Changed 8 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4

comment:7 Changed 8 years ago by tornaria

  • Authors set to tornaria
  • 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:

74b6a67Trac #16916: fix precision issues in cuspform_lseries()
ae26b4aTrac #16916: avoid precision issues in cuspform_lseries
13dbf33remove tabs
1939a9cTrac #11631: fix cuspform_lseries() for non-rational newforms

comment:8 Changed 8 years ago by tornaria

  • Dependencies set to #16916

comment:9 Changed 8 years ago by mneururer

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).

Version 0, edited 8 years ago by mneururer (next)

comment:10 Changed 8 years ago by mneururer

  • Reviewers set to Michael Neururer

comment:11 Changed 8 years ago by tornaria

  • 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 mneururer

  • Status changed from needs_review to positive_review

comment:13 Changed 8 years ago by tornaria

  • Authors changed from tornaria to Gonzalo Tornaría

comment:14 Changed 8 years ago by vbraun

  • Branch changed from u/tornaria/11631 to 1939a9cc8480d42441bb4f71a784ac85e934b80b
  • Resolution set to fixed
  • Status changed from positive_review to closed
Note: See TracTickets for help on using tickets.