sagemath / sage

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

Rankin Cohen brackets for (quasi) modular forms for Hecke triangle groups #17909

Open a1dd0ea6-9300-4f97-bb3c-0f25ba420caf opened 9 years ago

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 9 years ago

This ticket adds support for Rankin Cohen brackets for (quasi) modular forms:

The ticket also adds support for listing the homogeneous and quasi parts of an element and fixes some bugs.

CC: @sagetrac-mraum @videlec @JohnCremona

Component: modular forms

Keywords: modular forms hecke triangle groups rankin cohen bracket

Author: Jonas Jermann

Branch/Commit: u/jj/rankin_cohen_bracket @ 2de1a1b

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

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

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

fd1edffadd missing doctests and documentation
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from bf89241 to fd1edff

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 9 years ago

Description changed:

--- 
+++ 
@@ -1,4 +1,4 @@
-This ticket (will) add support for Rankin Cohen brackets for (quasi) modular forms.
+This ticket adds support for Rankin Cohen brackets for (quasi) modular forms.
 The formulas shouldn't changefor Hecke triangle groups.

 See:
@@ -6,10 +6,9 @@
 - http://arxiv.org/abs/math/0509653
 - http://arxiv.org/abs/1306.3634v2

-Todo:
-- Check more general analytic types (quasi weak/meromorphic forms)
-- Add validation of parameters (s,t)
-- Explore the algebraic nature of the bracket:
-  If s or t is None the bracket is no longer bilinear but it satisfy a Leibnitz rule
-- More documentation and tests
+Possible Todos:
+- Review the definition for more general analytic types (quasi weak/meromorphic forms)
+- Restrict/validate the parameters s, t
+- Review the algebraic structure of the bracket:
+  If s or t is None the bracket is no longer bilinear but it satisfy a Leibnitz rule?
 - Explore alternative brackets
a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 9 years ago

Description changed:

--- 
+++ 
@@ -1,5 +1,7 @@
 This ticket adds support for Rankin Cohen brackets for (quasi) modular forms.
 The formulas shouldn't changefor Hecke triangle groups.
+
+The ticket also adds support for listing the homogeneous and quasi parts of an element.

 See:

@@ -12,3 +14,4 @@
 - Review the algebraic structure of the bracket:
   If s or t is None the bracket is no longer bilinear but it satisfy a Leibnitz rule?
 - Explore alternative brackets
+- Extend the definition from form spaces to form rings?
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from fd1edff to 38dfd7a

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

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

83c2396Merge tag '6.6.beta3' into u/jj/theta_coercion
38dfd7aMerge branch 'u/jj/theta_coercion' into u/jj/rankin_cohen_bracket
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 38dfd7a to ca28b8b

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:

987392fallow coercions from the forms over n=3 to forms over n=infinity
a91d126add the multiplication-by-weight operator
2b6826ainitial version of Rankin Cohen brackets
ca28b8badd missing doctests and documentation
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from ca28b8b to 1396805

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:

48d9918allow coercions from the forms over n=3 to forms over n=infinity
21b72f7add the multiplication-by-weight operator
781a7b2initial version of Rankin Cohen brackets
1396805add missing doctests and documentation
a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 9 years ago
comment:7

Rebase on u/jj/theta_coercion

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 9 years ago

Description changed:

--- 
+++ 
@@ -8,6 +8,9 @@
 - http://arxiv.org/abs/math/0509653
 - http://arxiv.org/abs/1306.3634v2

+Also see:
+http://math.univ-bpclermont.fr/~royer/ens/Mali/M2_Mali.html
+
 Possible Todos:
 - Review the definition for more general analytic types (quasi weak/meromorphic forms)
 - Restrict/validate the parameters s, t
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 1396805 to 47d1902

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

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

7d9146aallow coercions from the forms over n=3 to forms over n=infinity
4d36e7atrac #17261 fixing doc formatting in readme
dbf5f26trac #17261 again better doc in readme
ba88e5eimprovements after review from chapoton
e2a4ef8add the multiplication-by-weight operator
be0e7adinitial version of Rankin Cohen brackets
47d1902add missing doctests and documentation
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 47d1902 to 73de053

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

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

e3e9b31add the multiplication-by-weight operator
13ee3d6initial version of Rankin Cohen brackets
73de053add missing doctests and documentation
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 73de053 to 2fd8e13

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

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

7815555add the multiplication-by-weight operator
5887183initial version of Rankin Cohen brackets
2fd8e13add missing doctests and documentation
fchapoton commented 8 years ago

Changed branch from u/jj/rankin_cohen_bracket to u/chapoton/17909

fchapoton commented 8 years ago

Changed commit from 2fd8e13 to fb03d29

fchapoton commented 8 years ago
comment:15

I just changed a broken import


New commits:

6aec29eMerge branch 'u/jj/rankin_cohen_bracket' in 7.4.b2
fb03d29modern import
fchapoton commented 7 years ago
comment:16

ping ?

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 7 years ago

Changed dependencies from #17261 to none

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 7 years ago

Changed commit from fb03d29 to bef5a6b

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 7 years ago
comment:17

rebased on develop, applied chapoton's commit


New commits:

5277bbaadd the multiplication-by-weight operator
c836ea8initial version of Rankin Cohen brackets
f883d1badd missing doctests and documentation
bef5a6bapply modern import commit from chapoton
a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 7 years ago

Changed branch from u/chapoton/17909 to u/jj/rankin_cohen_bracket

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

Changed commit from bef5a6b to 9b46edd

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

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

9b46edduse submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

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

85bdbfdmake series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 9b46edd to 85bdbfd

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 7 years ago

Description changed:

--- 
+++ 
@@ -1,7 +1,7 @@
 This ticket adds support for Rankin Cohen brackets for (quasi) modular forms.
-The formulas shouldn't changefor Hecke triangle groups.
+The formulas shouldn't change for Hecke triangle groups.

-The ticket also adds support for listing the homogeneous and quasi parts of an element.
+The ticket also adds support for listing the homogeneous and quasi parts of an element and fixes some bugs.

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

Changed commit from 85bdbfd to 16c5d1d

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

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

439e598add the multiplication-by-weight operator
b180c56initial version of Rankin Cohen brackets
c50b4ceadd missing doctests and documentation
7a47fa1apply modern import commit from chapoton
f15ab00use submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
16c5d1dmake series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

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

b5b8ef5add the multiplication-by-weight operator
56a3642initial version of Rankin Cohen brackets
c7ac17eadd missing doctests and documentation
fb4b2f5apply modern import commit from chapoton
3856464use submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
687e9a0make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from 16c5d1d to 687e9a0

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

Changed commit from 687e9a0 to f616890

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

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

08957bfadd the multiplication-by-weight operator
bd26578initial version of Rankin Cohen brackets
38d092badd missing doctests and documentation
7d46d36apply modern import commit from chapoton
4adea7duse submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
f616890make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

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

b410a00add the multiplication-by-weight operator
cccd1c4initial version of Rankin Cohen brackets
fb7ad68add missing doctests and documentation
4eb7759apply modern import commit from chapoton
6eb4bd4use submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
ffe93d8make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 7 years ago

Changed commit from f616890 to ffe93d8

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

Changed commit from ffe93d8 to c23aac2

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

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

5b1a331add the multiplication-by-weight operator
21b7149initial version of Rankin Cohen brackets
748f0b5add missing doctests and documentation
6b3155fapply modern import commit from chapoton
21743d0use submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
c23aac2make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
fchapoton commented 5 years ago
comment:29
+                EXAMPLES:
+
+        if len(laurent_series.exponents()) == 0:

could be just

+        if not laurent_series.exponents():
+        Return [self,g]_m, the ``m``th Rankin Cohen bracket of ``self`` with ``g``.
+        See ``self.parent().rankin_cohen_bracket`` for more information.

same here:

+        Return the summands of ``self`` divided by their depths.
+        This assumes that ``self`` has a depth (see :meth:`has_depth`).
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

Changed commit from c23aac2 to 7482a7e

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

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

eca2bb4add the multiplication-by-weight operator
5e1290binitial version of Rankin Cohen brackets
52d8357add missing doctests and documentation
ac9dd9bapply modern import commit from chapoton
908ba60use submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
6eab142make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
7482a7eadjustments after review
a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 5 years ago
comment:31

hi chapoton

Thanks for the review. I tried to fix as much as possible.

Regarding the "User basis matrix": That's due to the change "ambient_space._module.submodule" -> "ambient_space._module.submodule_with_basis". This is from like 4 years ago but I remember having had a very good reason for the change (it's a bugfix which I included in this change). If I recall correctly it just makes more sense to have coordinates with respect to the given basis. Why don't you like the change?

I executed pyflakes modform_hecketriangle/*.py and tried to fix most, what should I put in all.py and init.py?

Regards Jonas

fchapoton commented 5 years ago
comment:32

ok, thanks for the explanation about User basis matrix. I am no longer opposed to this change.

Concerning pyflakes, there is nothing to fix in all.py and init.py. I was only refering to the pyflakes plugin (that you can see in some but not all of the patchbot reports): it was complaining about

+src/sage/modular/modform_hecketriangle/abstract_space.py:87:
local variable 'numerator_parent' is assigned to but never used

Did you fix that ?

a1dd0ea6-9300-4f97-bb3c-0f25ba420caf commented 5 years ago
comment:33

Yes, I removed all other warnings.

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

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

ca0f922add the multiplication-by-weight operator
29dba33initial version of Rankin Cohen brackets
59d94e7add missing doctests and documentation
c2fb419apply modern import commit from chapoton
8aaac49use submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
71f5240make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
d5c2813adjustments after review
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 5 years ago

Changed commit from 7482a7e to d5c2813

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

Changed commit from d5c2813 to 85c03e3