Opened 4 years ago

Last modified 4 weeks ago

#17909 needs_review enhancement

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

Reported by: jj Owned by:
Priority: minor Milestone: sage-8.8
Component: modular forms Keywords: modular forms hecke triangle groups rankin cohen bracket
Cc: mraum, vdelecroix Merged in:
Authors: Jonas Jermann Reviewers:
Report Upstream: N/A Work issues:
Branch: u/jj/rankin_cohen_bracket (Commits) Commit: 40e4b949bdd12bd9c446445d4314b7ae8f58d812
Dependencies: Stopgaps:

Description (last modified by jj)

This ticket adds support for Rankin Cohen brackets for (quasi) modular forms. The formulas shouldn't change for Hecke triangle groups.

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

See:

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

Change History (41)

comment:1 Changed 4 years ago by git

  • Commit changed from bf892415fb7fd43df17cd4c50f422c2212f7f0cc to fd1edffd315afd3f706af102f4637314485d4595

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

fd1edffadd missing doctests and documentation

comment:2 Changed 4 years ago by jj

  • Description modified (diff)
  • Status changed from new to needs_review

comment:3 Changed 4 years ago by jj

  • Description modified (diff)

comment:4 Changed 4 years ago by git

  • Commit changed from fd1edffd315afd3f706af102f4637314485d4595 to 38dfd7ac983fad06590058230388afeaa0dac011

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

comment:5 Changed 4 years ago by git

  • Commit changed from 38dfd7ac983fad06590058230388afeaa0dac011 to ca28b8ba55b3c69ac03987a9f0cf0de180679fbf

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

comment:6 Changed 4 years ago by git

  • Commit changed from ca28b8ba55b3c69ac03987a9f0cf0de180679fbf to 13968052652e3c480ab9025a827ad5eb986ed177

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

comment:7 Changed 4 years ago by jj

  • Milestone changed from sage-6.6 to sage-6.7

Rebase on u/jj/theta_coercion

comment:8 Changed 4 years ago by jj

  • Description modified (diff)

comment:9 Changed 4 years ago by git

  • Commit changed from 13968052652e3c480ab9025a827ad5eb986ed177 to 47d19029802f162fedf233c0a8a0e9883ca94d70

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

comment:10 Changed 4 years ago by jj

  • Milestone changed from sage-6.7 to sage-6.10

comment:11 Changed 4 years ago by git

  • Commit changed from 47d19029802f162fedf233c0a8a0e9883ca94d70 to 73de05346e640f7e6cdb34bdabcabec76b775af0

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

comment:12 Changed 3 years ago by git

  • Commit changed from 73de05346e640f7e6cdb34bdabcabec76b775af0 to 2fd8e13d01840c9902020cc1baa864b844868b91

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

comment:13 Changed 3 years ago by jj

  • Milestone changed from sage-6.10 to sage-7.0

comment:14 Changed 3 years ago by jj

  • Priority changed from minor to major

comment:15 Changed 3 years ago by chapoton

  • Branch changed from u/jj/rankin_cohen_bracket to u/chapoton/17909
  • Commit changed from 2fd8e13d01840c9902020cc1baa864b844868b91 to fb03d29e2609f0d406fb35b7430c6b6e5159286c
  • Milestone changed from sage-7.0 to sage-7.4

I just changed a broken import


New commits:

6aec29eMerge branch 'u/jj/rankin_cohen_bracket' in 7.4.b2
fb03d29modern import

comment:16 Changed 2 years ago by chapoton

  • Milestone changed from sage-7.4 to sage-8.0

ping ?

comment:17 Changed 2 years ago by jj

  • Branch changed from u/chapoton/17909 to u/jj/rankin_cohen_bracket
  • Commit changed from fb03d29e2609f0d406fb35b7430c6b6e5159286c to bef5a6b5d1c8811ea0ac0ed2fa4163bc294bfa4d
  • Dependencies #17261 deleted
  • Priority changed from major to minor

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

comment:18 Changed 2 years ago by git

  • Commit changed from bef5a6b5d1c8811ea0ac0ed2fa4163bc294bfa4d to 9b46edd8f387eec7a35376217787f4d174a1fa11

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

comment:19 Changed 2 years ago by git

  • Commit changed from 9b46edd8f387eec7a35376217787f4d174a1fa11 to 85bdbfde6d571f20eff94ed4faf6d10401d6a353

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

comment:20 Changed 2 years ago by jj

  • Description modified (diff)

comment:21 Changed 2 years ago by jj

Last edited 2 years ago by jj (previous) (diff)

comment:22 Changed 2 years ago by git

  • Commit changed from 85bdbfde6d571f20eff94ed4faf6d10401d6a353 to 16c5d1da187fb25851354bfc7f14d8786eeeee14

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

comment:23 Changed 2 years ago by git

  • Commit changed from 16c5d1da187fb25851354bfc7f14d8786eeeee14 to 687e9a0962171d24a9ed12516c4989cd09a63c8d

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

comment:24 Changed 23 months ago by git

  • Commit changed from 687e9a0962171d24a9ed12516c4989cd09a63c8d to f616890e684f22208132417996e7d8263e3af10e

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

comment:25 Changed 22 months ago by git

  • Commit changed from f616890e684f22208132417996e7d8263e3af10e to ffe93d8ff4f71738fd9bec0217cd91cc2c00bf1e

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

comment:26 Changed 22 months ago by jj

  • Milestone changed from sage-8.0 to sage-8.2

comment:27 Changed 8 months ago by git

  • Commit changed from ffe93d8ff4f71738fd9bec0217cd91cc2c00bf1e to c23aac2f3fd09feb73080fc0a8ef13c3bf602cdd

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

comment:28 Changed 7 months ago by jj

  • Milestone changed from sage-8.2 to sage-8.5

comment:29 Changed 7 months ago by chapoton

  • fix the pyflakes warning (see patchbot plugin)
  • use the :arxiv:`math/0509653v2` syntax for the links
  • There should be a double colon here:
    +                EXAMPLES:
    +
    
  • this
    +        if len(laurent_series.exponents()) == 0:
    

could be just

+        if not laurent_series.exponents():
  • I do not like the change from "Basis matrix:" to "User basis matrix:"
  • Here you should insert a blank line between the 2 lines
    +        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`).
  • Avoid using m=ZZ(1) inside the function arguments. Use m=None there, and set m to 1 inside the function, if m is None.

comment:30 Changed 7 months ago by git

  • Commit changed from c23aac2f3fd09feb73080fc0a8ef13c3bf602cdd to 7482a7e21ecf6f289e568f9c5d121b04352d87dc

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

comment:31 Changed 7 months ago by jj

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

comment:32 Changed 7 months ago by chapoton

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 ?

comment:33 Changed 7 months ago by jj

Yes, I removed all other warnings.

comment:34 Changed 7 months ago by git

  • Commit changed from 7482a7e21ecf6f289e568f9c5d121b04352d87dc to d5c281377e000c7d820d9895fda587f8f29c0204

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

comment:35 Changed 7 months ago by git

  • Commit changed from d5c281377e000c7d820d9895fda587f8f29c0204 to 85c03e3a502cca32fd28bf9471fd09dfc55a9773

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

59e9bd8add the multiplication-by-weight operator
fde5a73initial version of Rankin Cohen brackets
714307eadd missing doctests and documentation
7c4ff2eapply modern import commit from chapoton
3692cbduse submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
173ffb2make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
85c03e3adjustments after review

comment:36 Changed 5 months ago by git

  • Commit changed from 85c03e3a502cca32fd28bf9471fd09dfc55a9773 to 884e7a9ff4839e50bb488b5812bdd3ea4992f0ba

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

51de4faadd the multiplication-by-weight operator
1811688initial version of Rankin Cohen brackets
443e5f1add missing doctests and documentation
4355e1fapply modern import commit from chapoton
a9158e5use submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
3547b2fmake series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
884e7a9adjustments after review

comment:37 Changed 5 months ago by jj

  • Milestone changed from sage-8.5 to sage-8.7

comment:38 Changed 3 months ago by embray

  • Milestone changed from sage-8.7 to sage-8.8

Ticket retargeted after milestone closed (if you don't believe this ticket is appropriate for the Sage 8.8 release please retarget manually)

comment:39 Changed 2 months ago by git

  • Commit changed from 884e7a9ff4839e50bb488b5812bdd3ea4992f0ba to b704800e4d11fed54a48f15e3d331c72f6f9b029

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

1c32a9cadd the multiplication-by-weight operator
19cc17finitial version of Rankin Cohen brackets
7f0994eadd missing doctests and documentation
af364ffapply modern import commit from chapoton
4bb002ause submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
6d21480make series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
b704800adjustments after review

comment:40 Changed 2 months ago by git

  • Commit changed from b704800e4d11fed54a48f15e3d331c72f6f9b029 to 38a56abab3ce9e910825c81201807179c477887a

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

38a56abimport reduce from functools

comment:41 Changed 4 weeks ago by git

  • Commit changed from 38a56abab3ce9e910825c81201807179c477887a to 40e4b949bdd12bd9c446445d4314b7ae8f58d812

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

93ff788add the multiplication-by-weight operator
b626128initial version of Rankin Cohen brackets
4405776add missing doctests and documentation
6815521apply modern import commit from chapoton
d206d0fuse submodule_with_basis instead of submodule, so that coordinate vectors really correspond to the specified basis, bugfix regarding exception
b69818cmake series interpretation work more generally with basic validation, allow trivial series in rationalize_series, don't forget denom_factor
65ecd1badjustments after review
40e4b94import reduce from functools
Note: See TracTickets for help on using tickets.