The GL₂ Hecke operators T(a, d) and T(m) #
The specialization of the GL_n Hecke ring to n = 2: the basis operators T(a, d) for
divisor pairs a ∣ d, the scalar operators T(c, c), and Shimura's summed operator
T(m) = ∑_{a ∣ m} T(a, m / a).
Ported from the AINTLIB LeanModularForms project
(LeanModularForms/HeckeRIngs/GL2/Basic.lean,
Chris Birkbeck).
Main definitions #
HeckeRing.GL2.heckeTDiag:T(a, d), zero unless0 < a,0 < d,a ∣ d.HeckeRing.GL2.heckeTScalar: the scalar operatorT(c, c).HeckeRing.GL2.heckeT: Shimura'sT(m) = ∑_{a ∣ m} T(a, m / a).
Main results #
HeckeRing.GL2.heckeTDiag_one_one:T(1, 1) = 1, withheckeTScalar_oneits scalar form.HeckeRing.GL2.heckeT_one:T(1) = 1.HeckeRing.GL2.heckeT_prime:T(p) = T(1, p)for primep.HeckeRing.GL2.heckeTDiag_mul_of_coprime:T(a,da) · T(b,db) = T(ab, da·db)for coprime determinants — coprimality alone, the zero-extension covering the rest.HeckeRing.GL2.heckeT_mul_of_coprime:T(m) · T(n) = T(mn)for coprimem,n.
References #
T(a, d): the diagonal Hecke basis element of the pair (a, d), zero unless
0 < a, 0 < d and a ∣ d.
Equations
Instances For
Defining equation for the sealed heckeTDiag.
T(a, d) is the diagonal Hecke element when the divisor-pair conditions hold.
All three hypotheses are needed. 0 < d does not follow from 0 < a and a ∣ d: in ℕ
every number divides 0, so a = 1, d = 0 satisfies both while 0 < d fails — and that is
exactly the tuple on which natDiagGL takes its junk value, which the 0 < d branch of
heckeTDiag exists to exclude.
T(c, c): the scalar Hecke operator.
Equations
Instances For
The defining equation of heckeTScalar.
T(0, 0) = 0: the scalar operator of 0 is zero, since the divisor-pair conditions fail.
Together with heckeTScalar_of_pos this covers the whole ℕ-valued interface, so consumers
never need to unfold through heckeTScalar_def.
The scalar operator of a positive c is the constant diagonal element.
T(1, 1) = 1 in scalar form: the scalar operator of 1 is the identity. Together with
heckeTScalar_zero and heckeTScalar_of_pos this closes the ℕ-valued interface at its
canonical input.
Shimura's summed Hecke operator: T(m) = ∑_{a ∣ m} T(a, m / a).
Equations
- HeckeRing.GL2.heckeT m = ∑ a ∈ (↑m).divisors, HeckeRing.GL2.heckeTDiag a (↑m / a)
Instances For
The defining equation of heckeT.
T(1) = 1: the only divisor pair of 1 is (1,1).
For a prime p, the summed operator collapses: T(p) = T(1, p).
Powers of the scalar operator: T(p,p) ^ i = T(pⁱ,...,pⁱ).
Coprime multiplicativity (Shimura, Proposition 3.16 in the GL₂ notation):
T(a, da) · T(b, db) = T(ab, da·db) when the determinants a·da and b·db are coprime.
Coprimality is the only hypothesis. No positivity or divisor-pair condition is needed,
because heckeTDiag is zero-extended and coprimality propagates that zero: if T(a, da)
fails to be a basis element then so does T(ab, da·db), since a is coprime to db, so
a ∣ ab ∣ da·db would force a ∣ da. Both sides are then 0.