Ticket #6635: trac_6635-part2.patch

File trac_6635-part2.patch, 2.0 KB (added by was, 14 years ago)
  • sage/modular/abvar/abvar.py

    # HG changeset patch
    # User William Stein <wstein@gmail.com>
    # Date 1248891557 25200
    # Node ID f308b030e411a6fb46519f7d8015a9f069a87de1
    # Parent  76300afe4ef3e9b04aead99088cf8616fa083d37
    trac #6635 -- more work on "implement more critical Hecke algebra functionality: index in saturation, discriminant"
    
    diff -r 76300afe4ef3 -r f308b030e411 sage/modular/abvar/abvar.py
    a b  
    34093409        return self.decomposition()[i:j]
    34103410
    34113411
     3412    def hecke_index_in_saturation(self):
     3413        """
     3414        Let T' be the saturation in End(self) of the Hecke algebra T
     3415        associated to self.  Return the invariants of the finite group
     3416        T'/T.
     3417        """
     3418        S = self.modular_symbols(sign=0)
     3419        T = S.hecke_algebra()
     3420        return T._index_in_saturation(range(1, S.sturm_bound()+1), self.dimension()).invariants()
     3421
     3422
    34123423
    34133424class ModularAbelianVariety(ModularAbelianVariety_abstract):
    34143425    def __init__(self, groups, lattice=None, base_field=QQ, is_simple=None, newform_level=None,
     
    43804391        self.__brandt_module[p] = V
    43814392        return V
    43824393
    4383 
    43844394def sqrt_poly(f):
    43854395    """
    43864396    Return the square root of the polynomial `f`.
  • sage/modular/abvar/homspace.py

    diff -r 76300afe4ef3 -r f308b030e411 sage/modular/abvar/homspace.py
    a b  
    673673
    674674        return [ Mf * self._get_matrix(e) * Mg for e in ls ]
    675675
    676 # NOTE/WARNING/TODO:  Below in the __init__, etc. we do *not* check
    677 # that the input gens are give something that spans a sub*ring*, as apposed
    678 # to just a subgroup.
     676# NOTE/WARNING/TODO: Below in the __init__, etc. we do *not* check
     677# that the input gens give something that spans a sub*ring*, as
     678# apposed to just a subgroup.
    679679class EndomorphismSubring(Homspace, Ring):
    680680
    681681    def __init__(self, A, gens=None):