Forcing the discrete topology on a module #
Galois cohomology takes its coefficients in a discrete module on which a profinite group acts
with open point stabilizers. Many coefficient modules come with no topology of their own, and some
come with a different one that must not be used (the units of an algebraic closure of a p-adic
field carry the p-adic topology). This file supplies the wrapper that imposes the discrete
topology on a bare abelian group M:
TauCeti.ForcedDiscrete M := M, with the topology ⊥.
TauCeti.ForcedDiscrete is a def, not an abbrev, so no topology instance on M is visible on
ForcedDiscrete M. The discrete topology is therefore the only one in play, by construction
rather than by one instance winning against another. The additive structure and an action of G
on M are transferred.
For a topological group G, the transferred action is continuous exactly when every point of M
has an open stabilizer (TauCeti.ForcedDiscrete.continuousSMul_iff). So ForcedDiscrete M is a
discrete G-module in the sense that continuous cohomology asks for, and the continuous
cohomology of G with coefficients in ForcedDiscrete M is the cohomology of G acting with
open stabilizers on the bare group M. All of the continuous-cohomology API stated for a module
with [DiscreteTopology M] [ContinuousSMul G M] applies to it unchanged: the explicit H⁰, H¹
and H², the long exact sequence of a TauCeti.ContCohomology.DiscreteShortExact, and, for
compact G, the comparison with the colimit over finite quotients
TauCeti.ContCohomology.continuousFiniteQuotientColimit.
A coefficient module whose action is not an instance on M (for example the points of an elliptic
curve over a separable closure, where an instance would put the Galois action on the point type
itself) is a type synonym of ForcedDiscrete M carrying that action.
Main definitions #
TauCeti.ForcedDiscrete:Mwith the discrete topology imposed.TauCeti.ForcedDiscrete.addEquiv: the identificationM ≃+ ForcedDiscrete M.
Main results #
TauCeti.ForcedDiscrete.continuousSMul_iff: the action onForcedDiscrete Mis continuous exactly when the point stabilizers of the action onMare open.
Implementation notes #
Mathlib's WithDiscreteTopology M (that is, WithTopology M ⊥) also puts the discrete topology
on a copy of M, but it is a one-field structure that transfers order structure and no algebraic
structure. A coefficient module needs the group structure and the action, so this file uses a
def synonym, as the other coefficient modules of the project do, and transfers both with
inferInstanceAs.
A bare abelian group M with the discrete topology imposed. It is a type synonym for M,
so the topology ⊥ lives on it and no topology on M itself is ever used.
Instances For
The identification of M with ForcedDiscrete M.
Instances For
The action of G on ForcedDiscrete M is the action on M.
The stabilizer of a point of ForcedDiscrete M is the stabilizer of the point of M.
ForcedDiscrete M is a discrete G-module exactly when G acts on M with open
stabilizers.