FLT/Slop/RepresentationTheory/OddAbsIrredSlop.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
12 declarations, 0 contain sorry, 0 declared as axioms
Irreducible ↔ absolutely irreducible, given a one-dimensional fixed space: proofs
This file proves Proposition 1.2 / Theorem 1.3 of the blueprint
"Odd_Rep_Irreducible": if ρ is a finite-dimensional representation of a
monoid G over a field k and some g : G has a one-dimensional fixed
subspace, then ρ is irreducible if and only if it is absolutely irreducible.
The public-facing statement, OddRep.isIrreducible_iff_isAbsolutelyIrreducible,
is in FLT.RepresentationTheory.OddAbsIrred and is proved by appeal to
OddRep.isIrreducible_iff_isAbsolutelyIrreducible_slop from this file.
Main results
OddRep.smul_tmul_mem_range_iff: Fact 1.1 (l·e ∩ V = k·einsideV_l)OddRep.exists_smul_eq_of_commute: Lemma 1.4 (End_G(V) = k)OddRep.adjoinRange_eq_top: Lemma 1.5 (Jacobson density,A = End_k(V))OddRep.adjoinRange_baseChange_eq_top: Lemma 1.6 (base change ofA = End_k(V))OddRep.isIrreducible_of_adjoinRange_eq_top: step (iv) of the blueprintOddRep.isIrreducible_of_baseChange: descent of irreducibility (easy direction)OddRep.isIrreducible_baseChange_of_finrank_eigenspace_eq_one: the hard direction, over an arbitrary field extensionl/kOddRep.isIrreducible_iff_isAbsolutelyIrreducible_slop: Proposition 1.2 / Theorem 1.3
Implementation notes
- Representations are
Representation k G V := G →* (V →ₗ[k] V)as in Mathlib. - Irreducibility is Mathlib's
Representation.IsIrreducible, defined asIsSimpleOrder (Subrepresentation ρ). The notion of a "G-invariant subspace" is Mathlib'sSubrepresentationstructure: aSubmoduletogether with the invariance fieldapply_mem_toSubmodule : ρ g v ∈ toSubmoduleforv ∈ toSubmodule. The lemmaOddRep.isIrreducible_iff_forallunpacksRepresentation.IsIrreducibleinto the elementary statement "V ≠ 0and every invariant subspace is⊥or⊤", which is what most proofs below use. - "Absolutely irreducible" (
OddRep.IsAbsolutelyIrreducible) is defined here as: the base change toAlgebraicClosure kis irreducible. The blueprint's proof in fact shows irreducibility after base change to any field extensionl/k; this is recorded separately asOddRep.isIrreducible_baseChange_of_finrank_eigenspace_eq_one.
Imports (11)
- Mathlib.Algebra.Module.StablyFree.Basic
- Mathlib.FieldTheory.IsAlgClosed.AlgebraicClosure
- Mathlib.LinearAlgebra.Eigenspace.Basic
- Mathlib.LinearAlgebra.FreeModule.PID
- Mathlib.RepresentationTheory.Irreducible
- Mathlib.RingTheory.Flat.TorsionFree
- Mathlib.RingTheory.Henselian
- Mathlib.RingTheory.RegularLocalRing.Defs
- Mathlib.RingTheory.SimpleRing.Principal
- Mathlib.RingTheory.TensorProduct.Free
- Mathlib.RingTheory.Flat.FaithfullyFlat.Basic
Imported by 3 files
- def
Slop.OddRep.baseChangeBase change of a representation along a field extensionl/k:Gacts onl ⊗[k] Vby1 ⊗ ρ(g)line 78 sourceSource documentation
Base change of a representation along a field extension
l/k:Gacts onl ⊗[k] Vby1 ⊗ ρ(g).standard axioms: Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Algebra,Representation,TensorProductProof uses:
MonoidHom.mk,LinearMap,RingHom.id,OneHom.mk,LinearMap.baseChange31 instances, coercions and auxiliary constants left out.
Tactic trace: 12 steps
Open to load the checked before-and-after goal states.
noncomputable def baseChange (l : Type*) [Field l] [Algebra k l] (ρ : Representation k G V) : Representation l G (l ⊗[k] V) where … - def
Slop.OddRep.adjoinRangeThek-subalgebraA ⊆ End_k(V)generated by the image ofρline 93 sourceSource documentation
The
k-subalgebraA ⊆ End_k(V)generated by the image ofρ.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,Subalgebra,Module.EndProof uses:
Algebra.adjoin,Set.range,LinearMap,RingHom.id36 instances, coercions and auxiliary constants left out.
def adjoinRange (ρ : Representation k G V) : Subalgebra k (Module.End k V) := …
- def
Slop.OddRep.IsAbsolutelyIrreducibleA representation is absolutely irreducible if it remains irreducible after base change to an algebraic closure ofkline 98 sourceSource documentation
A representation is absolutely irreducible if it remains irreducible after base change to an algebraic closure of
k.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,RepresentationProof uses:
Representation.IsIrreducible,AlgebraicClosure,TensorProduct, Slop.OddRep.baseChange20 instances, coercions and auxiliary constants left out.
def IsAbsolutelyIrreducible (ρ : Representation k G V) : Prop := …
- lemma
Slop.OddRep.isIrreducible_iff_forallline 109 sourcestandard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,Iff,Representation.IsIrreducible,And,Nontrivial,Submodule,Membership.mem,LinearMap,RingHom.id,Or,Eq,Bot.bot,Top.topProof uses:
Iff.intro,And.intro,Iff.mp,Submodule.nontrivial_iff,nontrivial_of_ne,IsSimpleOrder.bot_ne_top,Subrepresentation,Subrepresentation.toSubmodule_injective,Subrepresentation.toSubmodule,Subrepresentation.mk,IsSimpleOrder.eq_bot_or_eq_top,Or.inl,congrArg,Or.inr,Iff.mpr,Nontrivial.mk,Exists.intro,Exists,Ne,bot_ne_topand 2 more47 instances, coercions and auxiliary constants left out.
Tactic trace: 28 steps
Open to load the checked before-and-after goal states.
- lemma
Slop.OddRep.smul_tmul_mem_range_iffFact 1.1 line 148 sourceSource documentation
Fact 1.1. If
e ≠ 0inV, then forc : l, the elementc ⊗ eofl ⊗[k] Vlies in the image of the canonical mapV → l ⊗[k] V,v ↦ 1 ⊗ v, if and only ifccomes fromk.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,AddCommGroup,Module,Algebra,Ne,OfNat.ofNat,Iff,Membership.mem,TensorProduct,Submodule,LinearMap.range,RingHom.id,LinearMap,TensorProduct.mk,TensorProduct.tmul,Exists,Eq,RingHom,Algebra.algebraMapProof uses:
Iff.intro,Module.Dual,Module.Projective.exists_dual_eq_one,LinearMap.comp,TensorProduct.rid,LinearMap.lTensor,rfl,Exists.intro,congrArg,Eq.mpr,HSMul.hSMul,id,Algebra.algebraMap_eq_smul_one,Eq.mp,one_smul,congr,congrFun',TensorProduct.mk_apply,TensorProduct.tmul_smul,TensorProduct.smul_tmul'and 1 more112 instances, coercions and auxiliary constants left out.
Tactic trace: 15 steps
Open to load the checked before-and-after goal states.
lemma smul_tmul_mem_range_iff (l : Type*) [Field l] [Algebra k l] {e : V} (he : e ≠ 0) (c : l) : c ⊗ₜ[k] e ∈ LinearMap.range (TensorProduct.mk k l V 1) ↔ ∃ a : k, algebraMap k l a = c := by … - lemma
Slop.OddRep.exists_smul_eq_of_commuteLemma 1.4 line 179 sourceSource documentation
Lemma 1.4. If
ρis irreducible and someg : Ghas a one-dimensional fixed subspace (the eigenspace ofρ gfor the eigenvalue1), then everyG-equivariant endomorphism ofVis scalar.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,Representation.IsIrreducible,Eq,Nat,Module.finrank,Subtype,Membership.mem,Submodule,Module.End.eigenspace,LinearMap,RingHom.id,OfNat.ofNat,Module.End,Commute,Exists,HSMul.hSMulProof uses:
Nontrivial,Or,Bot.bot,Top.top,And,Iff.mp, Slop.OddRep.isIrreducible_iff_forall,Iff,Eq.mpr,id,congrArg,propext,Module.End.mem_eigenspace_iff,one_smul,Iff.rfl,HMul.hMul,LinearMap.congr_fun,Eq.mp,Eq.refl,Neand 18 more131 instances, coercions and auxiliary constants left out.
Tactic trace: 43 steps
Open to load the checked before-and-after goal states.
lemma exists_smul_eq_of_commute (hirr : ρ.IsIrreducible) {g : G} (hg : finrank k (Module.End.eigenspace (ρ g) 1) = 1) (T : Module.End k V) (hT : ∀ h : G, Commute (ρ h) T) : ∃ μ : k, T = μ • (1 : Module.End k V) := by … - lemma
Slop.OddRep.adjoinRange_eq_topLemma 1.5 line 240 sourceSource documentation
Lemma 1.5. Let
A ⊆ End_k(V)be thek-algebra generated byρ(G). IfVis finite-dimensional,ρis irreducible, and everyG-equivariant endomorphism ofVis scalar, thenA = End_k(V).standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,FiniteDimensional,Representation.IsIrreducible,Module.End,Commute,LinearMap,RingHom.id,Exists,Eq,HSMul.hSMul,OfNat.ofNat,Subalgebra, Slop.OddRep.adjoinRange,Top.topProof uses:
Nontrivial,Submodule,Membership.mem,Or,Bot.bot,And,Iff.mp, Slop.OddRep.isIrreducible_iff_forall,Eq.mpr,id,congrArg,rfl,Algebra.subset_adjoin,Set.range,Exists.intro,IsScalarTower,Subtype,IsScalarTower.mk,IsSimpleModule,Iff.mprand 35 more129 instances, coercions and auxiliary constants left out.
Tactic trace: 34 steps
Open to load the checked before-and-after goal states.
lemma adjoinRange_eq_top [FiniteDimensional k V] (hirr : ρ.IsIrreducible) (hEnd : ∀ T : Module.End k V, (∀ h : G, Commute (ρ h) T) → ∃ μ : k, T = μ • (1 : Module.End k V)) : adjoinRange ρ = ⊤ := by …Mentions: Slop.OddRep.adjoinRange
- lemma
Slop.OddRep.adjoinRange_baseChange_eq_topLemma 1.6 line 296 sourceSource documentation
Lemma 1.6. If the
k-algebra generated byρ(G)is all ofEnd_k(V), then after base change along any field extensionl/k, thel-algebra generated by(ρ.baseChange l)(G)is all ofEnd_l(l ⊗[k] V).standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,FiniteDimensional,Algebra,Eq,Subalgebra,Module.End, Slop.OddRep.adjoinRange,Top.top,TensorProduct, Slop.OddRep.baseChangeProof uses:
AlgHom,Module.End.baseChangeHom,rfl,LinearMap.baseChange,LinearMap,RingHom.id,Eq.mpr,id,congrArg,Eq.refl,Membership.mem,LE.le,Subalgebra.map,Subalgebra.restrictScalars,Algebra.adjoin,Set.range,Slop.OddRep.adjoinRange.eq_1,Set.image,Eq.symm,Algebra.adjoin_imageand 31 more125 instances, coercions and auxiliary constants left out.
Tactic trace: 41 steps
Open to load the checked before-and-after goal states.
lemma adjoinRange_baseChange_eq_top [FiniteDimensional k V] (l : Type*) [Field l] [Algebra k l] (h : adjoinRange ρ = ⊤) : adjoinRange (baseChange l ρ) = ⊤ := by …Mentions: Slop.OddRep.adjoinRange, Slop.OddRep.baseChange
- lemma
Slop.OddRep.isIrreducible_of_adjoinRange_eq_topDocumented declaration: isIrreducible_of_adjoinRange_eq_top line 349 sourceSource documentation
If the algebra generated by
ρ(G)is all ofEnd_k(V)(andV ≠ 0), thenρis irreducible: any nonzero invariant subspaceWcontains, for0 ≠ w ∈ Wand anyv, an elementT w = vwithT ∈ A, henceW = ⊤.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,Nontrivial,Eq,Subalgebra,Module.End, Slop.OddRep.adjoinRange,Top.top,Representation.IsIrreducibleProof uses:
Iff.mpr,And,Submodule,Membership.mem,LinearMap,RingHom.id,Or,Bot.bot, Slop.OddRep.isIrreducible_iff_forall,And.intro,inferInstance,Algebra.adjoin,Set.range,Algebra.adjoin_induction,Set,RingHom,Algebra.algebraMap,HSMul.hSMul,of_eq_true,eq_selfand 35 more123 instances, coercions and auxiliary constants left out.
Tactic trace: 40 steps
Open to load the checked before-and-after goal states.
lemma isIrreducible_of_adjoinRange_eq_top [Nontrivial V] (h : adjoinRange ρ = ⊤) : ρ.IsIrreducible := by …Mentions: Slop.OddRep.adjoinRange
- lemma
Slop.OddRep.isIrreducible_of_baseChangeDocumented declaration: isIrreducible_of_baseChange line 405 sourceSource documentation
If the base change of
ρalong some field extensionl/kis irreducible, thenρitself is irreducible (an invariant subspaceW ⊊ Vgives rise to the invariant subspacel ⊗[k] W ⊊ l ⊗[k] V).standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,Algebra,Representation.IsIrreducible,TensorProduct, Slop.OddRep.baseChangeProof uses:
Nontrivial,Submodule,Membership.mem,LinearMap,RingHom.id,Or,Eq,Bot.bot,Top.top,And,Iff.mp, Slop.OddRep.isIrreducible_iff_forall,Iff.mpr,And.intro,Classical.byContradiction,Not,Subsingleton,Eq.mp,congrArg,propextand 37 more105 instances, coercions and auxiliary constants left out.
Tactic trace: 35 steps
Open to load the checked before-and-after goal states.
lemma isIrreducible_of_baseChange (l : Type*) [Field l] [Algebra k l] (h : (baseChange l ρ).IsIrreducible) : ρ.IsIrreducible := by …Mentions: Slop.OddRep.baseChange
- theorem
Slop.OddRep.isIrreducible_baseChange_of_finrank_eigenspace_eq_oneThe quantitative version of the hard direction: under the hypotheses of Theorem 1.3, the base change ofρto any field extensionl/kis irreducible line 447 sourceSource documentation
The quantitative version of the hard direction: under the hypotheses of Theorem 1.3, the base change of
ρto any field extensionl/kis irreducible.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,FiniteDimensional,Algebra,Representation.IsIrreducible,Eq,Nat,Module.finrank,Subtype,Membership.mem,Submodule,Module.End.eigenspace,LinearMap,RingHom.id,OfNat.ofNat,TensorProduct, Slop.OddRep.baseChangeProof uses:
Module.End,Commute,Exists,HSMul.hSMul, Slop.OddRep.exists_smul_eq_of_commute,Subalgebra, Slop.OddRep.adjoinRange,Top.top, Slop.OddRep.adjoinRange_eq_top, Slop.OddRep.adjoinRange_baseChange_eq_top,Nontrivial,And.left,Or,Bot.bot,Iff.mp,And, Slop.OddRep.isIrreducible_iff_forall,Ne,exists_ne,Module.Dualand 14 more135 instances, coercions and auxiliary constants left out.
Tactic trace: 13 steps
Open to load the checked before-and-after goal states.
theorem isIrreducible_baseChange_of_finrank_eigenspace_eq_one [FiniteDimensional k V] (l : Type*) [Field l] [Algebra k l] (hirr : ρ.IsIrreducible) {g : G} (hg : finrank k (Module.End.eigenspace (ρ g) 1) = 1) : (baseChange l ρ).IsIrreducible := by …Mentions: Slop.OddRep.baseChange
- theorem
Slop.OddRep.isIrreducible_iff_isAbsolutelyIrreducible_slopProposition 1.2 / Theorem 1.3 line 480 sourceSource documentation
Proposition 1.2 / Theorem 1.3. Let
Vbe a finite-dimensional vector space overkandρ : G →* GL(V)a representation. If someg : Ghas a one-dimensional fixed subspaceV^g, thenVis irreducible if and only if it is absolutely irreducible.standard axioms: Classical.choice, Quot.sound, propext what this means
Statement uses:
Field,Monoid,AddCommGroup,Module,Representation,FiniteDimensional,Eq,Nat,Module.finrank,Subtype,Membership.mem,Submodule,Module.End.eigenspace,LinearMap,RingHom.id,OfNat.ofNat,Iff,Representation.IsIrreducible, Slop.OddRep.IsAbsolutelyIrreducibleProof uses:
id,Iff.intro,AlgebraicClosure,TensorProduct, Slop.OddRep.baseChange, Slop.OddRep.isIrreducible_baseChange_of_finrank_eigenspace_eq_one, Slop.OddRep.isIrreducible_of_baseChange60 instances, coercions and auxiliary constants left out.
Tactic trace: 8 steps
Open to load the checked before-and-after goal states.
theorem isIrreducible_iff_isAbsolutelyIrreducible_slop [FiniteDimensional k V] {g : G} (hg : finrank k (Module.End.eigenspace (ρ g) 1) = 1) : ρ.IsIrreducible ↔ IsAbsolutelyIrreducible ρ := by …Mentions: Slop.OddRep.IsAbsolutelyIrreducible