Skip to content

Commit 26a0305

Browse files
chore: remove Cardinal imports from GroupTheory.GroupAction.Quotient (#28529)
1 parent f156f7a commit 26a0305

File tree

12 files changed

+69
-39
lines changed

12 files changed

+69
-39
lines changed

Mathlib/Algebra/Polynomial/GroupRingAction.lean

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ Authors: Kenny Lau
66
import Mathlib.Algebra.Polynomial.AlgebraMap
77
import Mathlib.Algebra.Polynomial.Monic
88
import Mathlib.Algebra.Ring.Action.Basic
9+
import Mathlib.GroupTheory.Coset.Card
910
import Mathlib.GroupTheory.GroupAction.Hom
1011
import Mathlib.GroupTheory.GroupAction.Quotient
1112

Mathlib/Analysis/Convex/Topology.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ We prove the following facts:
2323
* `Set.Finite.isClosed_convexHull` : convex hull of a finite set is closed.
2424
-/
2525

26-
assert_not_exists Norm
26+
assert_not_exists Cardinal Norm
2727

2828
open Metric Bornology Set Pointwise Convex
2929

Mathlib/Analysis/Normed/Module/Convex.lean

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ We prove the following facts:
2424
is bounded.
2525
-/
2626

27+
-- TODO assert_not_exists Cardinal
28+
2729
variable {E : Type*}
2830

2931
open Metric Set

Mathlib/Analysis/NormedSpace/Connected.lean

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ Statements with connectedness instead of path-connectedness are also given.
2525
-/
2626

2727
assert_not_exists Subgroup.index Nat.divisors
28+
-- TODO assert_not_exists Cardinal
2829

2930
open Convex Set Metric
3031

Mathlib/GroupTheory/GroupAction/CardCommute.lean

Lines changed: 51 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,63 @@ Released under Apache 2.0 license as described in the file LICENSE.
44
Authors: Chris Hughes, Thomas Browning
55
-/
66
import Mathlib.Algebra.Group.ConjFinite
7+
import Mathlib.GroupTheory.Coset.Card
78
import Mathlib.GroupTheory.GroupAction.Quotient
89

910
/-!
10-
# A consequence of Burnside's lemma
11+
# Properties of group actions involving quotient groups
1112
12-
See `Mathlib/GroupTheory/GroupAction/Quotient.lean` for Burnside's lemma itself.
13-
This lemma is separate because it requires `Nat.card`
14-
and hence transitively the development of cardinals.
13+
This file proves cardinality properties of group actions which use the quotient group construction,
14+
notably
15+
* the class formula `MulAction.card_eq_sum_card_group_div_card_stabilizer'`
16+
* `card_comm_eq_card_conjClasses_mul_card`
17+
18+
as well as their analogues for additive groups.
19+
20+
See `Mathlib/GroupTheory/GroupAction/Quotient.lean` for the construction of isomorphisms used to
21+
prove these cardinality properties.
22+
These lemmas are separate because they require the development of cardinals.
1523
-/
1624

17-
variable {α : Type*}
25+
variable {α β : Type*}
26+
27+
open Function
28+
29+
namespace MulAction
30+
31+
variable (α β)
32+
variable [Group α] [MulAction α β]
33+
34+
local notation "Ω" => Quotient <| orbitRel α β
35+
36+
/-- **Class formula** for a finite group acting on a finite type. See
37+
`MulAction.card_eq_sum_card_group_div_card_stabilizer` for a specialized version using
38+
`Quotient.out`. -/
39+
@[to_additive
40+
/-- **Class formula** for a finite group acting on a finite type. See
41+
`AddAction.card_eq_sum_card_addGroup_div_card_stabilizer` for a specialized version using
42+
`Quotient.out`. -/]
43+
theorem card_eq_sum_card_group_div_card_stabilizer' [Fintype α] [Fintype β] [Fintype Ω]
44+
[∀ b : β, Fintype <| stabilizer α b] {φ : Ω → β} (hφ : LeftInverse Quotient.mk'' φ) :
45+
Fintype.card β = ∑ ω : Ω, Fintype.card α / Fintype.card (stabilizer α (φ ω)) := by
46+
classical
47+
have : ∀ ω : Ω, Fintype.card α / Fintype.card (stabilizer α (φ ω)) =
48+
Fintype.card (α ⧸ stabilizer α (φ ω)) := by
49+
intro ω
50+
rw [Fintype.card_congr (@Subgroup.groupEquivQuotientProdSubgroup α _ (stabilizer α <| φ ω)),
51+
Fintype.card_prod, Nat.mul_div_cancel]
52+
exact Fintype.card_pos_iff.mpr (by infer_instance)
53+
simp_rw [this, ← Fintype.card_sigma,
54+
Fintype.card_congr (selfEquivSigmaOrbitsQuotientStabilizer' α β hφ)]
55+
56+
/-- **Class formula** for a finite group acting on a finite type. -/
57+
@[to_additive /-- **Class formula** for a finite group acting on a finite type. -/]
58+
theorem card_eq_sum_card_group_div_card_stabilizer [Fintype α] [Fintype β] [Fintype Ω]
59+
[∀ b : β, Fintype <| stabilizer α b] :
60+
Fintype.card β = ∑ ω : Ω, Fintype.card α / Fintype.card (stabilizer α ω.out) :=
61+
card_eq_sum_card_group_div_card_stabilizer' α β Quotient.out_eq'
62+
63+
end MulAction
1864

1965
instance instInfiniteProdSubtypeCommute [Mul α] [Infinite α] :
2066
Infinite { p : α × α // Commute p.1 p.2 } :=

Mathlib/GroupTheory/GroupAction/Quotient.lean

Lines changed: 5 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@ Authors: Chris Hughes, Thomas Browning
55
-/
66
import Mathlib.Algebra.Group.Subgroup.Actions
77
import Mathlib.Algebra.Group.Subgroup.ZPowers.Lemmas
8+
import Mathlib.Data.Fintype.BigOperators
89
import Mathlib.Dynamics.PeriodicPts.Defs
910
import Mathlib.GroupTheory.Commutator.Basic
10-
import Mathlib.GroupTheory.Coset.Card
11+
import Mathlib.GroupTheory.Coset.Basic
1112
import Mathlib.GroupTheory.GroupAction.Basic
1213
import Mathlib.GroupTheory.GroupAction.ConjAct
1314
import Mathlib.GroupTheory.GroupAction.Hom
@@ -17,12 +18,14 @@ import Mathlib.GroupTheory.GroupAction.Hom
1718
1819
This file proves properties of group actions which use the quotient group construction, notably
1920
* the orbit-stabilizer theorem `MulAction.card_orbit_mul_card_stabilizer_eq_card_group`
20-
* the class formula `MulAction.card_eq_sum_card_group_div_card_stabilizer'`
21+
* the class formula `MulAction.selfEquivSigmaOrbitsQuotientStabilizer'`
2122
* Burnside's lemma `MulAction.sum_card_fixedBy_eq_card_orbits_mul_card_group`,
2223
2324
as well as their analogues for additive groups.
2425
-/
2526

27+
assert_not_exists Cardinal
28+
2629
universe u v w
2730

2831
variable {α : Type u} {β : Type v} {γ : Type w}
@@ -211,26 +214,6 @@ noncomputable def selfEquivSigmaOrbitsQuotientStabilizer' {φ : Ω → β}
211214
(Equiv.setCongr <| orbitRel.Quotient.orbit_eq_orbit_out _ hφ).trans <|
212215
orbitEquivQuotientStabilizer α (φ ω)
213216

214-
/-- **Class formula** for a finite group acting on a finite type. See
215-
`MulAction.card_eq_sum_card_group_div_card_stabilizer` for a specialized version using
216-
`Quotient.out`. -/
217-
@[to_additive
218-
/-- **Class formula** for a finite group acting on a finite type. See
219-
`AddAction.card_eq_sum_card_addGroup_div_card_stabilizer` for a specialized version using
220-
`Quotient.out`. -/]
221-
theorem card_eq_sum_card_group_div_card_stabilizer' [Fintype α] [Fintype β] [Fintype Ω]
222-
[∀ b : β, Fintype <| stabilizer α b] {φ : Ω → β} (hφ : LeftInverse Quotient.mk'' φ) :
223-
Fintype.card β = ∑ ω : Ω, Fintype.card α / Fintype.card (stabilizer α (φ ω)) := by
224-
classical
225-
have : ∀ ω : Ω, Fintype.card α / Fintype.card (stabilizer α (φ ω)) =
226-
Fintype.card (α ⧸ stabilizer α (φ ω)) := by
227-
intro ω
228-
rw [Fintype.card_congr (@Subgroup.groupEquivQuotientProdSubgroup α _ (stabilizer α <| φ ω)),
229-
Fintype.card_prod, Nat.mul_div_cancel]
230-
exact Fintype.card_pos_iff.mpr (by infer_instance)
231-
simp_rw [this, ← Fintype.card_sigma,
232-
Fintype.card_congr (selfEquivSigmaOrbitsQuotientStabilizer' α β hφ)]
233-
234217
/-- **Class formula**. This is a special case of
235218
`MulAction.self_equiv_sigma_orbits_quotient_stabilizer'` with `φ = Quotient.out`. -/
236219
@[to_additive
@@ -239,13 +222,6 @@ theorem card_eq_sum_card_group_div_card_stabilizer' [Fintype α] [Fintype β] [F
239222
noncomputable def selfEquivSigmaOrbitsQuotientStabilizer : β ≃ Σ ω : Ω, α ⧸ stabilizer α ω.out :=
240223
selfEquivSigmaOrbitsQuotientStabilizer' α β Quotient.out_eq'
241224

242-
/-- **Class formula** for a finite group acting on a finite type. -/
243-
@[to_additive /-- **Class formula** for a finite group acting on a finite type. -/]
244-
theorem card_eq_sum_card_group_div_card_stabilizer [Fintype α] [Fintype β] [Fintype Ω]
245-
[∀ b : β, Fintype <| stabilizer α b] :
246-
Fintype.card β = ∑ ω : Ω, Fintype.card α / Fintype.card (stabilizer α ω.out) :=
247-
card_eq_sum_card_group_div_card_stabilizer' α β Quotient.out_eq'
248-
249225
/-- **Burnside's lemma** : a (noncomputable) bijection between the disjoint union of all
250226
`{x ∈ X | g • x = x}` for `g ∈ G` and the product `G × X/G`, where `G` is a group acting on `X` and
251227
`X/G` denotes the quotient of `X` by the relation `orbitRel G X`. -/

Mathlib/LinearAlgebra/Alternating/DomCoprod.lean

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
44
Authors: Eric Wieser
55
-/
66
import Mathlib.Algebra.Group.Subgroup.Finite
7+
import Mathlib.GroupTheory.Coset.Card
78
import Mathlib.GroupTheory.GroupAction.Quotient
89
import Mathlib.GroupTheory.Perm.Basic
910
import Mathlib.LinearAlgebra.Alternating.Basic

Mathlib/Topology/Algebra/Group/Quotient.lean

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ In this file we define topology on `G ⧸ N`, where `N` is a subgroup of `G`,
1515
and prove basic properties of this topology.
1616
-/
1717

18+
assert_not_exists Cardinal
19+
1820
open Topology
1921
open scoped Pointwise
2022

Mathlib/Topology/Algebra/Module/Basic.lean

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import Mathlib.LinearAlgebra.Quotient.Defs
1818
We use the class `ContinuousSMul` for topological (semi) modules and topological vector spaces.
1919
-/
2020

21-
assert_not_exists TrivialStar
21+
assert_not_exists Cardinal TrivialStar
2222

2323
open LinearMap (ker range)
2424
open Topology Filter Pointwise

Mathlib/Topology/CWComplex/Classical/Basic.lean

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Authors: Floris van Doorn, Hannah Scholz
55
-/
66

77
import Mathlib.Analysis.NormedSpace.Real
8+
import Mathlib.Data.ENat.Basic
89
import Mathlib.Logic.Equiv.PartialEquiv
910
import Mathlib.Topology.MetricSpace.ProperSpace.Real
1011

0 commit comments

Comments
 (0)