FLT/AutomorphicForm/QuaternionAlgebra/HeckeOperators/Abstract.lean
Explanation legend Lean4 Domain Explanation Language (L4DEL)
L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.
- L4DEL
- Lean4 Domain Explanation Language
Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.
Project sources: Pinned project documentation, Pinned FLT blueprint introduction
18 declarations, 0 contain sorry, 0 declared as axioms
Abstract Hecke operators
Generalities on Hecke operators acting on the fixed points of a group action.
We define the abstract Hecke operator attached to a double coset
U g U acting on R-valued functions invariant under U.
Imports (8)
- Mathlib.Algebra.Module.LinearMap.Defs
- Mathlib.Algebra.Ring.Action.Submonoid
- Mathlib.Algebra.BigOperators.Finprod
- Mathlib.Algebra.Group.Subgroup.Actions
- Mathlib.GroupTheory.Coset.Defs
- Mathlib.NumberTheory.Cyclotomic.Basic
- Mathlib.Algebra.BigOperators.GroupWithZero.Action
- Mathlib.GroupTheory.GroupAction.Quotient
Imported by 2 files
- def
FixedPoints.submoduleFixedPointsas a submodule line 67 sourceSource documentation
FixedPointsas a submodule.standard axioms: Quot.sound, propext what this means
Statement uses:
Monoid,Semiring,AddCommMonoid,Module,DistribMulAction,SMulCommClass,SubmoduleProof uses:
AddSubmonoid,FixedPoints.addSubmonoid,Submodule.mk19 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
def FixedPoints.submodule (G R M : Type*) [Monoid G] [Semiring R] [AddCommMonoid M] [Module R M] [DistribMulAction G M] [SMulCommClass G R M] : Submodule R M where … - instance
FixedPoints.(instance at line 79)line 79 source - lemma
FixedPoints.coe_zeroline 83 sourceno axioms what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Eq,Membership.mem,Set,MulAction.fixedPoints,OfNat.ofNatProof uses:
rfl24 instances, coercions and auxiliary constants left out.
- lemma
FixedPoints.coe_addline 86 sourceno axioms what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,MulAction.fixedPoints,Eq,Membership.mem,Set,HAdd.hAddProof uses:
rfl24 instances, coercions and auxiliary constants left out.
Tactic trace: 1 steps
Open to load the checked before-and-after goal states.
- instance
FixedPoints.(instance at line 95)line 95 source - lemma
FixedPoints.coe_smulline 100 sourceno axioms what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,SMul,SMulCommClass,MulAction.fixedPoints,Eq,Membership.mem,Set,HSMul.hSMulProof uses:
rfl30 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- instance
FixedPoints.(instance at line 103)line 103 source - instance
FixedPoints.moduleProbably this should be a submodule instance and then get module instance for free line 115 sourceSource comment
Probably this should be a submodule instance and then get module instance for freestandard axioms: propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Ring,Module,SMulCommClass,MulAction.fixedPointsProof uses:
Module.mk,DistribMulAction.mk,MulAction.mk,SemigroupAction.mk38 instances, coercions and auxiliary constants left out.
Tactic trace: 8 steps
Open to load the checked before-and-after goal states.
instance module [Ring R] [Module R A] [SMulCommClass G R A] : Module R (fixedPoints G A) where …
- lemma
Set.bijOn_smulline 137 sourcestandard axioms: Quot.sound, propext what this means
Statement uses:
Group,Subgroup,Set,Membership.mem,Set.BijOn,HSMul.hSMul,HMul.hMulProof uses:
And.intro,Set.MapsTo,And,Set.InjOn,Set.SurjOn,Exists,Eq,Exists.intro,MulMemClass.mul_mem,of_eq_true,Eq.trans,True,congrFun',congrArg,mul_assoc,eq_self,Set.injOn_of_injective,MulAction.injective,Set.image,Inv.invand 3 more41 instances, coercions and auxiliary constants left out.
Tactic trace: 9 steps
Open to load the checked before-and-after goal states.
- lemma
AbstractHeckeOperator.eq_finsum_quotient_out_of_bijOn'Ifais fixed byVthen∑ᶠ g ∈ s, g • ais independent of the choicesof coset representatives inGfor a subset ofG ⧸ Vline 159 sourceSource documentation
If
ais fixed byVthen∑ᶠ g ∈ s, g • ais independent of the choicesof coset representatives inGfor a subset ofG ⧸ Vstandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,MulAction.fixedPoints,Subtype,Membership.mem,Set,HasQuotient.Quotient,Set.BijOn,Eq,finsum,HSMul.hSMul,Set.image,Quotient,QuotientGroup.leftRel,Quotient.outProof uses:
Set.BijOn.comp,Quot.out,Set.InjOn.bijOn_image,Set.injOn_of_injective,Quotient.out_injective,HMul.hMul,Exists,QuotientGroup.mk_out_eq_mul,Eq.mpr,id,congrArg,SemigroupAction.mul_smul,Subtype.property,Eq.refl,finsum_mem_eq_of_bijOn54 instances, coercions and auxiliary constants left out.
Tactic trace: 9 steps
Open to load the checked before-and-after goal states.
lemma eq_finsum_quotient_out_of_bijOn' (a : fixedPoints V A) {X : Set (G ⧸ V)} {s : Set G} (hs : s.BijOn (QuotientGroup.mk : G → G ⧸ V) X) : ∑ᶠ g ∈ s, g • (a : A) = ∑ᶠ g ∈ Quotient.out '' X, g • (a : A) := by … - def
AbstractHeckeOperator.heckeOperator.toFunThe Hecke operator T_g = [UgV] : A^V → A^U associated to the double coset UgV line 174 sourceSource documentation
The Hecke operator T_g = [UgV] : A^V → A^U associated to the double coset UgV.
standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,MulAction.fixedPoints,Subtype,Membership.memProof uses:
Subtype.mk,finsum,Quotient,QuotientGroup.leftRel,Quotient.out,HSMul.hSMul49 instances, coercions and auxiliary constants left out.
Tactic trace: 21 steps
Open to load the checked before-and-after goal states.
noncomputable def heckeOperator.toFun (a : fixedPoints V A) : fixedPoints U A := …
- def
AbstractHeckeOperator.heckeOperator.addMonoidHomThe Hecke operatorT_g = [UgV] : A^V → A^Upackaged as an additive monoid homomorphism line 195 sourceSource documentation
The Hecke operator
T_g = [UgV] : A^V → A^Upackaged as an additive monoid homomorphism.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,AddMonoidHom,MulAction.fixedPoints,Subtype,Membership.memProof uses:
AddMonoidHom.mk,ZeroHom.mk, AbstractHeckeOperator.heckeOperator.toFun52 instances, coercions and auxiliary constants left out.
Tactic trace: 4 steps
Open to load the checked before-and-after goal states.
noncomputable def heckeOperator.addMonoidHom : fixedPoints V A →+ fixedPoints U A where …
- def
AbstractHeckeOperator.heckeOperatorThe Hecke operatorT_g = [UgV] : A^V → A^Uas anR-linear map, whereRis any ring acting onAand commuting with theG-action line 211 sourceSource documentation
The Hecke operator
T_g = [UgV] : A^V → A^Uas anR-linear map, whereRis any ring acting onAand commuting with theG-action.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,Ring,Module,SMulCommClass,LinearMap,RingHom.id,Subtype,Membership.mem,Submodule, FixedPoints.submoduleProof uses:
AddMonoidHom,MulAction.fixedPoints, AbstractHeckeOperator.heckeOperator.addMonoidHom,LinearMap.mk,AddHom.mk,ZeroHom.toFun75 instances, coercions and auxiliary constants left out.
Tactic trace: 3 steps
Open to load the checked before-and-after goal states.
noncomputable def heckeOperator : FixedPoints.submodule V R A →ₗ[R] FixedPoints.submodule U R A where …Mentions: FixedPoints.submodule
- lemma
AbstractHeckeOperator.heckeOperator_applyline 219 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,Ring,Module,SMulCommClass,MulAction.fixedPoints,Subtype,Membership.mem,Eq,Submodule, FixedPoints.submodule,LinearMapand 7 moreProof uses:
rfl78 instances, coercions and auxiliary constants left out.
- lemma
AbstractHeckeOperator.heckeOperator_apply'line 224 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,Ring,Module,SMulCommClass,MulAction.fixedPoints,Subtype,Membership.mem,Eq,Submodule, FixedPoints.submodule,LinearMapand 7 moreProof uses:
Eq.mpr,finsum,Quotient,id,congrArg, AbstractHeckeOperator.heckeOperator_apply,Finset,Eq.symm,finsum_mem_coe_finset,finsum_mem_image,Function.Injective.injOn,Quotient.out_injective,eq_of_heq,HEq,Eq.refl,HEq.refl,heq_of_eq,funext,finsum_congr_Prop,outParamand 12 more88 instances, coercions and auxiliary constants left out.
Tactic trace: 6 steps
Open to load the checked before-and-after goal states.
- lemma
AbstractHeckeOperator.heckeOperator_eq_finsetSumline 231 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,Ring,Module,SMulCommClass,MulAction.fixedPoints,Subtype,Membership.mem,Finset,Set.BijOn,Eq,Submoduleand 6 moreProof uses:
Eq.trans,finsum,Quotient,QuotientGroup.leftRel,Quotient.out,Eq.symm, AbstractHeckeOperator.eq_finsum_quotient_out_of_bijOn',finsum_mem_coe_finset74 instances, coercions and auxiliary constants left out.
- lemma
AbstractHeckeOperator.heckeOperator_eq_of_mem_normalizerline 236 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Ring,Module,SMulCommClass,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,MulAction.fixedPoints,Subtype,Membership.mem,Subgroup.normalizer,Eq,Submodule, FixedPoints.submodule and 4 moreProof uses:
Eq.mpr,finsum,Quotient,QuotientGroup.leftRel,Quotient.out,id,congrArg, AbstractHeckeOperator.heckeOperator_apply, AbstractHeckeOperator.eq_finsum_quotient_out_of_bijOn',Set.ext,of_eq_true,Iff,Eq.trans,Inv.inv,True,congr,Set.preimage,congrFun',Set.mul_singleton,Set.image_mul_rightand 41 more108 instances, coercions and auxiliary constants left out.
Tactic trace: 16 steps
Open to load the checked before-and-after goal states.
- theorem
AbstractHeckeOperator.commline 257 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Group,AddCommMonoid,DistribMulAction,Subgroup,Ring,Module,SMulCommClass,Set.Finite,HasQuotient.Quotient,Set.image,HMul.hMul,Set,Singleton.singleton,Exists,And,Set.BijOn,Membership.mem,Eq,LinearMap,RingHom.idand 5 moreProof uses:
LinearMap.ext,Subtype.ext,id,Eq.mpr,finsum,Quotient,QuotientGroup.leftRel,Quotient.out,HSMul.hSMul,MulAction.fixedPoints,congrArg, AbstractHeckeOperator.heckeOperator_apply,Eq.symm, AbstractHeckeOperator.eq_finsum_quotient_out_of_bijOn',propext,Set.BijOn.finite_iff_finite,funext,finsum_congr_Prop,Eq.refl,DistribSMuland 5 more80 instances, coercions and auxiliary constants left out.
Tactic trace: 25 steps
Open to load the checked before-and-after goal states.