Let A and B be modular abelian varieties. Then one can create the finite-rank free abelian group of homomorphisms from A to B or the vector space of homomorphisms in the category of abelian varieties up to isogeny. It is also possible to create the endomorphism algebra of an abelian variety. Such creations do non-trivial computations until further information is requested of the structures, such as rank or basis. In particular, such creations do not compute Hom(A, B).
Return the group of homomorphisms from the abelian variety A to the abelian variety B. If the argument oQ is given and is true, return the vector space generated by such homomorphisms.
The endomorphism ring of the abelian variety A. If oQ is given and is true, return the endomorphism algebra.
The space H tensor R, where H is a group of homomorphisms of a modular abelian variety and R is the rational numbers or integers. When R=Q , this is the space of homomorphisms in the category of abelian varieties up to isogeny.
The Hecke algebra associated to the abelian variety A, which is a commutative subring of End(A) generated by Hecke operators. For an abelian variety attached to modular symbols, this is the algebra induced by Hecke operators acting on modular symbols (homology). For a general abelian variety, let π :J to A and e:A to J be the modular parameterization and embedding of A. Then this is the ring of endomorphisms obtained by pulling back the Hecke algebra on J to A using π and e, i.e., it is e * T * π , where T is the Hecke ring of J. For example, since J1(N) is represented as a quotient of J0(N), the Hecke algebra is not what you might expect but may differ by some finite index.
> A := JZero(11); B := JZero(33); > Hom(A,B); Group of homomorphisms from JZero(11) to JZero(33) > Hom(A,B,true); Group of homomorphisms from JZero(11) to JZero(33) in the category of abelian varieties up to isogeny > End(A); Group of homomorphisms from JZero(11) to JZero(11) > End(A,true); Group of homomorphisms from JZero(11) to JZero(11) in the category of abelian varieties up to isogeny > BaseExtend(Hom(A,B),RationalField()); _Q: Group of homomorphisms from JZero(11) to JZero(33) in the category of abelian varieties up to isogeny > HeckeAlgebra(A); HeckeAlg(JZero(11)): Group of homomorphisms from JZero(11) to JZero(11)
Subgroups of Hom(A, B) can also be formed as well as subrings of End(A, B). Magma provides the computation of saturations of subgroups of Hom(A, B) where A and B are abelian varieties.
The group of homomorphisms from the abelian variety A to the abelian variety B generated by the homomorphisms of abelian varieties in the sequence X.
IsBasis: BoolElt Default: false
The group of homomorphisms generated by homomorphisms of abelian varieties in the sequence X. If the parameter IsBasis is true, then it is assumed that the elements of X are a basis for their span. If the argument oQ is true, return the vector space generated by such homomorphisms.
The ring of endomorphisms of a modular abelian variety generated by the endomorphisms in the sequence X. It does not need to contain unity. If the argument oQ is given and is true, return the algebra generated by such endomorphisms.
The ring of endomorphisms generated by the endomorphism φ of an abelian variety. It does not need to contain unity.
The saturation of the group H of homomorphisms of abelian varieties in all homomorphisms. Suppose A and B are abelian varieties and H is a subgroup of Hom(A, B). Then Hom(A, B) is a free Z-module, and the saturation of H in Hom(A, B) is a group H' that contains H with finite index such that the quotient of Hom(A,B) by H' is torsion free.
The ring of endomorphisms generated by the endomorphisms in the group H of homomorphisms between abelian varieties.
> function ind(N) > H := HeckeAlgebra(JZero(N)); > return Index(Saturation(H),H); > end function; > for N in [2..60] do > i := ind(N); > if i gt 1 then N, i; end if; > end for; 44 2 46 2 54 3 56 2 60 2Note that multiplicity one fails at 3 for J0(54). It might be interesting to find a precise relationship between failure of multiplicity one and the index of the Hecke algebra T in its saturation.
> J := JZero(33); > E := End(J); E; Group of homomorphisms from JZero(33) to JZero(33) > H := Subgroup([E.1, E.3]); H; Group of homomorphisms from JZero(33) to JZero(33) > Rank(H); 2
> T2 := HeckeOperator(JZero(100),2); > R := Subring(T2); R; Group of homomorphisms from JZero(100) to JZero(100) > Rank(R); 3
> J := JZero(100); > T2 := HeckeOperator(J,2);W := AtkinLehnerOperator(J,100); > R := Subring([End(J) | T2,W]); > Dimension(R); 10 > Dimension(End(J)); 13 > IsRing(R); true > IsCommutative(R); false
A homomorphism of abelian varieties induces a map from one space of homomorphisms into another. The three commands below compute the image of such maps.
Given a space of homomorphisms H in Hom(A, B) and a morphism φ :B to C, compute the image of H in Hom(A, C) via the map that sends f to f * φ .
Given a space of homomorphisms H in Hom(A, B) and a morphism φ :C to A, compute the image of H in Hom(C, B) via the map that sends f to φ * f.
Suppose H is a space of homomorphisms A to B and φ :C to A and ψ :B to D. Then this intrinsic computes and returns the ring of homomorphisms of A of the form φ * f * ψ , where f is in H.
> H := Hom(JZero(11),JZero(22)); > phi := NaturalMap(JZero(22),JZero(33)); > psi := NaturalMap(JZero(33),JZero(11)); > Pullback(H,phi); Group of homomorphisms from JZero(11) to JZero(33) > Pullback(psi,H); Group of homomorphisms from JZero(33) to JZero(22) > Pullback(psi,H,phi); Group of homomorphisms from JZero(33) to JZero(33)
The + and meet command compute the sum and intersection of two subgroups of Hom(A, B).
The subgroup generated by H1 and H2, where H1 and H2 are assumed to both be subgroups of Hom(A, B), for abelian varieties A and B.
The intersection of H1 and H2, where H1 and H2 are assumed to both be subgroups of Hom(A, B), for abelian varieties A and B.
> J := JZero(33); > E := End(J); > H1 := HeckeAlgebra(J); H1; HeckeAlg(JZero(33)): Group of homomorphisms from JZero(33) to JZero(33) > H2 := Subgroup([E.1,E.2]); H2; Group of homomorphisms from JZero(33) to JZero(33) > Dimension(E); 5 > Dimension(H1); 3 > Dimension(H2); 2 > Dimension(H1 meet H2); 1 > Dimension(H1 + H2); 4
If H1 and H2 are subspaces of Hom(A, B) then the index of H1 in H2 can be computed. The quotient H2/H1 can also be taken.
The index of H1 in H2, where H1 and H2 are both subgroups of Hom(A, B), for abelian varieties A and B. If H1 is contained in H2, this is just the cardinality of H2/H1, or 0 if this cardinality is infinite. If H1 is not contained in H2, then the index is by definition the generalized lattice index [H1 + H2:H1]/[H1 + H2:H2], assuming the denominator is nonzero, i.e., that H2 has finite index in H1 + H2 (an error occurs if H2 does not have finite index in H1 + H2).
The abelian group quotient H2/H1, a map from H2 to this quotient, and a lifting map from this quotient to H2, where H1 and H2 are subgroups of Hom(A, B) and A and B are abelian varieties.
> J := JZero(54); > T := HeckeAlgebra(J); > Dimension(T); 4 > S := Subgroup([HeckeOperator(J,n) : n in [1..4]]); > Dimension(S); 3 > Index(T,S); 0 > Quotient(T,S); Abelian Group isomorphic to Z Defined on 1 generator (free) Mapping from: HomModAbVar: T to Abelian Group isomorphic to Z Defined on 1 generator (free) given by a rule [no inverse] Mapping from: Abelian Group isomorphic to Z Defined on 1 generator (free) to HomModAbVar: T given by a rule [no inverse] > G := T/S; G; Abelian Group isomorphic to Z Defined on 1 generator (free)
We compute the subgroup generated by T3, T4, T5, and T10, and find that it has index 6 in its saturation.
> S := Subgroup([HeckeOperator(J,n) : n in [3,4,5,10]]); > Sat := Saturation(S); > Index(Sat,S); 6 > Index(S,Sat); 1/6 > Invariants(Sat/S); [ 6 ]
Domain and codomain of the homomorphisms in a space of homomorphisms of abelian varieties can both be retrieved from the space as well as a field which all homomorphisms in a space are defined over.
A possibly time consuming computation is that of the discriminant of a space of homomorphisms. Discriminants of Hecke algebras are particularly interesting to compute because they are closely related to congruences between eigenforms.
The domain of the homomorphisms in the group H of homomorphisms between modular abelian varieties.
The codomain of the homomorphisms in the group H of homomorphisms between modular abelian varieties.
A field over which all homomorphisms in the group H of homomorphisms of abelian varieties are defined. It is not guaranteed to be minimal.
The discriminant of the space H of homomorphisms of abelian varieties with respect to the trace pairing matrix. This is the trace of endomorphisms acting on homology, not left multiplication on themselves, so, e.g., the discriminant of the Hecke algebra will be 2d times as big as it would be otherwise (if the sign is 0), where d is the dimension of A. If H is over Q , this function returns the discriminant of the lattice of elements in H that are homomorphisms.
> H := Hom(JZero(11),JZero(33)); > Domain(H); Modular abelian variety JZero(11) of dimension 1 and level 11 over Q > Codomain(H); Modular abelian variety JZero(33) of dimension 3 and level 3*11 over Q > FieldOfDefinition(H); Rational Field > A := BaseExtend(JZero(11),ComplexField()); > H := End(A); > FieldOfDefinition(H); Complex FieldThough H=Z, so the discriminant of the abstract ring H is 1, the discriminant of the trace pairing of H acting on homology is 2:
> Discriminant(H); 2 [2]
The prime p=389 is the only known example where p divides the discriminant of the Hecke algebra of J0(p).
> T := HeckeAlgebra(JZero(389,2 : Sign := +1)); > d := Discriminant(T); > J := JZero(389,2,+1); > T := HeckeAlgebra(J); > d := Discriminant(T); > d mod 389; 0 > Factorization(d); [ <2, 53>, <3, 4>, <5, 6>, <31, 2>, <37, 1>, <389, 1>, <3881, 1>, <215517113148241, 1>, <477439237737571441, 1> ]All the "action" at 389 comes from the 20-dimensional simple factor.
> A := J(5); A; Modular abelian variety 389E of dimension 20, level 389 and conductor 389^20 over Q with sign 1 > Factorization(Discriminant(HeckeAlgebra(A))); [ <2, 98>, <5, 41>, <389, 1>, <215517113148241, 1>, <477439237737571441, 1> ]
The following commands provide access to a basis and generators for spaces of homomorphisms.
A basis for the space H of homomorphisms of abelian varieties.
The rank of the space H of homomorphisms of abelian varieties as a Z-module or Q-vector space.
The number of generators of the space H of homomorphisms of abelian varieties.
The ith generator of the space H of homomorphisms of abelian varieties.
> H := Hom(JZero(11),JZero(33)); > Basis(H); [ Homomorphism from JZero(11) to JZero(33) given on integral homology by: [ 0 2 -1 -2 0 1] [ 1 0 -1 -1 1 1], Homomorphism from JZero(11) to JZero(33) given on integral homology by: [ 1 0 -2 2 -3 0] [ 1 -1 0 1 -2 1] ] > Dimension(H); 2 > Ngens(H); 2 > Rank(H); 2 > H.1; Homomorphism from JZero(11) to JZero(33) given on integral homology by: [ 0 2 -1 -2 0 1] [ 1 0 -1 -1 1 1]
The following commands associate lattices, vector spaces, matrix algebras, and matrix spaces to subspaces H of Hom(A, B).
A lattice or vector space with basis obtained from the components of the matrices of a basis for the space H of homomorphisms of abelian varieties. This free Z-module is constructed from the Eltseqs of the all of the basis elements of H.
The matrix algebra generated by the underlying matrices of all elements in the space H of homomorphisms of abelian varieties, acting on homology.
The matrix space whose basis is the generators for the space H of homomorphisms of abelian varieties.
A module over the ring R generated by the space H of homomorphisms of abelian varieties equipped with the action of H, where H must be a ring of endomorphisms.
A module over H tensor Fp equipped with the action of H tensor Fp, where H must be a ring of endomorphisms of an abelian variety that has not been tensored with Q .
We first demonstrate some of the commands with Hom(J0(11), J0(33)).
> H := Hom(JZero(11),JZero(33)); > Lattice(H); Lattice of rank 2 and degree 12 Basis: ( 0 2 -1 -2 0 1 1 0 -1 -1 1 1) ( 1 0 -2 2 -3 0 1 -1 0 1 -2 1) > RMatrixSpace(H); RMatrixSpace of 2 by 6 matrices and dimension 2 over Integer Ring > RMatrixSpace(BaseExtend(H,RationalField())); KMatrixSpace of 2 by 6 matrices and dimension 2 over Rational Field > VectorSpace(H); Vector space of degree 12, dimension 2 over Rational Field User basis: ( 1 0 -2 2 -3 0 1 -1 0 1 -2 1) ( 0 -2 1 2 0 -1 -1 0 1 1 -1 -1)Next we consider the endomorphism algebra of J0(22).
> H := End(JZero(22)); > MatrixAlgebra(H); Matrix Algebra of degree 4 with 4 generators over Integer Ring > RModuleWithAction(H); RModule(IntegerRing(), 4) Action: [1 0 0 0] [0 1 0 0] [0 0 1 0] [0 0 0 1] [ 0 1 0 1] [ 0 0 0 0] [ 1 0 1 -1] [ 0 1 0 1] [ 0 1 0 -1] [ 0 1 0 0] [-1 2 -1 1] [-1 1 0 0] [ 0 1 -2 1] [-1 2 -1 0] [-1 0 1 -1] [ 0 -1 1 -1]
> H := Subgroup([HeckeOperator(JZero(33),2)]); H; Group of homomorphisms from JZero(33) to JZero(33) > A := MatrixAlgebra(H); A; Matrix Algebra of degree 6 with 1 generator over Integer Ring > Dimension(A); 2 > Dimension(H); 1
These commands determine whether a space of homomorphisms is a ring, if it's commutative, if it's a field (and what field), if it was created using the HeckeAlgebra command, whether it has been tensored with Q, or whether it is saturated in the full ring of endomorphisms. Equality and inclusion can also be tested.
Return true if the space H of homomorphisms of abelian varieties is a ring. (Note that a ring does not have to contain unity.)
Return true if the space H of homomorphisms of abelian varieties is a field, and if so returns that field, a map from the field to H, and a map from H to the field.
Return true if and only if the space H of homomorphisms of abelian varieties is a commutative ring.
Return true if the space H of homomorphisms of abelian varieties was constructed using the HeckeAlgebra command.
Return true if the space H of homomorphisms of abelian varieties is a Q-vector space instead of just a Z-module, i.e., a space of homomorphisms up to isogeny.
Return true if the space H of homomorphisms of abelian varieties is equal to its saturation, i.e., the quotient of the ambient Hom(A, B) by H is torsion free.
Return true if the spaces H1 and H2 of homomorphisms of abelian varieties are equal.
Return true if the spaces H1 and H2 of homomorphisms of abelian varieties are both subgroups of a common Hom(A, B), and in addition H1 is a subset of H2.
> H := End(JZero(33)); > IsCommutative(H); false > IsField(H); false 0 0 0 > IsHeckeAlgebra(H); false > IsOverQ(H); false > IsOverQ(BaseExtend(H,RationalField())); true > IsRing(H); true > IsSaturated(H); trueNext we compare the endomorphism ring with the Hecke algebra of J0(33).
> T := HeckeAlgebra(JZero(33)); > T eq H; false > T subset H; true > IsSaturated(T); true > IsRing(T); true > IsHeckeAlgebra(T); true > IsCommutative(T); true > IsField(BaseExtend(T,RationalField())); false 0 0 0The Hecke algebra of J0(33) is actually a product of 3 fields, so it is not a field. In contrast, the Hecke algebra of J0(23) is a field.
> T := HeckeAlgebra(JZero(23)); > IsField(T); false 0 0 0In the following code, the answer you get might be different, since computation of the defining polynomial for the number field involves a randomized algorithm.
> IsField(BaseExtend(T,RationalField())); true Number Field with defining polynomial x^2 + 11*x + 29 over the Rational Field Mapping from: Number Field with defining polynomial x^2 + 11*x + 29 over the Rational Field to HeckeAlg(JZero(23))_Q: Group of homomorphisms from JZero(23) to JZero(23) in the category of abelian varieties up to isogeny given by a rule [no inverse] Mapping from: HeckeAlg(JZero(23))_Q: Group of homomorphisms from JZero(23) to JZero(23) in the category of abelian varieties up to isogeny to Number Field with defining polynomial x^2 + 11*x + 29 over the Rational Field given by a rule [no inverse]
Elements of spaces of homomorphisms exist as maps between abelian varieties as discussed in Section Homomorphisms .
Coerce x into the space H of homomorphisms of abelian varieties. For this coercion to be successful x must be a homomorphism between 2 abelian varieties, an integer or a rational number or a matrix coercible into the matrix space of H base extended to the rational numbers.
> H := End(JZero(22)); > H ! Matrix(Integers(), 4, 4, > [9, -4, 0, 2, 0, 6, 0, 0, 2, -6, 11, -2, 3, -4, -0, 8]); Homomorphism from JZero(22) to JZero(22) given on integral homology by: [ 9 -4 0 2] [ 0 6 0 0] [ 2 -6 11 -2] [ 3 -4 0 8]