Size: 1037
Comment:
|
Size: 3614
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 3: | Line 3: |
Code at http://trac.sagemath.org/sage_trac/ticket/2544 == Todo on Tuesday, March 18 == * (craig) 2: disc(End(A)) * (craig) 2: degeneracy maps * (craig) 3: Hom(A,B) for A, B simple * (craig) 1: fix hecke operators * (robert) 1: create newforms and abvars from label, where label is 389aG1, 389aGH[2,3], 389b, 389c, etc. * (robert) 3: Hom(A,B) in general * (robert) 1: complementary isogeny (invert matrix and clear denom) * (william) 2: kernels of morphisms * (william) 2: cokernels of morphisms * (william) 3: dual isogeny when A,B both maximal * (william) 2: quotient by abelian subvariety * (william) 2: projection (only when 'maximal') * (william) 2: dual of A when A is maximal * (group) 2: norm equations (clean up patch) * (group) 5: minimal isogeny degree |
|
Line 6: | Line 30: |
* Move functions out of abvar_modsym_factor into abvar and delete that file. | * DONE (craig) Newforms issue: {{{ sage: f = CuspForms(37).newforms('a')[0] sage: f.coefficients(10) ------------------------------------ <type 'exceptions.TypeError'> Traceback (most recent call last) sage: f.coefficients([2..10]) ------------------------------------ <type 'exceptions.AttributeError'> Traceback (most recent call last) ... <type 'exceptions.AttributeError'>: 'Newform' object has no attribute '_compute' }}} |
Line 8: | Line 43: |
* Torsion subgroups: * Refactor base class * Get implementation to work with defining data being (lattice, abvar); compute generators. |
* DONE (william) This is completely wrong (the modabvar function on modular symbols assumes it's ambient!): {{{ sage: m = ModularSymbols(37)[1] sage: m.modular_abelian_variety() Jacobian of the modular curve associated to the congruence subgroup Gamma0(37) }}} |
Line 12: | Line 50: |
* Decomposition: | * DONE (william) Move functions out of abvar_modsym_factor into abvar and delete that file. * DONE (william) Torsion subgroups: * (already done) Refactor base class * (done) Get implementation to work with defining data being (lattice, abvar); compute generators. * (done) Quotients by finite subgroup * DONE (craig) Implement {{{f.number()}}} for f a newform. * DONE-ish (craig) Compute the Hecke algebra image in End(A) and find a good clean way to represent for Hecke stable. New object that is a subring of End(A). Have methods like {{{R.index_in(S)}}}. * DONE (craig) abelian varieties should cache their ambient modular abelian variety == Todo on Monday, March 17 == * (craig) Compute End(A): * for simple * in general. * disc of it. * ideals and annihilators * order in a ring of integers (for A simple) * given a ring R in EndAlg(A) where every element has integral charpoly, find an isogenous abelian variety with End(A) = R. * explicit isomorphism between HeckeAlgebra sitting in End(A) and a commutative ring * base extension of End(A) * (craig) Degeneracy maps * (william) Decomposition: |
Line 17: | Line 82: |
* deprecate hecke_decomposition * (DONE) label function * create from label |
|
Line 18: | Line 86: |
* Label function * Create from label * Create a small mock database * Compute the Hecke algebra image in End(A) and find a good clean way to represent for Hecke stable. New object that is a subring of End(A). Have methods like {{{R.index_in(S)}}}. * Compute End(A) in general. * Morphisms: |
* (william/craig) Morphisms: |
Line 31: | Line 89: |
* (william/craig) Isogenies: * Complementary -- invert matrix, clear denom. * Dual |
|
Line 32: | Line 94: |
* Quotients by finite subgroup | * (william) Intersection pairing |
Line 34: | Line 96: |
* Intersection pairing | * (?) Poincare Reducibility: * projection * quotients by abelian subvariety |
Line 36: | Line 100: |
* Poincare Reducibility: * projection |
* (craig/william) Minimal isogeny degree for A, B simple. |
Line 39: | Line 102: |
* Quotients by abelian subvariety * Minimal isogeny degree for A, B simple. |
* (craig/william) Create a small mock database |
Line 46: | Line 106: |
== Todo on March 17 == | |
Line 48: | Line 107: |
* Optimize decomposition | == Todo on Wednesday, March 19 == * Write doctests, etc., for everything above. * Optimize everything |
Modular Abelian Varieties
Code at http://trac.sagemath.org/sage_trac/ticket/2544
Todo on Tuesday, March 18
- (craig) 2: disc(End(A))
- (craig) 2: degeneracy maps
- (craig) 3: Hom(A,B) for A, B simple
- (craig) 1: fix hecke operators
- (robert) 1: create newforms and abvars from label, where label is 389aG1, 389aGH[2,3], 389b, 389c, etc.
- (robert) 3: Hom(A,B) in general
- (robert) 1: complementary isogeny (invert matrix and clear denom)
- (william) 2: kernels of morphisms
- (william) 2: cokernels of morphisms
- (william) 3: dual isogeny when A,B both maximal
- (william) 2: quotient by abelian subvariety
- (william) 2: projection (only when 'maximal')
- (william) 2: dual of A when A is maximal
- (group) 2: norm equations (clean up patch)
- (group) 5: minimal isogeny degree
Todo on March 16
- DONE (craig) Newforms issue:
sage: f = CuspForms(37).newforms('a')[0] sage: f.coefficients(10) ------------------------------------ <type 'exceptions.TypeError'> Traceback (most recent call last) sage: f.coefficients([2..10]) ------------------------------------ <type 'exceptions.AttributeError'> Traceback (most recent call last) ... <type 'exceptions.AttributeError'>: 'Newform' object has no attribute '_compute'
- DONE (william) This is completely wrong (the modabvar function on modular symbols assumes it's ambient!):
sage: m = ModularSymbols(37)[1] sage: m.modular_abelian_variety() Jacobian of the modular curve associated to the congruence subgroup Gamma0(37)
- DONE (william) Move functions out of abvar_modsym_factor into abvar and delete that file.
- DONE (william) Torsion subgroups:
- (already done) Refactor base class
- (done) Get implementation to work with defining data being (lattice, abvar); compute generators.
- (done) Quotients by finite subgroup
DONE (craig) Implement f.number() for f a newform.
DONE-ish (craig) Compute the Hecke algebra image in End(A) and find a good clean way to represent for Hecke stable. New object that is a subring of End(A). Have methods like R.index_in(S).
- DONE (craig) abelian varieties should cache their ambient modular abelian variety
Todo on Monday, March 17
- (craig) Compute End(A):
for simple
Af (DONE)- in general.
- disc of it.
- ideals and annihilators
- order in a ring of integers (for A simple)
given a ring R in EndAlg(A) where every element has integral charpoly, find an isogenous abelian variety with End(A) = R.
explicit isomorphism between HeckeAlgebra sitting in End(A) and a commutative ring
- base extension of End(A)
- (craig) Degeneracy maps
- (william) Decomposition:
- three types:
- ungrouped as simple abvars (default)
- groups abvars
- over End(A)
- deprecate hecke_decomposition
- (DONE) label function
- create from label
- three types:
- (william/craig) Morphisms:
- Kernels
- Cokernels
- (william/craig) Isogenies:
- Complementary -- invert matrix, clear denom.
- Dual
- (william) Intersection pairing
- (?) Poincare Reducibility:
- projection
- quotients by abelian subvariety
- (craig/william) Minimal isogeny degree for A, B simple.
- (craig/william) Create a small mock database
Todo on Wednesday, March 19
- Write doctests, etc., for everything above.
- Optimize everything