Module

AllFinite.lean

Nyll.ProCGroups.FiniteGroups.AllFinite
10 declarations indexed from sourceView source ↗

The class of all finite groups

This module defines FiniteGroupClass.allFinite and proves its standard closure properties: formation, subgroup, normal-subgroup, quotient, finite-subdirect-product, extension, and hereditary closure. It also supplies the trivial-quotient instance used by pro-\(C\) constructions when no restriction beyond finiteness is intended.

Declarations

ProCGroups.FiniteGroupClass.allFinite

The class of all finite groups.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
def allFinite : FiniteGroupClass.{u} where
  pred := fun G [_] => Finite G
  finite_of_mem := fun hG => hG
  mem_of_mulEquiv := by
    intro G H _ _ e hG
    let : Finite G := hG
    exact Finite.of_equiv G e.toEquiv
ProCGroups.FiniteGroupClass.allFinite_formation

The class of all finite groups is an extension-closed formation.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_formation : Formation allFinite
ProCGroups.FiniteGroupClass.allFinite_containsTrivialQuotients

The class of all finite groups contains the trivial quotients.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
instance allFinite_containsTrivialQuotients :
    ContainsTrivialQuotients (allFinite : FiniteGroupClass.{u})
ProCGroups.FiniteGroupClass.allFinite_isomClosed

The class of all finite groups is closed under isomorphism.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_isomClosed : IsomClosed allFinite
ProCGroups.FiniteGroupClass.allFinite_subgroupClosed

The class of all finite groups is closed under subgroups.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_subgroupClosed : SubgroupClosed allFinite
ProCGroups.FiniteGroupClass.allFinite_normalSubgroupClosed

The class of all finite groups is closed under normal subgroups.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_normalSubgroupClosed : NormalSubgroupClosed allFinite
ProCGroups.FiniteGroupClass.allFinite_quotientClosed

The class of all finite groups is closed under quotients.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_quotientClosed : QuotientClosed allFinite
ProCGroups.FiniteGroupClass.allFinite_finiteSubdirectProductClosed

The class of all finite groups is closed under finite subdirect products.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_finiteSubdirectProductClosed : FiniteSubdirectProductClosed allFinite
ProCGroups.FiniteGroupClass.allFinite_extensionClosed

The class of all finite groups is extension closed.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_extensionClosed : ExtensionClosed allFinite
ProCGroups.FiniteGroupClass.allFinite_hereditary

The class of all finite groups is hereditary.

Source context 3 commands

Surrounding namespaces, section variables, and local commands at this declaration.

namespace ProCGroups
universe u
namespace FiniteGroupClass
theorem allFinite_hereditary : Hereditary allFinite