FLT/Patching/Utils/StructureFiniteness.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

42 declarations, 0 contain sorry, 0 declared as axioms

Finiteness of algebraic structures on finite types

Instances asserting that the type of monoid / group / ring / … structures on a fixed finite type is itself finite.

Imports (6)
Imported by 2 files
  1. instance (instance at line 26) line 26 source
  2. instance (instance at line 31) line 31 source
  3. instance (instance at line 36) line 36 source
  4. instance (instance at line 39) line 39 source
  5. instance (instance at line 47) line 47 source
  6. def ModuleTypeCardLT The type of all finite R-modules of cardinality less than N, presented as a sigma type over Fin N line 66 source

    Source documentation

    The type of all finite R-modules of cardinality less than N, presented as a sigma type over Fin N.

    no axioms what this means

    Statement uses: Ring, Nat

    Proof uses: Sigma, Fin, AddCommGroup, Module

    3 instances, coercions and auxiliary constants left out.

    def ModuleTypeCardLT (N : ℕ) : Type _ :=
    …
  7. instance (instance at line 69) line 69 source
  8. instance (instance at line 72) line 72 source
  9. instance (instance at line 74) line 74 source
  10. def ModuleTypeCardLT.ofModule line 79 source

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

    Statement uses: Ring, Nat, AddCommGroup, Module, Finite, LT.lt, Nat.card, ModuleTypeCardLT

    Proof uses: Sigma.mk, Fin, Sigma, Fin.mk, Equiv.addCommGroup, Equiv.symm, Finite.equivFin, Equiv.module'

    7 instances, coercions and auxiliary constants left out.

  11. def ModuleTypeCardLT.equivOfModule line 86 source

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

    Statement uses: Ring, Nat, AddCommGroup, Module, Finite, LT.lt, Nat.card, LinearEquiv, RingHom.id, Fin, Sigma.fst, Sigma, ModuleTypeCardLT.ofModule

    Proof uses: LinearEquiv.symm, Equiv.addCommMonoid, Equiv.symm, Equiv, Finite.equivFin, Equiv.module', Equiv.linearEquiv'

    14 instances, coercions and auxiliary constants left out.

    Tactic trace: 3 steps

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

  12. instance (instance at line 97) line 97 source
  13. def AlgebraTypeCardLT The type of all finite R-algebras of cardinality less than N, presented as a sigma type over Fin N line 105 source

    Source documentation

    The type of all finite R-algebras of cardinality less than N, presented as a sigma type over Fin N.

    no axioms what this means

    Statement uses: CommRing, Nat

    Proof uses: Sigma, Fin, Ring, Algebra

    3 instances, coercions and auxiliary constants left out.

    def AlgebraTypeCardLT (N : ℕ) : Type _ :=
    …
  14. instance (instance at line 108) line 108 source
  15. instance (instance at line 111) line 111 source
  16. instance (instance at line 113) line 113 source
  17. def AlgebraTypeCardLT.ofAlgebra line 118 source

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

    Statement uses: CommRing, Nat, Ring, Algebra, Finite, LT.lt, Nat.card, AlgebraTypeCardLT

    Proof uses: Sigma.mk, Fin, Sigma, Fin.mk, Equiv.ring, Equiv.symm, Finite.equivFin, Equiv.algebra

    7 instances, coercions and auxiliary constants left out.

  18. def AlgebraTypeCardLT.equivOfAlgebra line 126 source

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

    Statement uses: CommRing, Nat, Ring, Algebra, Finite, LT.lt, Nat.card, AlgEquiv, Fin, Sigma.fst, Sigma, AlgebraTypeCardLT.ofAlgebra

    Proof uses: AlgEquiv.symm, Equiv.semiring, Equiv.symm, Equiv, Finite.equivFin, Equiv.algebra, Equiv.algEquiv

    10 instances, coercions and auxiliary constants left out.

    Tactic trace: 6 steps

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

  19. instance (instance at line 135) line 135 source
  20. instance (instance at line 145) line 145 source
  21. def TopologicalModuleTypeCardLT The type of all finite Hausdorff topological R-modules of cardinality less than N, with continuous scalar multiplication line 158 source

    Source documentation

    The type of all finite Hausdorff topological R-modules of cardinality less than N, with continuous scalar multiplication.

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

    Statement uses: CommRing, TopologicalSpace, Nat

    Proof uses: PSigma, Fin, AddCommGroup, T2Space, Module, ContinuousSMul

    15 instances, coercions and auxiliary constants left out.

    Tactic trace: 9 steps

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

    def TopologicalModuleTypeCardLT (N : ℕ) : Type _ :=
    …
  22. instance (instance at line 162) line 162 source
  23. instance (instance at line 170) line 170 source
  24. instance (instance at line 174) line 174 source
  25. instance (instance at line 175) line 175 source
  26. instance (instance at line 176) line 176 source
  27. instance (instance at line 177) line 177 source
  28. instance (instance at line 178) line 178 source
  29. def TopologicalModuleTypeCardLT.ofModule line 186 source

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

    Statement uses: CommRing, TopologicalSpace, Nat, AddCommGroup, Module, T2Space, ContinuousSMul, Finite, LT.lt, Nat.card, TopologicalModuleTypeCardLT

    Proof uses: PSigma.mk, Fin, PSigma, Fin.mk, Equiv.addCommGroup, Equiv.symm, Finite.equivFin, TopologicalSpace.coinduced, Equiv, inferInstance, Equiv.module'

    36 instances, coercions and auxiliary constants left out.

    Tactic trace: 9 steps

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

  30. def TopologicalModuleTypeCardLT.equivOfModule line 207 source

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

    Statement uses: CommRing, TopologicalSpace, Nat, AddCommGroup, Module, T2Space, ContinuousSMul, Finite, LT.lt, Nat.card, ContinuousLinearEquiv, RingHom.id, Fin, PSigma.fst, PSigma, TopologicalModuleTypeCardLT.ofModule

    Proof uses: LinearEquiv, Sigma.fst, Sigma, ModuleTypeCardLT.ofModule, Equiv.addCommMonoid, Equiv.symm, Equiv, Finite.equivFin, Equiv.module', LinearEquiv.symm, Equiv.linearEquiv', Homeomorph, inferInstance, Equiv.toHomeomorph, ContinuousLinearEquiv.mk

    47 instances, coercions and auxiliary constants left out.

    Tactic trace: 6 steps

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

  31. instance (instance at line 222) line 222 source
  32. def TopologicalAlgebraTypeCardLT The type of all finite Hausdorff topological R-algebras of cardinality less than N, with continuous scalar multiplication line 236 source

    Source documentation

    The type of all finite Hausdorff topological R-algebras of cardinality less than N, with continuous scalar multiplication.

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

    Statement uses: CommRing, TopologicalSpace, Nat

    Proof uses: PSigma, Fin, Ring, T2Space, Algebra, ContinuousSMul

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 9 steps

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

    def TopologicalAlgebraTypeCardLT (N : ℕ) :
        Type _ :=
    …
  33. instance (instance at line 241) line 241 source
  34. instance (instance at line 249) line 249 source
  35. instance (instance at line 253) line 253 source
  36. instance (instance at line 254) line 254 source
  37. instance (instance at line 255) line 255 source
  38. instance (instance at line 256) line 256 source
  39. instance (instance at line 257) line 257 source
  40. def TopologicalAlgebraTypeCardLT.ofAlgebra line 264 source

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

    Statement uses: CommRing, TopologicalSpace, Nat, Ring, Algebra, T2Space, ContinuousSMul, Finite, LT.lt, Nat.card, TopologicalAlgebraTypeCardLT

    Proof uses: PSigma.mk, Fin, PSigma, Fin.mk, Equiv.ring, Equiv.symm, Finite.equivFin, TopologicalSpace.coinduced, Equiv, inferInstance, Equiv.algebra

    14 instances, coercions and auxiliary constants left out.

  41. def TopologicalAlgebraTypeCardLT.equivOfAlgebra line 278 source

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

    Statement uses: CommRing, TopologicalSpace, Nat, Ring, Algebra, T2Space, ContinuousSMul, Finite, LT.lt, Nat.card, AlgEquiv, Fin, PSigma.fst, PSigma, TopologicalAlgebraTypeCardLT.ofAlgebra

    Proof uses: AlgEquiv.symm, Sigma.fst, Sigma, AlgebraTypeCardLT.ofAlgebra, Equiv.semiring, Equiv.symm, Equiv, Finite.equivFin, Equiv.algebra, Equiv.algEquiv

    12 instances, coercions and auxiliary constants left out.

  42. lemma TopologicalAlgebraTypeCardLT.isHomeomorph_equivOfAlgebra line 286 source

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

    Statement uses: CommRing, TopologicalSpace, Nat, Ring, Algebra, T2Space, ContinuousSMul, Finite, LT.lt, Nat.card, IsHomeomorph, Fin, PSigma.fst, PSigma, TopologicalAlgebraTypeCardLT.ofAlgebra, AlgEquiv, TopologicalAlgebraTypeCardLT.equivOfAlgebra

    Proof uses: Homeomorph.isHomeomorph, inferInstance, Equiv.toHomeomorph, Finite.equivFin, Set, Iff.rfl, IsOpen, Set.preimage, Equiv

    19 instances, coercions and auxiliary constants left out.