ModuleUniverse.lean
Nyll.ProCGroups.FreeProC.Universe
12 declarations indexed from sourceView source ↗ Module documentation
Universe-polymorphic targets for free pro-\(C\) groups
The original IsFreeProCGroup API keeps the source, free group, finite-group class, and target in one universe. This module factors the universal property for one fixed target into HasFreeLiftTo, then supplies an explicit extension whose target lives in an independent universe. Cross-universe membership is expressed by FiniteGroupClass.MemAcrossUniverses, so no ULift appears in the public universal property.
An ordinary IsFreeProCGroup yields this extension only in its native target universe. There is deliberately no theorem promoting it to every target universe: such a promotion is not a consequence of the same-universe universal property.
Declarations
ProCGroups.FreeProC.HasFreeLiftTo
DocumentationThe universal extension property from F to one fixed pro-\(C\) target G.
Keeping this target-specific property separate lets constructions prove exactly the cross-universe lifting statement they support, without claiming a nonexistent automatic promotion from the native universal property.
Source context 6 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
ProCGroups.FreeProC.HasFreeLiftTo.lift
DocumentationExtend a continuous generator map to the fixed target.
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace HasFreeLiftTo
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable {ι : X → F}
variable {G : Type v} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
variable [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
ProCGroups.FreeProC.HasFreeLiftTo.lift_spec
DocumentationThe fixed-target lift is continuous and has the prescribed generator values.
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace HasFreeLiftTo
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable {ι : X → F}
variable {G : Type v} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
variable [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
ProCGroups.FreeProC.HasFreeLiftTo.lift_unique
DocumentationThe fixed-target lift is unique among continuous homomorphisms with the prescribed values.
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace HasFreeLiftTo
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable {ι : X → F}
variable {G : Type v} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
variable [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
ProCGroups.FreeProC.HasFreeLiftTo.liftHom
DocumentationBundle the fixed-target lift as a continuous monoid homomorphism.
Source context 12 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace HasFreeLiftTo
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable {ι : X → F}
variable {G : Type v} [Group G] [TopologicalSpace G] [IsTopologicalGroup G]
variable [CompactSpace G] [T2Space G] [TotallyDisconnectedSpace G]
ProCGroups.FreeProC.IsFreeProCGroupForTargetUniverse
DocumentationThe free pro-\(C\) universal property for targets in an explicitly independent universe.
Lean cannot quantify over universe levels inside a proposition, so the target universe v is a universe parameter of this structure. The native universal property is retained as a parent, so this stronger witness is directly usable anywhere an IsFreeProCGroup is expected.
Source context 6 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
ProCGroups.FreeProC.IsFreeProCGroupForTargetUniverse.lift
DocumentationExtend a continuous generator map to a homomorphism into a target in the chosen target universe.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace IsFreeProCGroupForTargetUniverse
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
variable {ι : X → F}
ProCGroups.FreeProC.IsFreeProCGroupForTargetUniverse.lift_spec
DocumentationThe cross-universe lift is continuous and has the prescribed generator values.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace IsFreeProCGroupForTargetUniverse
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
variable {ι : X → F}
ProCGroups.FreeProC.IsFreeProCGroupForTargetUniverse.lift_unique
DocumentationThe cross-universe lift is unique among continuous homomorphisms with the prescribed values.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace IsFreeProCGroupForTargetUniverse
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
variable {ι : X → F}
ProCGroups.FreeProC.IsFreeProCGroupForTargetUniverse.liftHom
DocumentationBundle the cross-universe lift as a continuous monoid homomorphism.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace IsFreeProCGroupForTargetUniverse
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
variable {ι : X → F}
ProCGroups.FreeProC.IsFreeProCGroup.hasFreeLiftTo
DocumentationThe ordinary universal property, viewed as a fixed-target property in its native universe.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace IsFreeProCGroup
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
variable {ι : X → F}
ProCGroups.FreeProC.IsFreeProCGroup.toForTargetUniverse
DocumentationIn the native target universe, the original property yields the explicit target-universe property.
Source context 11 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open Set
open scoped Topology
namespace ProCGroups.FreeProC
universe u v
open ProCGroups
variable {C : FiniteGroupClass.{u}}
namespace IsFreeProCGroup
variable {X : Type u} [TopologicalSpace X]
variable {F : Type u} [Group F] [TopologicalSpace F] [IsTopologicalGroup F]
variable [CompactSpace F] [T2Space F] [TotallyDisconnectedSpace F]
variable {ι : X → F}