Hecke slash sums as traces #
A double-coset operator is the trace of a translate. The rational cosets used by
HeckeRing.GL2.heckeSlashSum and the real cosets used by Mathlib's trace correspond under
extension of scalars. Consequently the two constructions agree, with no extra determinant
factor: both use the arithmetic slash action.
This comparison allows the Petersson adjunction for traces of translates to be applied to Hecke operators already constructed from rational double cosets.
The trace of a form depends only on its underlying function and its level, not on the type the
form is packaged in (TauCeti.SlashInvariantForm.trace_eq_of_eq_of_coe_eq). This is what lets a
trace of a translate be compared with another one whose level is equal but not syntactically so, as
happens when the translating matrix is changed by an element normalizing the level. When that
element multiplies on the right, it comes out of the trace as a slash
(TauCeti.SlashInvariantForm.coe_trace_translate_mul_of_mem_normalizer). The lemma
TauCeti.trace_coe_cuspForm records the compatibility of the cusp-form and modular-form trace
constructions.
References #
- F. Diamond and J. Shurman, A first course in modular forms, Sections 5.1 and 5.5.
- David Loeffler, Mathlib's trace construction in
NormTrace.lean.
Coercing a cusp-form trace to a modular form agrees with the modular-form trace. This is class-polymorphic in the source form, just as Mathlib's two trace constructions are.
The trace sees only the underlying function and the level. Two slash-invariant forms with the same underlying function, for levels that are equal (though perhaps not syntactically), have the same trace.
Translating by a normalizing element commutes with the trace. If a normalizes the
level โ, the trace of the translate of f by x a is the slash by a of the trace of the
translate by x. The cosets of the two traces correspond under conjugation by a.
Coercing the cusp-form trace of a translate agrees with tracing the corresponding
translated modular form. Like trace_coe_cuspForm, this is class-polymorphic in the source
form.
A finite rational double-coset decomposition gives the finite relative index needed to
trace a translate after extension of scalars to โ.
The rational slash sum equals the trace of the translate by any representative of the same double coset. This statement needs only slash invariance, and allows different source and target groups.
The real conjugate of an integral level has finite relative index whenever its rational right-coset decomposition is finite. This supplies the instance required by Mathlib's trace.
The rational double-coset operator on cusp forms is Mathlib's trace of a translate.
The representative ฮด may be chosen anywhere in the double coset.
The operator attached to ฮโ(N) diag(1,n) ฮโ(N) is the trace of the translate by
diag(1,n), with no additional normalization factor. The formula holds for every positive
index, including indices divisible by primes in the level.