Skip to content

Commit aa4a228

Browse files
committed
Bump mathlib
1 parent 4ca46a5 commit aa4a228

File tree

17 files changed

+30
-271
lines changed

17 files changed

+30
-271
lines changed

LeanCamCombi.lean

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,17 @@ import LeanCamCombi.ExampleSheets.Graph.ES1
1212
import LeanCamCombi.ExampleSheets.Graph.ES2
1313
import LeanCamCombi.GrowthInGroups.Lecture1
1414
import LeanCamCombi.GrowthInGroups.Lecture2
15-
import LeanCamCombi.GrowthInGroups.NormCommutator
1615
import LeanCamCombi.GrowthInGroups.SmallTripling
1716
import LeanCamCombi.Impact
1817
import LeanCamCombi.Incidence
1918
import LeanCamCombi.Kneser.Kneser
2019
import LeanCamCombi.Kneser.KneserRuzsa
2120
import LeanCamCombi.Kneser.MulStab
2221
import LeanCamCombi.LittlewoodOfford
23-
import LeanCamCombi.Mathlib.Algebra.Group.Pointwise.Finset.Basic
24-
import LeanCamCombi.Mathlib.Algebra.Group.Subgroup.Pointwise
2522
import LeanCamCombi.Mathlib.Analysis.Convex.Exposed
2623
import LeanCamCombi.Mathlib.Analysis.Convex.Extreme
2724
import LeanCamCombi.Mathlib.Analysis.Convex.Independence
2825
import LeanCamCombi.Mathlib.Analysis.Convex.SimplicialComplex.Basic
29-
import LeanCamCombi.Mathlib.Analysis.Normed.Field.Basic
3026
import LeanCamCombi.Mathlib.Combinatorics.Additive.PluenneckeRuzsa
3127
import LeanCamCombi.Mathlib.Combinatorics.Schnirelmann
3228
import LeanCamCombi.Mathlib.Combinatorics.SimpleGraph.Basic
@@ -41,10 +37,8 @@ import LeanCamCombi.Mathlib.Data.List.DropRight
4137
import LeanCamCombi.Mathlib.Data.Multiset.Basic
4238
import LeanCamCombi.Mathlib.Data.Set.Pointwise.Finite
4339
import LeanCamCombi.Mathlib.Data.Set.Pointwise.SMul
44-
import LeanCamCombi.Mathlib.GroupTheory.Coset.Card
4540
import LeanCamCombi.Mathlib.GroupTheory.Nilpotent
4641
import LeanCamCombi.Mathlib.GroupTheory.OrderOfElement
47-
import LeanCamCombi.Mathlib.GroupTheory.QuotientGroup.Finite
4842
import LeanCamCombi.Mathlib.LinearAlgebra.AffineSpace.FiniteDimensional
4943
import LeanCamCombi.Mathlib.Order.Interval.Finset.Defs
5044
import LeanCamCombi.Mathlib.Order.Partition.Finpartition

LeanCamCombi/Archive/CauchyDavenportFromKneser.lean

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ Released under Apache 2.0 license as described in the file LICENSE.
44
Authors: Yaël Dillies
55
-/
66
import Mathlib.GroupTheory.SpecificGroups.Cyclic
7-
import LeanCamCombi.Mathlib.Algebra.Group.Pointwise.Finset.Basic
87
import LeanCamCombi.Kneser.Kneser
98

109
/-!
@@ -30,7 +29,7 @@ lemma ZMod.cauchy_davenport' {p : ℕ} (hp : p.Prime) {s t : Finset (ZMod p)} (h
3029
haveI : Fact p.Prime := ⟨hp⟩
3130
obtain h | h := eq_bot_or_eq_top (AddAction.stabilizer (ZMod p) (s + t))
3231
· refine min_le_of_right_le ?_
33-
rw [← AddSubgroup.coe_set_eq_zero, ← coe_addStab (hs.add ht), coe_eq_zero] at h
32+
rw [← coe_set_eq_zero, ← coe_addStab (hs.add ht), coe_eq_zero] at h
3433
simpa [*] using add_kneser s t
3534
· rw [← AddSubgroup.coe_eq_univ, ← coe_addStab (hs.add ht), coe_eq_univ] at h
3635
refine card_addStab_le_card.trans' ?_

LeanCamCombi/GrowthInGroups/Lecture1.lean

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import Mathlib.Analysis.SpecialFunctions.Log.Basic
22
import Mathlib.Combinatorics.Additive.DoublingConst
33
import Mathlib.LinearAlgebra.Matrix.SpecialLinearGroup
44
import Mathlib.Tactic.Positivity.Finset
5-
import LeanCamCombi.Mathlib.Algebra.Group.Pointwise.Finset.Basic
65
import LeanCamCombi.Mathlib.GroupTheory.Nilpotent
76
import LeanCamCombi.Mathlib.Order.SuccPred.Relation
87

LeanCamCombi/GrowthInGroups/Lecture2.lean

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,11 @@
1-
2-
import Mathlib.Combinatorics.Additive.DoublingConst
31
import Mathlib.Data.Real.Basic
42
import Mathlib.Data.Fin.VecNotation
53
import Mathlib.Tactic.FinCases
64
import Mathlib.Tactic.NormNum
7-
import LeanCamCombi.Mathlib.Algebra.Group.Pointwise.Finset.Basic
85
import LeanCamCombi.GrowthInGroups.SmallTripling
96

107
open Fin Finset List
11-
open scoped Combinatorics.Additive Pointwise
8+
open scoped Pointwise
129

1310
namespace GrowthInGroups.Lecture2
1411
variable {G : Type*} [DecidableEq G] [CommGroup G] {A : Finset G} {k K : ℝ} {m : ℕ}

LeanCamCombi/GrowthInGroups/NormCommutator.lean

Lines changed: 0 additions & 18 deletions
This file was deleted.

LeanCamCombi/GrowthInGroups/SmallTripling.lean

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import Mathlib.Tactic.FinCases
55
import Mathlib.Tactic.NormNum
66
import Mathlib.Tactic.Positivity.Finset
77
import Mathlib.Tactic.Ring
8-
import LeanCamCombi.Mathlib.Algebra.Group.Pointwise.Finset.Basic
98

109
/-!
1110
# Small tripling implies small powers

LeanCamCombi/Impact.lean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ Copyright (c) 2023 Yaël Dillies. All rights reserved.
33
Released under Apache 2.0 license as described in the file LICENSE.
44
Authors: Yaël Dillies
55
-/
6+
import Mathlib.Algebra.Group.Pointwise.Finset.Basic
67
import Mathlib.Data.Nat.Lattice
7-
import LeanCamCombi.Mathlib.Algebra.Group.Pointwise.Finset.Basic
88

99
/-!
1010
# Impact function
@@ -34,7 +34,7 @@ variable [Group α] {n : ℕ}
3434

3535
@[to_additive (attr := simp)]
3636
lemma mulImpact_singleton [Infinite α] (a : α) (n : ℕ) : ({a} : Finset α).mulImpact n = n := by
37-
simp only [mulImpact, singleton_mul', card_smul_finset]
37+
simp only [mulImpact, singleton_mul, card_smul_finset]
3838
haveI : Nonempty {t : Finset α // #t = n} := nonempty_subtype.2 (exists_card_eq _)
3939
exact Eq.trans (iInf_congr Subtype.prop) ciInf_const
4040

LeanCamCombi/Kneser/Kneser.lean

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,7 @@ lemma mulStab_mul_ssubset_mulStab (hs₁ : (s ∩ a • C.mulStab).Nonempty)
6262
rw [smul_mulStab hd, smul_mulStab hc, mem_mulStab hCne, ← smul_smul,
6363
(mem_mulStab hCne).mp hy, (mem_mulStab hCne).mp hx]
6464
apply subset_trans (div_subset_div_right this) _
65-
have hsing : (x * y) • C.mulStab = {x * y} * C.mulStab := by rw [singleton_mul]; rfl
66-
simp_rw [hsing, singleton_mul, div_singleton, image_image, div_eq_mul_inv, mul_comm, comp_def,
67-
mul_inv_cancel_right, image_id', subset_refl]
65+
simp [singleton_mul, div_eq_inv_mul, smul_smul, mul_assoc]
6866
have : (a * b) • C.mulStab = (a * c * (b * d)) • C.mulStab := by
6967
rw [smul_eq_iff_eq_inv_smul, ← smul_assoc, smul_eq_mul, mul_assoc, mul_comm c _, ← mul_assoc, ←
7068
mul_assoc, ← mul_assoc, mul_assoc _ a b, inv_mul_cancel (a * b), one_mul, ← smul_eq_mul,
@@ -302,7 +300,7 @@ theorem mul_kneser :
302300
obtain hstab | hstab := ne_or_eq (s * t).mulStab 1
303301
· have image_coe_mul :
304302
((s * t).image (↑) : Finset (α ⧸ stabilizer α (s * t))) = s.image (↑) * t.image (↑) :=
305-
sorry -- image_mul (QuotientGroup.mk' _ : α →* α ⧸ stabilizer α (s * t))
303+
image_mul (QuotientGroup.mk' _ : α →* α ⧸ stabilizer α (s * t))
306304
suffices hineq :
307305
#(s * t).mulStab *
308306
(#(s.image (↑) : Finset (α ⧸ stabilizer α (s * t))) +
@@ -390,10 +388,10 @@ theorem mul_kneser :
390388
have hbt₁ : b ∈ t₁ := mem_inter.mpr ⟨hb, mem_smul_finset.21, one_mem_mulStab.2 hC, mul_one _⟩⟩
391389
have hs₁ne : s₁.Nonempty := ⟨_, has₁⟩
392390
have ht₁ne : t₁.Nonempty := ⟨_, hbt₁⟩
393-
set C₁ := C ∪ s₁ * t₁ with hC₁
394-
set C₂ := C ∪ s₂ * t₂ with hC₂
391+
set C₁ := C ∪ s₁ * t₁
392+
set C₂ := C ∪ s₂ * t₂
395393
set H₁ := (s₁ * t₁).mulStab with hH₁
396-
set H₂ := (s₂ * t₂).mulStab with hH₂
394+
set H₂ := (s₂ * t₂).mulStab
397395
have hC₁st : C₁ ⊆ s * t := union_subset hCst (mul_subset_mul hs₁s ht₁t)
398396
have hC₂st : C₂ ⊆ s * t := union_subset hCst (mul_subset_mul hs₂s ht₂t)
399397
have hstabH₁ : s₁ * t₁ ⊆ (a * b) • H := by

LeanCamCombi/Kneser/MulStab.lean

Lines changed: 16 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,13 @@ Authors: Mantas Bakšys, Yaël Dillies
55
-/
66
import Mathlib.Algebra.Pointwise.Stabilizer
77
import Mathlib.GroupTheory.Coset.Card
8+
import Mathlib.GroupTheory.GroupAction.Blocks
89
import Mathlib.GroupTheory.GroupAction.Quotient
9-
import LeanCamCombi.Mathlib.Algebra.Group.Pointwise.Finset.Basic
1010
import LeanCamCombi.Mathlib.Data.Set.Pointwise.Finite
11-
import LeanCamCombi.Mathlib.GroupTheory.QuotientGroup.Finite
1211

1312
/-!
1413
# Stabilizer of a finset
1514
16-
1715
This file defines the stabilizer of a finset of a group as a finset.
1816
1917
## Main declarations
@@ -228,7 +226,7 @@ lemma pairwiseDisjoint_smul_finset_mulStab (s : Finset α) :
228226
rintro _ ⟨a, rfl⟩ _ ⟨b, rfl⟩
229227
simp only [onFun, id_eq]
230228
simp_rw [← disjoint_coe, ← coe_injective.ne_iff, coe_smul_finset, coe_mulStab hs]
231-
exact Subgroup.pairwiseDisjoint_smul _ (Set.mem_range_self _) (Set.mem_range_self _)
229+
exact fun h ↦ isBlock_subgroup h
232230

233231
@[to_additive]
234232
lemma disjoint_smul_finset_mulStab_mul_mulStab :
@@ -336,27 +334,24 @@ lemma card_mulStab_mul_card_image_coe (s t : Finset α) :
336334
have h1 : Fintype.card ((s * t : Finset α) : Set α) = Fintype.card (s * t) := by congr
337335
have h2 : (s +ˢ stabilizer α (s * t)) * (t +ˢ stabilizer α (s * t)) =
338336
↑((s +ₛ stabilizer α (s * t)) * (t +ₛ stabilizer α (s * t))) := by simp
339-
sorry
340-
-- have h3 :
341-
-- Fintype.card (((s : Set α).image coe : Set (α ⧸ stabilizer α (s * t))) * coe '' (t : Set α)) =
342-
-- Fintype.card ((s.image coe : Finset (α ⧸ stabilizer α (s * t))) * image coe t) := by
343-
-- simp_rw [h2]
344-
-- congr
345-
-- simp only [h1, h3, Fintype.card_coe] at temp
346-
-- rw [temp]
337+
have h3 :
338+
Fintype.card ((s +ˢ stabilizer α (s * t)) * (t +ˢ stabilizer α (s * t))) =
339+
Fintype.card ((s +ₛ stabilizer α (s * t)) * (t +ₛ stabilizer α (s * t))) := by
340+
simp_rw [h2]
341+
congr
342+
simp only [h1, h3, Fintype.card_coe] at temp
343+
rw [temp]
347344

348345
@[to_additive]
349346
lemma subgroup_mul_card_eq_mul_of_mul_stab_subset (s : Subgroup α) (t : Finset α)
350347
(hst : (s : Set α) ⊆ t.mulStab) : Nat.card s * #(t +ₛ s) = #t := by
351-
have h : (t : Set α) * s = t := by
352-
apply Set.Subset.antisymm (Set.Subset.trans (Set.mul_subset_mul_left hst) _)
353-
· intro x
354-
rw [Set.mem_mul]
355-
aesop
356-
· rw [← coe_mul, mul_mulStab]
357-
have := s.subgroup_mul_card_eq_mul t
358-
rw [h] at this
359-
simpa
348+
suffices h : (t : Set α) * s = t by
349+
simpa [h, eq_comm] using s.card_mul_eq_card_subgroup_mul_card_quotient t
350+
apply Set.Subset.antisymm (Set.Subset.trans (Set.mul_subset_mul_left hst) _)
351+
· intro x
352+
rw [Set.mem_mul]
353+
aesop
354+
· rw [← coe_mul, mul_mulStab]
360355

361356
@[to_additive]
362357
lemma mulStab_quotient_commute_subgroup (s : Subgroup α) (t : Finset α)

LeanCamCombi/Mathlib/Algebra/Group/Pointwise/Finset/Basic.lean

Lines changed: 0 additions & 70 deletions
This file was deleted.

0 commit comments

Comments
 (0)