FLT/Mathlib/GroupTheory/GroupAction/Quotient.lean

GitHub source file

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

2 declarations, 0 contain sorry, 0 declared as axioms

Group actions on quotients and equivariant homs

Imports (1)
Imported by 2 files
  1. def MulAction.homEquivProdFixedPoints Documented declaration: homEquivProdFixedPoints line 20 source

    Source documentation

    Given a representative for each orbit of X under G, and for each x : X a choice of σ that sends x to the representative, we obtain a bijection between G-equivariant homs from X and the product of Stab(x)-fixed points over each orbit representative x.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Group, MulAction, MulAction.orbitRel, Eq, HSMul.hSMul, Equiv, MulActionHom, id, Set.range, MulAction.fixedPoints, Subtype, Membership.mem, Subgroup, MulAction.stabilizer, Set

    Proof uses: Equiv.mk, Subtype.mk, MulActionHom.mk, Inv.inv

    42 instances, coercions and auxiliary constants left out.

    Tactic trace: 20 steps

    Open to load the checked before-and-after goal states.

    def MulAction.homEquivProdFixedPoints {G X Y : Type*} [Group G] [MulAction G X] [MulAction G Y]
        (σ : X → G) (hσ : ∀ a b, orbitRel G X a b → σ a • a = σ b • b) :
        (X →[G] Y) ≃ Π i : Set.range (fun i ↦ σ i • i), fixedPoints (stabilizer G i.1) Y where
    …
  2. def MulAction.sigmaRangeQuotientStabilizer Documented declaration: sigmaRangeQuotientStabilizer line 43 source

    Source documentation

    Given a representative for each orbit of X under G, and for each x : X a choice of σ that sends x to the representative, we obtain a bijection between X and ∐ G/stab(x) where the disjoint union runs through the representatives.

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: Group, MulAction, MulAction.orbitRel, Eq, HSMul.hSMul, Equiv, Sigma, Set.range, HasQuotient.Quotient, Subgroup, MulAction.stabilizer, Membership.mem, Set

    Proof uses: Equiv.mk, MulAction.ofQuotientStabilizer, Sigma.fst, Sigma.snd, Sigma.mk, Subtype.mk, Inv.inv

    30 instances, coercions and auxiliary constants left out.

    Tactic trace: 16 steps

    Open to load the checked before-and-after goal states.

    def MulAction.sigmaRangeQuotientStabilizer
        {G X : Type*} [Group G] [MulAction G X]
        (σ : X → G) (hσ : ∀ a b, orbitRel G X a b → σ a • a = σ b • b) :
        (Σ i : Set.range (fun i ↦ σ i • i), G ⧸ stabilizer G i.1) ≃ X :=
    …