ProCGroups.Topologies.TopologicallyCharacteristicSubgroups

23 Theorem | 4 Lemma | 2 Definition | 1 Abbreviation | 1 Structure | 7 Instance

This module supplies the topological part of the construction. It checks continuity and stagewise neighborhood properties so that the completed object inherits the required topology.

import
Imported by

Declarations

lemma image_subtype_eq_map
    {G : Type u} [Group G]
    {H : Type _} [Group H]
    (f : G →* H) (K : Subgroup G) :
    (fun x : G => f x) '' (K : Set G) = ((K.map f : Subgroup H) : Set H)

Identify the image of a subgroup with its Subgroup.map.

Show proof
lemma map_symm_toMonoidHom_eq_comap
    {G : Type u} [Group G] (K : Subgroup G) (e : G ≃* G) :
    K.map e.symm.toMonoidHom = K.comap e.toMonoidHom

Mapping a subgroup by the inverse of an automorphism agrees with comapping along the automorphism itself.

Show proof
theorem map_topologicalClosure_le_of_map_le
    {G H : Type*} [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
    [TopologicalSpace H] [Group H] [IsTopologicalGroup H]
    {A : Subgroup G} {B : Subgroup H} {f : G →* H}
    (hf : Continuous f) (hAB : A.map f ≤ B) (hB : IsClosed (B : Set H)) :
    A.topologicalClosure.map f ≤ B

Continuous maps send the topological closure of a subgroup into a closed subgroup whenever they send the subgroup itself into that closed subgroup.

Show proof
theorem map_topologicalClosure_eq_of_continuousMulEquiv
    {G H : Type*} [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
    [TopologicalSpace H] [Group H] [IsTopologicalGroup H]
    (e : G ≃ₜ* H) (A : Subgroup G) :
    A.topologicalClosure.map e.toMulEquiv.toMonoidHom =
      (A.map e.toMulEquiv.toMonoidHom).topologicalClosure

Homeomorphic group equivalences commute with topological closure of subgroups.

Show proof
abbrev closedCommutator (G : Type*) [TopologicalSpace G] [Group G]
    [IsTopologicalGroup G] : Subgroup G :=
  (_root_.commutator G).topologicalClosure

The closed commutator subgroup of a topological group.

@[simp] theorem isClosed_closedCommutator
    (G : Type*) [TopologicalSpace G] [Group G] [IsTopologicalGroup G] :
    IsClosed (closedCommutator G : Set G)

The closed commutator subgroup is closed.

Show proof
theorem commutator_le_closedCommutator
    (G : Type*) [TopologicalSpace G] [Group G] [IsTopologicalGroup G] :
    _root_.commutator G ≤ closedCommutator G

The abstract commutator subgroup is contained in the closed commutator subgroup.

Show proof
@[simp] theorem topologicalClosure_eq_self_of_discrete
    (H : Subgroup G) [DiscreteTopology G] :
    H.topologicalClosure = H

In a discrete topological group, the topological closure of a subgroup is the subgroup itself.

Show proof
@[simp] theorem closedCommutator_eq_commutator_of_discrete
    (G : Type*) [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
    [DiscreteTopology G] :
    closedCommutator G = _root_.commutator G

For a discrete group, the closed commutator subgroup agrees with the ordinary commutator subgroup.

Show proof
theorem closedCommutator_map_le
    {G H : Type*} [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
    [TopologicalSpace H] [Group H] [IsTopologicalGroup H]
    (f : G →ₜ* H) :
    (closedCommutator G).map f.toMonoidHom ≤ closedCommutator H

Continuous homomorphisms send closed commutator subgroups into closed commutator subgroups.

Show proof
theorem closedCommutator_map_eq_of_equiv
    {G H : Type*} [TopologicalSpace G] [Group G] [IsTopologicalGroup G]
    [TopologicalSpace H] [Group H] [IsTopologicalGroup H]
    (e : G ≃ₜ* H) :
    (closedCommutator G).map e.toMulEquiv.toMonoidHom = closedCommutator H

Continuous group equivalences map the closed commutator subgroup onto the closed commutator subgroup.

Show proof
theorem closedCommutator_characteristic
    {G : Type*} [TopologicalSpace G] [Group G] [IsTopologicalGroup G] :
    ∀ e : G ≃ₜ* G,
      (closedCommutator G).map e.toMulEquiv.toMonoidHom = closedCommutator G

The closed commutator subgroup is invariant under continuous automorphisms.

Show proof
structure TopologicallyCharacteristic
    (H : Subgroup G) : Prop where
  comap_eq : ∀ e : G ≃ₜ* G, H.comap e.toMulEquiv.toMonoidHom = H

A subgroup is topologically characteristic if every continuous automorphism preserves it.

instance topologicallyCharacteristic_of_characteristic
    [H.Characteristic] :
    H.TopologicallyCharacteristic := by
  refine ⟨?_⟩
  intro e
  simpa using
    (Subgroup.characteristic_iff_comap_eq.mp (show H.Characteristic by infer_instance)
      e.toMulEquiv)

Every abstractly characteristic subgroup is invariant under continuous automorphisms.

theorem topologicallyCharacteristic_iff_comap_eq :
    H.TopologicallyCharacteristic ↔
      ∀ e : G ≃ₜ* G, H.comap e.toMulEquiv.toMonoidHom = H

Topological characteristicity is equivalent to invariance under comap by every continuous automorphism.

Show proof
theorem topologicallyCharacteristic_iff_comap_le :
    H.TopologicallyCharacteristic ↔
      ∀ e : G ≃ₜ* G, H.comap e.toMulEquiv.toMonoidHom ≤ H

A subgroup is topologically characteristic exactly when every automorphism comap is contained in it.

Show proof
theorem topologicallyCharacteristic_iff_le_comap :
    H.TopologicallyCharacteristic ↔
      ∀ e : G ≃ₜ* G, H ≤ H.comap e.toMulEquiv.toMonoidHom

A subgroup is topologically characteristic exactly when it is contained in every automorphism comap.

Show proof
theorem topologicallyCharacteristic_iff_map_eq :
    H.TopologicallyCharacteristic ↔
      ∀ e : G ≃ₜ* G, H.map e.toMulEquiv.toMonoidHom = H

Topological characteristicity is equivalent to invariance under image by every continuous automorphism.

Show proof
theorem closedCommutator_topologicallyCharacteristic
    {G : Type*} [TopologicalSpace G] [Group G] [IsTopologicalGroup G] :
    (closedCommutator G).TopologicallyCharacteristic

The closed commutator subgroup is topologically characteristic.

Show proof
theorem topologicallyCharacteristic_iff_le_map :
    H.TopologicallyCharacteristic ↔
      ∀ e : G ≃ₜ* G, H ≤ H.map e.toMulEquiv.toMonoidHom

A subgroup is topologically characteristic exactly when it is contained in every automorphism image.

Show proof
lemma map_eq
    (hH : H.TopologicallyCharacteristic) (e : G ≃ₜ* G) :
    H.map (e.toMulEquiv.toMonoidHom) = H

A topologically characteristic subgroup is fixed by the image of every continuous automorphism.

Show proof
lemma apply_mem_iff
    (hH : H.TopologicallyCharacteristic) (e : G ≃ₜ* G) {g : G} :
    e g ∈ H ↔ g ∈ H

Membership in a topologically characteristic subgroup is invariant under applying a continuous automorphism.

Show proof
theorem inf
    (hH : H.TopologicallyCharacteristic) (hK : K.TopologicallyCharacteristic) :
    (H ⊓ K).TopologicallyCharacteristic

Intersections of topologically characteristic subgroups are topologically characteristic.

Show proof
theorem sup
    (hH : H.TopologicallyCharacteristic) (hK : K.TopologicallyCharacteristic) :
    (H ⊔ K).TopologicallyCharacteristic

Supremums of topologically characteristic subgroups are topologically characteristic.

Show proof
theorem sInf
    {S : Set (Subgroup G)}
    (hS : ∀ L ∈ S, L.TopologicallyCharacteristic) :
    (sInf S).TopologicallyCharacteristic

Arbitrary intersections of topologically characteristic subgroups are topologically characteristic.

Show proof
theorem iInf
    {ι : Sort*} {S : ι → Subgroup G}
    (hS : ∀ i, (S i).TopologicallyCharacteristic) :
    (⨅ i, S i).TopologicallyCharacteristic

Indexed intersections of topologically characteristic subgroups are topologically characteristic.

Show proof
theorem iSup
    {ι : Sort*} {S : ι → Subgroup G}
    (hS : ∀ i, (S i).TopologicallyCharacteristic) :
    (⨆ i, S i).TopologicallyCharacteristic

Indexed supremums of topologically characteristic subgroups are topologically characteristic.

Show proof
theorem topologicalClosure
    (hH : H.TopologicallyCharacteristic) :
    H.topologicalClosure.TopologicallyCharacteristic

The topological closure of a topologically characteristic subgroup is topologically characteristic.

Show proof
instance botTopologicallyCharacteristic :
    (⊥ : Subgroup G).TopologicallyCharacteristic := inferInstance

The bottom subgroup is topologically characteristic.

instance topTopologicallyCharacteristic :
    (⊤ : Subgroup G).TopologicallyCharacteristic := inferInstance

The top subgroup is topologically characteristic.

instance commutatorTopologicallyCharacteristic
    [H.TopologicallyCharacteristic] [K.TopologicallyCharacteristic] :
    (⁅H, K⁆).TopologicallyCharacteristic := by
  refine topologicallyCharacteristic_iff_le_map.mpr ?_
  intro e
  have hHle :
      H ≤ H.map e.toMulEquiv.toMonoidHom :=
    topologicallyCharacteristic_iff_le_map.mp
      (show H.TopologicallyCharacteristic by infer_instance) e
  have hKle :
      K ≤ K.map e.toMulEquiv.toMonoidHom :=
    topologicallyCharacteristic_iff_le_map.mp
      (show K.TopologicallyCharacteristic by infer_instance) e
  exact Subgroup.commutator_le_map_commutator
    hHle hKle

Commutators of topologically characteristic subgroups are topologically characteristic.

instance centerTopologicallyCharacteristic :
    (center G).TopologicallyCharacteristic := inferInstance

The center is topologically characteristic.

instance topologicallyCharacteristic_centralizerInst
    [hH : H.TopologicallyCharacteristic] :
    (centralizer (H : Set G)).TopologicallyCharacteristic := by
  refine topologicallyCharacteristic_iff_comap_le.mpr ?_
  intro e g hg
  have hg' : e g ∈ centralizer (H : Set G) := hg
  rw [Subgroup.mem_centralizer_iff]
  intro h hh
  apply e.toMulEquiv.injective
  rw [e.toMulEquiv.map_mul, e.toMulEquiv.map_mul]
  exact
    hg' (e h) ((TopologicallyCharacteristic.apply_mem_iff (hH := inferInstance) e (g := h)).2 hh)

The centralizer of a topologically characteristic subgroup is again topologically characteristic.

instance topologicallyCharacteristic_normalInst
    [H.TopologicallyCharacteristic] :
    H.Normal := by
  refine ⟨?_⟩
  intro x hx g
  let e : G ≃ₜ* G :=
    { toMulEquiv := MulAut.conj g
      continuous_toFun := by
        dsimp [MulAut.conj_apply]
        exact IsTopologicalGroup.continuous_conj (G := G) g
      continuous_invFun := by
        simpa [MulAut.conj_inv_apply] using
          (IsTopologicalGroup.continuous_conj (G := G) (g := g⁻¹)) }
  have hmap : H.map (e.toMulEquiv.toMonoidHom) = H :=
    TopologicallyCharacteristic.map_eq (hH := inferInstance) e
  have hxmap : e x ∈ H.map (e.toMulEquiv.toMonoidHom) := ⟨x, hx, rflrw [hmap] at hxmap
  simpa [e, MulAut.conj_apply] using hxmap

Topologically characteristic subgroups are normal.

noncomputable def quotientMulEquiv
    (hH : H.TopologicallyCharacteristic) (e : G ≃ₜ* G) :
    G ⧸ H ≃* G ⧸ H := by
  letI : H.Normal := by infer_instance
  exact QuotientGroup.congr H H e.toMulEquiv (map_eq hH e)

A continuous automorphism descends to the quotient by a topologically characteristic subgroup.

@[simp] theorem quotientMulEquiv_mk
    (hH : H.TopologicallyCharacteristic) (e : G ≃ₜ* G) (g : G) :
    hH.quotientMulEquiv e (QuotientGroup.mk' H g) =
      QuotientGroup.mk' H (e g)

The quotient equivalence induced by a topologically characteristic subgroup sends representatives to representatives.

Show proof
noncomputable def quotientContinuousMulEquiv
    (hH : H.TopologicallyCharacteristic) (e : G ≃ₜ* G) :
    G ⧸ H ≃ₜ* G ⧸ H := by
  letI : H.Normal := by infer_instance
  exact QuotientGroup.congrₜ H H e (map_eq hH e)

A topologically characteristic subgroup induces the corresponding continuous multiplicative equivalence on quotients.

@[simp] theorem quotientContinuousMulEquiv_mk
    (hH : H.TopologicallyCharacteristic) (e : G ≃ₜ* G) (g : G) :
    hH.quotientContinuousMulEquiv e (QuotientGroup.mk' H g) =
      QuotientGroup.mk' H (e g)

The continuous quotient equivalence induced by a topologically characteristic subgroup sends representatives to representatives.

Show proof