sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.35k stars 460 forks source link

Dimensions of eigenspaces for the Atkin-Lehner operator acting on modular forms #9455

Open af34da7a-5b1a-45c9-aac1-252621303487 opened 14 years ago

af34da7a-5b1a-45c9-aac1-252621303487 commented 14 years ago

This is a port of David Kohel's MAGMA code to compute dimensions of the eigenspaces for the Atkin-Lehner operators acting on spaces of cusp forms of weight 2 (see here for the original):

http://echidna.maths.usyd.edu.au/echidna/dbs/atkin-lehner/index.html

These methods do not rely on computing explicit bases of newforms, instead using formulae about the ramification points of the Atkin-Lehner operator.

These functions use the class number method qfbclassno() from Pari/GP.

NOTES: the functions for newforms are really slow right now (much slower than MAGMA).

The public methods supplied here are:

def modular_genusX0(self,w):
def atkin_lehner_eigenspace_dimensions(self):
def new_subspace_dimensionX0(self):
def atkin_lehner_new_eigenspace_dimension(self,w):
def old_subspace_dimension(self,M,R,w):
def atkin_lehner_new_eigenspace_dimensions(self):

Is this too many? the most important two are atkin_lehner_eigenspace_dimensions and atkin_lehner_new_eigenspace_dimension as those give the really important data about spaces of modular forms. We could make the others private if we wanted to and not lose (too) much.

Apply attachment: trac_9455_atkin_lehner_dim.patch

CC: @williamstein

Component: modular forms

Keywords: atkin lehner

Author: Lloyd Kilford

Branch/Commit: u/chapoton/9455 @ 05115d1

Issue created by migration from https://trac.sagemath.org/ticket/9455

af34da7a-5b1a-45c9-aac1-252621303487 commented 14 years ago

Code to implement dimensions of Atkin-Lehner eigenspaces for the ModularForms class

af34da7a-5b1a-45c9-aac1-252621303487 commented 14 years ago
comment:2

Attachment: atkin_lehner_decomposition_dimensions.sage.gz

af34da7a-5b1a-45c9-aac1-252621303487 commented 14 years ago

Description changed:

--- 
+++ 
@@ -5,3 +5,16 @@
 These methods do not rely on computing explicit bases of newforms, instead using formulae about the ramification points of the Atkin-Lehner operator. 

 These functions use the class number method qfbclassno() from Pari/GP.
+
+NOTES: the functions for newforms are really slow right now (much slower than MAGMA). 
+
+The public methods supplied here are:
+
+{{{def modular_genusX0(self,w):
+def atkin_lehner_eigenspace_dimensions(self):
+def new_subspace_dimensionX0(self):
+def atkin_lehner_new_eigenspace_dimension(self,w):
+def old_subspace_dimension(self,M,R,w):
+def atkin_lehner_new_eigenspace_dimensions(self):
+}}}
+Is this too many? the most important two are atkin_lehner_eigenspace_dimensions and atkin_lehner_new_eigenspace_dimension as those give the really important data about spaces of modular forms. We could make the others private if we wanted to and not lose (too) much.
fchapoton commented 11 years ago

Description changed:

--- 
+++ 
@@ -10,11 +10,12 @@

 The public methods supplied here are:

-{{{def modular_genusX0(self,w):
+```
+def modular_genusX0(self,w):
 def atkin_lehner_eigenspace_dimensions(self):
 def new_subspace_dimensionX0(self):
 def atkin_lehner_new_eigenspace_dimension(self,w):
 def old_subspace_dimension(self,M,R,w):
 def atkin_lehner_new_eigenspace_dimensions(self):
-}}}
+```
 Is this too many? the most important two are atkin_lehner_eigenspace_dimensions and atkin_lehner_new_eigenspace_dimension as those give the really important data about spaces of modular forms. We could make the others private if we wanted to and not lose (too) much.
fchapoton commented 11 years ago
comment:6

Attachment: trac_9455_atkin_lehner_dim.patch.gz

I have tried to maker a clean patch starting with the given file

Some doctests are still failing.

for the bot: apply only trac_9455_atkin_lehner_dim.patch​

fchapoton commented 11 years ago

Changed keywords from none to atkin lehner

fchapoton commented 11 years ago

Description changed:

--- 
+++ 
@@ -19,3 +19,5 @@
 def atkin_lehner_new_eigenspace_dimensions(self):

Is this too many? the most important two are atkin_lehner_eigenspace_dimensions and atkin_lehner_new_eigenspace_dimension as those give the really important data about spaces of modular forms. We could make the others private if we wanted to and not lose (too) much. + +Apply attachment: trac_9455_atkin_lehner_dim.patch

fchapoton commented 10 years ago

New commits:

743dc9btrac 9455 dimensions of eigenspaces of Atkin Lehner operators
fchapoton commented 10 years ago

Branch: u/chapoton/9455

fchapoton commented 10 years ago

Commit: 743dc9b

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 743dc9b to 23a1cff

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

febd6dcMerge branch 'u/chapoton/9455' of trac.sagemath.org:sage into 9455
23a1cfftrac #9455 pep8 cosmetic cleanup
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

5d01fc3Merge branch 'u/chapoton/9455' into 6.5
758f137trac #9455 make it work at last
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 23a1cff to 758f137

fchapoton commented 9 years ago
comment:14

Now all tests pass. But maybe this is too slow.

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

6a1a30aMerge branch 'u/chapoton/9455' into 6.6.b0
7fa13e9trac #9455 details of doc
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 758f137 to 7fa13e9

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

3efd2a1trac #9455 a method in orders
adf5f43trac #9455 Dimensions of eigenspaces for the Atkin-Lehner ops
929a08atrac #9455 enhancements
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 7fa13e9 to 929a08a

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 929a08a to 1736e94

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

1736e94trac #9455 faster using libgap
fchapoton commented 9 years ago

Changed author from ljpk to L. J. P. Kilford

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

311782ftrac #9455 fine tuning in order.py
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 1736e94 to 311782f

fchapoton commented 9 years ago

Changed author from L. J. P. Kilford to Lloyd Kilford

11d1fc49-71a1-44e1-869f-76be013245a0 commented 8 years ago
comment:25

This needs some serious work.

 sage: ModularForms(1000003, 4).atkin_lehner_eigenspace_dimensions()

and it will silently return wrong output. More importantly, lots of these methods (e.g. atkin_lehner_ramification) are computing geometric properties of the underlying modular curves, so they belong in sage.modular.arithgroup.congroup_gamma0. Similarly, "primitive_ideal_number" should probably be a method of order objects, not a standalone function.

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 311782f to d984ba4

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

d984ba4Merge branch 'u/chapoton/9455' into 7.1.b5
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from d984ba4 to 4ee1f8d

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

0ad710bMerge branch 'u/chapoton/9455' into 7.2.b4
4ee1f8dtrac 9455 fixing imports of gcd and factor
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 4ee1f8d to 81c4d3a

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

81c4d3aMerge branch 'u/chapoton/9455' in 7.3.rc0
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 81c4d3a to f045a29

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

1e3ce62Merge branch 'u/chapoton/9455' in 7.6.b5
f045a29trac 9455 py3 print
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 6 years ago

Branch pushed to git repo; I updated commit sha1. New commits:

05115d1Merge branch 'u/chapoton/9455' in 8.2.b8
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 6 years ago

Changed commit from f045a29 to 05115d1