Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge of GSoC modabvar project #21496

Closed
kevinywlui mannequin opened this issue Sep 14, 2016 · 31 comments
Closed

Merge of GSoC modabvar project #21496

kevinywlui mannequin opened this issue Sep 14, 2016 · 31 comments

Comments

@kevinywlui
Copy link
Mannequin

kevinywlui mannequin commented Sep 14, 2016

This is a merge of this project: https://github.com/williamstein/sage_modabvar

Most of the code is checked against Magma. Here's a SMC worksheet checking most of the doctest examples: https://cloud.sagemath.com/projects/0d310a14-a099-47d9-87c7-df6b63af54a6/files/worksheets/magma_test_examples.sagews

The methods that aren't covered in the worksheet are:

  • is_J0, is_J1: they're really short

  • elliptic_curve: this checks that the newforms agree for conductor up to 50: all([S.newform(names='a') == S.elliptic_curve().newform() for N in [1..50] for S in J0(N) if S.dimension() == 1])

  • An algorithm for computing the divisor of order of the rational torsion subgroup is known in the J1(p) case. It is also conjecturally the order of the rational torsion subgroup. This is cover in this paper: http://math.stanford.edu/~conrad/papers/j1p.pdf and the code has been checked against the table in pg. 393.

  • newform_decomposition: This checks it against another way of computing it:

    all([J0(N).newform_decomposition('a') == [S.newform('a') for S in J0(N)] for N in [1..50]])

    all([J1(N).newform_decomposition('a') == [S.newform('a') for S in J1(N)] for N in [1..30]])

CC: @williamstein

Component: modular forms

Keywords: modular abelian variety

Author: Kevin Lui

Branch/Commit: 9500491

Reviewer: Frédéric Chapoton

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

@kevinywlui kevinywlui mannequin added this to the sage-7.4 milestone Sep 14, 2016
@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Sep 16, 2016

@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Sep 19, 2016

New commits:

d431329Copied over files from Github repo. Made small docstring changes.

@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Sep 19, 2016

Changed dependencies from #20857 to none

@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Sep 19, 2016

Author: Kevin Lui

@kevinywlui

This comment has been minimized.

@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Sep 19, 2016

Commit: d431329

@kevinywlui kevinywlui mannequin added the s: needs review label Sep 19, 2016
@williamstein
Copy link
Contributor

comment:3

Quick comment: i pretty carefully refereed all the original code as it was being written, and had many (many!) comments on it, which Kevin addressed. So this is likely to be in pretty good shape.

@fchapoton
Copy link
Contributor

comment:4
File "src/sage/modular/abvar/torsion_subgroup.py", line 421, in sage.modular.abvar.torsion_subgroup.RationalTorsionSubgroup.multiple_of_order
Failed example:
    from sage_modabvar import J0, J1
Exception raised:
    Traceback (most recent call last):
      File "/home/u1/chapoton/sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 498, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/home/u1/chapoton/sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 861, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.modular.abvar.torsion_subgroup.RationalTorsionSubgroup.multiple_of_order[0]>", line 1, in <module>
        from sage_modabvar import J0, J1
    ImportError: No module named sage_modabvar
**********************************************************************
File "src/sage/modular/abvar/torsion_subgroup.py", line 559, in sage.modular.abvar.torsion_subgroup.RationalTorsionSubgroup.multiple_of_order_using_frobp
Failed example:
    from sage_modabvar import JH
Exception raised:
    Traceback (most recent call last):
      File "/home/u1/chapoton/sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 498, in _run
        self.compile_and_execute(example, compiler, test.globs)
      File "/home/u1/chapoton/sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 861, in compile_and_execute
        exec(compiled, globs)
      File "<doctest sage.modular.abvar.torsion_subgroup.RationalTorsionSubgroup.multiple_of_order_using_frobp[20]>", line 1, in <module>
        from sage_modabvar import JH
    ImportError: No module named sage_modabvar

@fchapoton
Copy link
Contributor

Changed branch from u/klui/merge_of_gsoc_modabvar_project to public/21496

@fchapoton
Copy link
Contributor

Changed commit from d431329 to c760f00

@fchapoton
Copy link
Contributor

comment:5

I made a public branch (based on u/klui/merge_of_gsoc_modabvar_project)
removing the 3 problematic imports.


New commits:

53865b7Merge branch 'u/klui/merge_of_gsoc_modabvar_project' in 7.4.b6
c760f00removing some bad unused imports

@fchapoton
Copy link
Contributor

comment:6

one failing doctest:

File "src/sage/modular/abvar/abvar.py", line 4363, in sage.modular.abvar.abvar.ModularAbelianVariety_modsym_abstract.new_subvariety
Failed example:
    J0(33).new_subvariety()
Expected:
    Abelian subvariety of dimension 1 of J0(33)
Got:
    Simple abelian subvariety 33a(1,33) of dimension 1 of J0(33)

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 29, 2016

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

cf1aa03trac 21496 fixing failing doctest

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 29, 2016

Changed commit from c760f00 to cf1aa03

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 30, 2016

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

919e788changed fix to failing doctest

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 30, 2016

Changed commit from cf1aa03 to 919e788

@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Sep 30, 2016

comment:9

@fchapoton Thanks for the fixes. I should have caught the bad imports earlier.

I think the doctest in new_subvariety fails because J0(33).is_simple() is called elsewhere in the file. There's a warning about this situation in L3203 in abvar.py . So I changed it to J0(34) since that isn't used anywhere in the file.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 13, 2016

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

fcca7acMerge branch 'public/21496' in 7.5.b6
b8defb6trac 21496 cosmetics of OUTPUT blocks

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 13, 2016

Changed commit from 919e788 to b8defb6

@fchapoton
Copy link
Contributor

comment:11

I have made a cosmetic commit, mainly about formatting the OUTPUT blocks.

If you do not object to these tiny changes, you can set a positive review on my behalf.

@fchapoton
Copy link
Contributor

comment:12

oops, it seems that I broke the doc, let me fix that

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 14, 2016

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

3f92ea1trac 21496 fixing doc, plus little code cleanup of ;

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 14, 2016

Changed commit from b8defb6 to 3f92ea1

@fchapoton
Copy link
Contributor

comment:14

ok, doc is good again.

Once again, if you agree with my small schanges, this can be set to positive.

@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Dec 16, 2016

comment:15

Replying to @fchapoton:

ok, doc is good again.

Once again, if you agree with my small schanges, this can be set to positive.

Looks good to me. Thanks. I'll set it on your behalf.

@fchapoton fchapoton modified the milestones: sage-7.4, sage-7.6 Jan 5, 2017
@fchapoton
Copy link
Contributor

Reviewer: Frédéric Chapoton

@vbraun
Copy link
Member

vbraun commented Jan 17, 2017

comment:19

on 32-bit:

sage -t --long src/sage/modular/abvar/lseries.py
**********************************************************************
File "src/sage/modular/abvar/lseries.py", line 102, in sage.modular.abvar.lseries.Lseries_complex.__call__
Failed example:
    L(1) # long time (2s)
Expected:
    -1.33139759782370e-19
Got:
    -1.04128413920120e-19
**********************************************************************
File "src/sage/modular/abvar/lseries.py", line 201, in sage.modular.abvar.lseries.Lseries_complex.vanishes_at_1
Failed example:
    L(1) # long time (2s)
Expected:
    -1.33139759782370e-19
Got:
    -1.04128413920120e-19
^CKilling test src/sage/modular/abvar/lseries.py
----------------------------------------------------------------------
Doctests interrupted: 0/1 files tested
----------------------------------------------------------------------
Total time for all tests: 6.6 seconds
    cpu time: 0.0 seconds
    cumulative wall time: 0.0 seconds

Needs some # abs tol apparently

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 21, 2017

Changed commit from 3f92ea1 to 9500491

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jan 21, 2017

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

9500491added abs tol to fix some failing test on 32bit

@kevinywlui
Copy link
Mannequin Author

kevinywlui mannequin commented Jan 21, 2017

comment:21

Thanks for the catch. It should work now.

@vbraun
Copy link
Member

vbraun commented Jan 21, 2017

Changed branch from public/21496 to 9500491

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants