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

modular abelian quotient -- something goes wrong #6392

Closed
williamstein opened this issue Jun 24, 2009 · 11 comments
Closed

modular abelian quotient -- something goes wrong #6392

williamstein opened this issue Jun 24, 2009 · 11 comments

Comments

@williamstein
Copy link
Contributor

This isn't right:

sage: J = J0(43)
sage: G,_ = J[0].intersection(J[1])
sage: J[1]/G
Simple abelian subvariety 43b(1,43) of dimension 2 of J0(43)

This is

sage: J[0]/G

(Abelian variety factor of dimension 1 of J0(43),
 Abelian variety morphism:
  From: Simple abelian subvariety 43a(1,43) of dimension 1 of J0(43)
  To:   Abelian variety factor of dimension 1 of J0(43))

For some reason J[1]/G isn't even creating the right output (i.e., pair (abvar, map)).

CC: @koffie

Component: modular forms

Stopgaps: todo

Author: Kevin Lui

Branch/Commit: 0bc6f5a

Reviewer: Frédéric Chapoton

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

@koffie
Copy link

koffie commented Dec 21, 2010

comment:1

G is strictly speaking not a subgroup of J[1] in this example it's a subgroup of J[0]. What happens if you travel down the code is equivalent to this:

G=J[1].finite_subgroup(G) #This should raise an error since J[0] and J[1] have empty intersection
J[1]._quotient_by_finite_subgroup(G):

Now the source code of _quotient_by_finite_subgroup is

def _quotient_by_finite_subgroup(self, G):
    if G.order() == 1:
        return self
    L = self.lattice() + G.lattice()
    A = ModularAbelianVariety(self.groups(), L, G.field_of_definition())
    M = L.coordinate_module(self.lattice()).basis_matrix()
    phi = self.Hom(A)(M)
    return A, phi

So i guess it should instead return

return self, self.Hom(self).identity()

There is also a problem with the is_subgroup code:
sage: G.is_subgroup(J[1])
True
This error is caused by the intersection code:
sage: G.intersection(J[1])
Finite subgroup with invariants [2, 2] over QQ of Simple abelian subvariety 43b(1,43) of dimension 2 of J0(43)

Maybe I'm a bit confused but is the intersection of abelian varieties defined in an other way than just the set theoretic one. Because by reading the source code I really get the feeling that it does. The errors certainly seem to come from different assumtions about this in different parts of the code.

@koffie
Copy link

koffie commented Dec 21, 2010

comment:2

My confusion mainly comes from the following:

sage: J[1].finite_subgroup(G)
Finite subgroup with invariants [] over QQ of Simple abelian subvariety
43b(1,43) of dimension 2 of J0(43)
J[1].intersection(G)
Finite subgroup with invariants [2, 2] over QQ of Simple abelian
subvariety 43b(1,43) of dimension 2 of J0(43)

@jdemeyer jdemeyer modified the milestones: sage-5.11, sage-5.12 Aug 13, 2013
@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.1, sage-6.2 Jan 30, 2014
@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.2, sage-6.3 May 6, 2014
@sagetrac-vbraun-spam sagetrac-vbraun-spam mannequin modified the milestones: sage-6.3, sage-6.4 Aug 10, 2014
@sagetrac-jakobkroeker
Copy link
Mannequin

sagetrac-jakobkroeker mannequin commented Aug 19, 2015

Stopgaps: todo

@kevinywlui
Copy link
Mannequin

kevinywlui mannequin commented Sep 19, 2018

Branch: u/klui/finite_subgroup

@kevinywlui
Copy link
Mannequin

kevinywlui mannequin commented Sep 19, 2018

comment:9

The issue was in finite_subgroup. We had to include the lattice of the ambient jacobian and not just the ambient abelian subvariety.

This branch returns the identity map as well when quotienting by a trivial group.


New commits:

0bc6f5aquotient by trivial subgroup now returns identity map, finite_subgroup now works when subgroup has different ambient variety

@kevinywlui
Copy link
Mannequin

kevinywlui mannequin commented Sep 19, 2018

Commit: 0bc6f5a

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

comment:11

ok, let it be. Please add author full name.

@fchapoton
Copy link
Contributor

Reviewer: Frédéric Chapoton

@vbraun
Copy link
Member

vbraun commented Sep 20, 2018

comment:13

Author name is missing..

@fchapoton
Copy link
Contributor

Author: Kevin Lui

@vbraun
Copy link
Member

vbraun commented Sep 21, 2018

Changed branch from u/klui/finite_subgroup to 0bc6f5a

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

6 participants