Continuous representations (algebraic + topology) #
This file defines ContinuousRep R G V: a Representation R G V together with continuity of the
action map G × V → V.
This file contains basic definitions and properties.
The category-theoretic packaging lives in PAdicRep.ContinuousReps.CRep.
Actions induced by a representation #
For many purposes (e.g. stabilizers, orbits, group cohomology), it is convenient to view a
representation ρ : Representation R G V as a G-action on V.
Mathlib provides constructions in the other direction (MulAction/DistribMulAction →
Representation), but (as of the current mathlib version in this project) it does not provide
Representation → MulAction/DistribMulAction.
We therefore add lightweight definitions here. These are intended to be used via local instances:
letI : MulAction G V := (ρ.mulAction) or letI : DistribMulAction G V := (ρ.distribMulAction).
Forget the linear structure of a representation, as a monoid hom to Function.End V.
Equations
- ρ.toFunctionEnd = { toFun := fun (g : G) (x : V) => (ρ g) x, map_one' := ⋯, map_mul' := ⋯ }
Instances For
The MulAction of G on V induced by a representation ρ, i.e. g • v := ρ g v.
This is best used via a local instance:
letI : MulAction G V := ρ.mulAction.
Equations
Instances For
The DistribMulAction (i.e. a ℤ[G]-module structure) on V induced by ρ.
This is best used via a local instance:
letI : DistribMulAction G V := ρ.distribMulAction.
Equations
- ρ.distribMulAction = { toMulAction := ρ.mulAction, smul_zero := ⋯, smul_add := ⋯ }
Instances For
The stabilizer subgroup of a vector v : V in the representation ρ.
This is defined using the MulAction induced by ρ, and is intended to be used without
introducing a global MulAction instance.
Equations
- ρ.stabilizer v = MulAction.stabilizer G v
Instances For
A topology-free fiber/coset identity for group actions #
A set-theoretic decomposition for action preimages #
A continuous representation of a group G on an R-module V.
This is a Representation R G V together with the continuity of the action map
(g, v) ↦ ρ g v.
We use an abbrev (rather than a new structure) so that the underlying representation is
definitionally just a Representation, matching the style of Mathlib.RepresentationTheory.
Equations
- ContinuousRep R G V = { ρ : Representation R G V // Continuous fun (p : G × V) => (ρ p.1) p.2 }
Instances For
Equations
- ContinuousRep.instCoeRepresentation = { coe := fun (ρ : ContinuousRep R G V) => ↑ρ }
Equations
- ContinuousRep.instCoeFunForallLinearMapId = { coe := fun (ρ : ContinuousRep R G V) => ⇑↑ρ }
Lift a representation together with continuity of the action map to ContinuousRep.
Equations
- ContinuousRep.of ρ hcont = ⟨ρ, hcont⟩
Instances For
The action map G × V → V associated to a continuous representation.
Instances For
Basic continuity lemmas #
Realize the underlying module as a topological module #
The underlying topological R-module of a ContinuousRep, bundled as an object of
TopModuleCat R.
This is just TopModuleCat.of R V, but having it as a named abbreviation makes later
constructions (e.g. in CRep) shorter.
Equations
- _ρ.toTopModuleCat = TopModuleCat.of R V
Instances For
Building ContinuousRep from TopModuleCat #
Given an object M : TopModuleCat R and a continuous G-action by R-linear maps on the
underlying type, produce a ContinuousRep R G M.
This is a convenience wrapper around ContinuousRep.of, specialized to the case where the
representation space is already bundled as a TopModuleCat object.
Equations
- ContinuousRep.ofTopModuleCat M ρ hcont = ContinuousRep.of ρ hcont
Instances For
Trivial continuous representation #
A predicate for continuous representations which fix every element.
Instances For
Bundle an (algebraically) trivial representation as a continuous representation.
Equations
- ContinuousRep.ofIsTrivial ρ = ⟨ρ, ⋯⟩
Instances For
The trivial continuous representation.
Equations
Instances For
Restrict a continuous representation to a subgroup.
Instances For
Descent to a quotient group #
If a continuous representation is trivial on a normal subgroup N, it factors through
G ⧸ N.
Equations
- ρ.ofQuotient N = ContinuousRep.of ((↑ρ).ofQuotient N) ⋯
Instances For
Stabilizers #
The stabilizer subgroup of v in ρ.
Equations
- ρ.stabilizer v = (↑ρ).stabilizer v
Instances For
Discrete target spaces #
Three conditions (discrete target) #
Assume [DiscreteTopology V]. For an algebraic representation ρ : Representation R G V, we
consider the following three conditions:
- (Action continuity) the action map
G × V → V,(g, v) ↦ ρ g v, is continuous; - (Orbit-map continuity) for every
v : V, the orbit mapG → V,g ↦ ρ g v, is continuous; - (Open stabilizers) for every
v : V, the stabilizer subgroupρ.stabilizer vis open inG.
We will prove the implications as three separate theorems, in the order 1 → 2 → 3 → 1.
At the moment these are only stated, with proofs left as sorry.
Remark: the direction (1) → (2) is essentially just “fix v and precompose by g ↦ (g, v)”.
In this file it is already available in the bundled setting as
ContinuousRep.continuous_smul_const.
The implication chain 2 → 3 → 1 #
If a stabilizer is open, then all fibers of the corresponding orbit map are open.
(2) → (3): continuity of all orbit maps implies openness of all stabilizers.
(3) → (1): openness of all stabilizers implies continuity of the action map.
This is the nontrivial direction: for a discrete target it suffices to show that every fiber is open, and each fiber is a (possibly empty) left coset of a stabilizer, hence open.
If every stabilizer is open, then there exists a (discrete) topology on V for which the
action map G × V → V is continuous.
This is the “mathematically sound” packaging of
continuous_action_discreteTopology_of_forall_isOpen_stabilizer: it does not assume a topology on
V upfront.
If every stabilizer is open, then the same representation is a ContinuousRep once the
representation space is given the discrete topology.
This packages continuous_action_discreteTopology_of_forall_isOpen_stabilizer using
ContinuousRep.of.