Documentation

Mathlib.Topology.Algebra.Group.SubmonoidClosure

Topological closure of the submonoid closure #

In this file we prove several versions of the following statement: if G is a compact topological group and s : Set G, then the topological closures of Submonoid.closure s and Subgroup.closure s are equal.

The proof is based on the following observation, see mapClusterPt_self_zpow_atTop_pow: each x^m, m : โ„ค is a limit point (MapClusterPt) of the sequence x^n, n : โ„•, as n โ†’ โˆž.

theorem mapClusterPt_atTop_zpow_iff_pow {G : Type u_1} [DivInvMonoid G] [TopologicalSpace G] {x y : G} :
(MapClusterPt x Filter.atTop fun (x : โ„ค) => y ^ x) โ†” MapClusterPt x Filter.atTop fun (x : โ„•) => y ^ x
theorem mapClusterPt_atTop_zsmul_iff_nsmul {G : Type u_1} [SubNegMonoid G] [TopologicalSpace G] {x y : G} :
(MapClusterPt x Filter.atTop fun (x : โ„ค) => x โ€ข y) โ†” MapClusterPt x Filter.atTop fun (x : โ„•) => x โ€ข y
theorem mapClusterPt_self_zpow_atTop_pow {G : Type u_1} [Group G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalGroup G] (x : G) (m : โ„ค) :
MapClusterPt (x ^ m) Filter.atTop fun (x_1 : โ„•) => x ^ x_1
theorem mapClusterPt_self_zsmul_atTop_nsmul {G : Type u_1} [AddGroup G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalAddGroup G] (x : G) (m : โ„ค) :
MapClusterPt (m โ€ข x) Filter.atTop fun (x_1 : โ„•) => x_1 โ€ข x
theorem mapClusterPt_zero_atTop_nsmul {G : Type u_1} [AddGroup G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalAddGroup G] (x : G) :
MapClusterPt 0 Filter.atTop fun (x_1 : โ„•) => x_1 โ€ข x
theorem mapClusterPt_self_atTop_nsmul {G : Type u_1} [AddGroup G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalAddGroup G] (x : G) :
MapClusterPt x Filter.atTop fun (x_1 : โ„•) => x_1 โ€ข x
theorem mapClusterPt_atTop_pow_tfae {G : Type u_1} [Group G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalGroup G] (x y : G) :
[MapClusterPt x Filter.atTop fun (x : โ„•) => y ^ x, MapClusterPt x Filter.atTop fun (x : โ„ค) => y ^ x, x โˆˆ closure (Set.range fun (x : โ„•) => y ^ x), x โˆˆ closure (Set.range fun (x : โ„ค) => y ^ x)].TFAE
theorem mapClusterPt_atTop_nsmul_tfae {G : Type u_1} [AddGroup G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalAddGroup G] (x y : G) :
[MapClusterPt x Filter.atTop fun (x : โ„•) => x โ€ข y, MapClusterPt x Filter.atTop fun (x : โ„ค) => x โ€ข y, x โˆˆ closure (Set.range fun (x : โ„•) => x โ€ข y), x โˆˆ closure (Set.range fun (x : โ„ค) => x โ€ข y)].TFAE
@[simp]
theorem mapClusterPt_inv_atTop_pow {G : Type u_1} [Group G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalGroup G] {x y : G} :
(MapClusterPt xโปยน Filter.atTop fun (x : โ„•) => y ^ x) โ†” MapClusterPt x Filter.atTop fun (x : โ„•) => y ^ x
@[simp]
theorem mapClusterPt_neg_atTop_nsmul {G : Type u_1} [AddGroup G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalAddGroup G] {x y : G} :
(MapClusterPt (-x) Filter.atTop fun (x : โ„•) => x โ€ข y) โ†” MapClusterPt x Filter.atTop fun (x : โ„•) => x โ€ข y
theorem closure_range_zpow_eq_pow {G : Type u_1} [Group G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalGroup G] (x : G) :
closure (Set.range fun (x_1 : โ„ค) => x ^ x_1) = closure (Set.range fun (x_1 : โ„•) => x ^ x_1)
theorem closure_range_zsmul_eq_nsmul {G : Type u_1} [AddGroup G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalAddGroup G] (x : G) :
closure (Set.range fun (x_1 : โ„ค) => x_1 โ€ข x) = closure (Set.range fun (x_1 : โ„•) => x_1 โ€ข x)
theorem denseRange_zpow_iff_pow {G : Type u_1} [Group G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalGroup G] {x : G} :
(DenseRange fun (x_1 : โ„ค) => x ^ x_1) โ†” DenseRange fun (x_1 : โ„•) => x ^ x_1
theorem denseRange_zsmul_iff_nsmul {G : Type u_1} [AddGroup G] [TopologicalSpace G] [CompactSpace G] [IsTopologicalAddGroup G] {x : G} :
(DenseRange fun (x_1 : โ„ค) => x_1 โ€ข x) โ†” DenseRange fun (x_1 : โ„•) => x_1 โ€ข x