Skip to content

Commit b6074d7

Browse files
committed
Bump mathlib to v4.22.0
1 parent ea0712f commit b6074d7

28 files changed

Lines changed: 155 additions & 187 deletions

LeanAPAP/Extras/BSG.lean

Lines changed: 11 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@ private lemma oneOfPair_mem :
1818
x ∈ oneOfPair H X ↔ x ∈ X ∧ (3 / 4 : ℝ) * #X ≤ #{yz ∈ H | yz.1 = x} := mem_filter
1919

2020
private lemma oneOfPair_mem' (hH : H ⊆ X ×ˢ X) : #{yz ∈ H | yz.1 = x} = #{c ∈ X | (x, c) ∈ H} := by
21-
refine card_nbij' Prod.snd (fun c ↦ (x, c)) ?_ (by simp) (by aesop) (by simp)
22-
simp (config := { contextual := true }) only [eq_comm, Prod.forall, mem_filter, and_imp, and_true]
23-
exact fun a b hab _ ↦ (mem_product.1 (hH hab)).2
21+
refine card_nbij' Prod.snd (fun c ↦ (x, c)) ?_ (by simp [Set.MapsTo])
22+
(by aesop (add simp [Set.LeftInvOn])) (by simp [Set.LeftInvOn])
23+
simpa +contextual [Set.MapsTo, eq_comm] using fun a b hab _ ↦ (mem_product.1 (hH hab)).2
2424

2525
private lemma oneOfPair_bound_one :
2626
∑ x ∈ X \ oneOfPair H X, (#{yz ∈ H | yz.1 = x} : ℝ) ≤ (3 / 4) * #X ^ 2 :=
2727
calc _ ≤ ∑ _x ∈ X \ oneOfPair H X, (3 / 4 : ℝ) * #X := by
2828
gcongr with i hi
29-
simp only [oneOfPair, ← filter_not, Prod.forall, not_le, not_lt, mem_filter] at hi
29+
simp only [oneOfPair, ← filter_not, not_le, mem_filter] at hi
3030
exact hi.2.le
3131
_ = #(X \ oneOfPair H X) * ((3 / 4 : ℝ) * #X) := by simp
3232
_ ≤ #X * ((3 / 4 : ℝ) * #X) := by gcongr; exact sdiff_subset
@@ -72,13 +72,8 @@ lemma quadruple_bound_right {a b : α} (H : Finset (α × α)) (X : Finset α) (
7272
fun ⟨⟨a₁, a₂⟩, a₃, a₄⟩ ↦ a₁ - a₂ = a - c ∧ a₃ - a₄ = b - c) : ℝ)
7373
≤ #(((B ×ˢ B) ×ˢ B ×ˢ B).filter fun ⟨⟨a₁, a₂⟩, a₃, a₄⟩ ↦ (a₁ - a₂) - (a₃ - a₄) = a - b) := by
7474
rw [← h, Nat.cast_le]
75-
refine card_le_card_of_injOn Sigma.snd ?_ ?_
76-
· simp only [not_and, mem_product, and_imp, Prod.forall, mem_sigma, mem_filter, Sigma.forall]
77-
intro c a₁ a₂ a₃ a₄ _ _ _ ha₁ ha₂ ha₃ ha₄ h₁ h₂
78-
simp [*]
79-
simp only [Set.InjOn, not_and, mem_product, and_imp, Prod.forall, mem_sigma, mem_filter,
80-
Sigma.forall, Sigma.mk.inj_iff, heq_eq_eq, Prod.mk.injEq]
81-
simp (config := {contextual := true})
75+
refine card_le_card_of_injOn Sigma.snd (by simp +contextual [Set.MapsTo, *]) ?_
76+
simp +contextual [Set.InjOn]
8277
aesop
8378

8479
end
@@ -93,7 +88,8 @@ lemma thing_one : (𝟭_[R] B ○ 𝟭 A) x = ∑ y, 𝟭 A y * 𝟭 B (x + y) :
9388
lemma thing_one_right : (𝟭_[R] A ○ 𝟭 B) x = #(A ∩ (x +ᵥ B)) := by
9489
rw [indicate_dconv_indicate_apply]
9590
congr 1
96-
apply card_nbij' Prod.fst (fun a ↦ (a, a - x)) <;> aesop (add simp [mem_vadd_finset])
91+
apply card_nbij' Prod.fst (fun a ↦ (a, a - x)) <;>
92+
aesop (add simp [Set.MapsTo, Set.LeftInvOn, Set.mem_vadd_set])
9793

9894
lemma thing_two : ∑ s, (𝟭_[R] A ○ 𝟭 B) s = #A * #B := by
9995
simp only [sum_dconv, conj_indicate_apply, sum_indicate]
@@ -264,8 +260,8 @@ lemma lemma_one {c K : ℝ} (hc : 0 < c) (hK : 0 < K) (hE : K⁻¹ * (#A ^ 2 * #
264260
← filter_mem_eq_inter]
265261
refine Nat.cast_le.2 <| card_le_card ?_
266262
rintro ⟨a, b⟩
267-
simp (config := { contextual := true }) only [not_le, mem_product, mem_inter, and_imp,
268-
Prod.forall, not_lt, mem_filter, H_choice, filter_congr_decidable, and_self, true_and, X]
263+
simp +contextual only [not_le, mem_product, mem_inter, and_imp, mem_filter, H_choice, and_self,
264+
true_and, X]
269265
rintro _ _ _ _ h
270266
-- I'd like automation to handle the rest of this
271267
refine h.le.trans ?_
@@ -338,7 +334,7 @@ lemma quadruple_bound_left {a b : G} {K : ℝ} {H : Finset (G × G)}
338334
_ ≤ ∑ c ∈ X with (a, c) ∈ H ∧ (b, c) ∈ H, (#(((B ×ˢ B) ×ˢ B ×ˢ B).filter
339335
fun ((a₁, a₂), a₃, a₄) ↦ a₁ - a₂ = a - c ∧ a₃ - a₄ = b - c) : ℝ) := by
340336
gcongr with i hi
341-
simp only [not_and, mem_filter] at hi
337+
simp only [mem_filter] at hi
342338
exact quadruple_bound_other hi.2.1 hi.2.2 hH
343339
_ = _ := by rw [card_sigma, Nat.cast_sum]
344340

LeanAPAP/FiniteField.lean

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ lemma di_in_ff [MeasurableSpace G] [DiscreteMeasurableSpace G] (hq₃ : 3 ≤ q)
259259
(ε / 2) (by positivity) (div_le_one_of_le₀ (hε₁.le.trans <| by norm_num) <| by norm_num)
260260
(card G • (balance (μ A) ○ balance (μ A))) (sqrt (card G) • balance (μ A)) (μ univ) ?_ ?_ ?_
261261
· ext a : 1
262-
simp [smul_dconv, dconv_smul, smul_smul, ← mul_assoc, ← sq, ← Complex.ofReal_pow]
262+
simp [smul_dconv, dconv_smul, ← mul_assoc, ← sq, ← Complex.ofReal_pow]
263263
· simp
264264
· have global_dichotomy := global_dichotomy hA₀ hγC hγ hAC
265265
simpa [wLpNorm_nsmul, ← nsmul_eq_mul, div_le_iff₀' (show (0 : ℝ) < card G by positivity),
@@ -417,7 +417,7 @@ lemma di_in_ff [MeasurableSpace G] [DiscreteMeasurableSpace G] (hq₃ : 3 ≤ q)
417417
rw [← wInner_one_dconv_eq_conv_wInner_one, dconv_right_comm, conv_dconv_right_comm (μ A),
418418
wInner_one_dconv_eq_conv_wInner_one, ← dconv_wInner_one_eq_wInner_one_conv,
419419
← conj_wInner_symm]
420-
simp [wInner_one_eq_sum, inner_apply', smul_sum, mul_assoc]
420+
simp [wInner_one_eq_sum, smul_sum, mul_assoc]
421421
congr! 1
422422
group
423423
_ ≤ card G • (‖μ_[ℝ] (Set.toFinset V) ∗ μ A‖_[∞] * ‖μ_[ℝ] A ∗ μ A₂ ○ μ A₁‖_[1]) := by
@@ -476,7 +476,7 @@ theorem ff (hq₃ : 3 ≤ q) (hq : q.Prime) (hA₀ : A.Nonempty) (hA : ThreeAPFr
476476
2⁻¹ ≤ card V * ⟪μ_[ℝ] B ∗ μ B, μ (B.image (2 • ·))⟫_[ℝ]) := by
477477
induction' i with i ih hi
478478
· exact ⟨G, inferInstance, inferInstance, inferInstance, inferInstance, A, by simp [n], hA,
479-
by simp [α], by simp [α, nnratCast_dens, Fintype.card_subtype, subset_iff]⟩
479+
by simp [α], by simp [α, nnratCast_dens]⟩
480480
obtain ⟨V, _, _, _, _, B, hV, hB, hαβ, hBV⟩ := ih
481481
obtain hB' | hB' := le_or_gt 2⁻¹ (card V * ⟪μ_[ℝ] B ∗ μ B, μ (B.image (2 • ·))⟫_[ℝ])
482482
· exact ⟨V, inferInstance, inferInstance, inferInstance, inferInstance, B,

LeanAPAP/Physics/AlmostPeriodicity.lean

Lines changed: 7 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ lemma my_markov (hc : 0 < c) (hg : ∀ a ∈ A, 0 ≤ g a) (h : ∑ a ∈ A, g a
6262
have := h.trans'
6363
(sum_le_sum_of_subset_of_nonneg (filter_subset (¬g · ≤ c) A) fun i hi _ ↦ hg _ hi)
6464
have :=
65-
(card_nsmul_le_sum _ _ c (by simp (config := { contextual := true }) [le_of_lt])).trans this
65+
(card_nsmul_le_sum _ _ c (by simp +contextual [le_of_lt])).trans this
6666
rw [nsmul_eq_mul, mul_right_comm] at this
6767
have := le_of_mul_le_mul_right this hc
6868
rw [filter_not, cast_card_sdiff (filter_subset _ _)] at this
@@ -135,7 +135,7 @@ lemma lemma28_part_one (hm : 1 ≤ m) (x : G) :
135135
refine (RCLike.marcinkiewicz_zygmund (by linarith only [hm]) f' ?_).trans_eq' ?_
136136
· intro i
137137
rw [Fintype.sum_piFinset_apply, sum_sub_distrib]
138-
simp only [sub_eq_zero, sum_const, indicate_apply]
138+
simp only [sum_const]
139139
rw [← Pi.smul_apply (card A), ← smul_conv, card_smul_mu, conv_eq_sum_sub']
140140
simp only [boole_mul, indicate_apply]
141141
rw [← sum_filter, filter_mem_eq_inter, univ_inter, sub_self, smul_zero]
@@ -155,7 +155,7 @@ lemma big_shifts_step2 (L : Finset (Fin k → G)) (hk : k ≠ 0) :
155155
refine fun f ↦ sum_congr rfl fun x hx ↦ ?_
156156
exact sum_congr rfl fun y hy ↦ if_pos <| add_mem_add hx hy
157157
rw [this]
158-
have (x y) :
158+
have (x y : Fin k → G) :
159159
∑ s₁ ∈ S.piDiag (Fin k), ∑ s₂ ∈ S.piDiag (Fin k), ite (y + s₂ = x + s₁) (1 : ℝ) 0 =
160160
ite (x - y ∈ univ.piDiag (Fin k)) 1 0 *
161161
∑ s₁ ∈ S.piDiag (Fin k), ∑ s₂ ∈ S.piDiag (Fin k), ite (s₂ = x + s₁ - y) 1 0 := by
@@ -200,8 +200,7 @@ lemma big_shifts (S : Finset G) (L : Finset (Fin k → G)) (hk : k ≠ 0)
200200
refine (card_le_card (add_subset_add_right hL)).trans ?_
201201
rw [← Fintype.card_piFinset_const]
202202
refine card_le_card fun i hi ↦ ?_
203-
simp only [mem_add, mem_piDiag, Fintype.mem_piFinset, exists_prop, exists_and_left,
204-
exists_exists_and_eq_and] at hi ⊢
203+
simp only [mem_add, mem_piDiag, Fintype.mem_piFinset, exists_exists_and_eq_and] at hi ⊢
205204
obtain ⟨y, hy, a, ha, rfl⟩ := hi
206205
intro j
207206
exact ⟨y j, hy _, a, ha, rfl⟩
@@ -220,7 +219,6 @@ lemma big_shifts (S : Finset G) (L : Finset (Fin k → G)) (hk : k ≠ 0)
220219

221220
variable [MeasurableSpace G]
222221

223-
224222
namespace AlmostPeriodicity
225223

226224
def LProp (k m : ℕ) (ε : ℝ) (f : G → ℂ) (A : Finset G) (a : Fin k → G) : Prop :=
@@ -302,9 +300,7 @@ lemma lemma28 (hε : 0 < ε) (hm : 1 ≤ m) (hk : (64 : ℝ) * m / ε ^ 2 ≤ k)
302300
(8 * m) ^ m * k ^ (m - 1) * ∑ a ∈ A ^^ k, ∑ i, (2 * ‖f‖_[2 * m]) ^ (2 * m) :=
303301
lemma28_part_two hm hA
304302
refine le_trans (mod_cast this) ?_
305-
simp only [sum_const, Fintype.card_piFinset_const, nsmul_eq_mul, Nat.cast_pow]
306-
refine (lemma28_end hε hm hk).trans_eq' ?_
307-
simp [mul_assoc, card_fin]
303+
simpa [mul_assoc] using lemma28_end hε hm hk
308304

309305
open MeasureTheory in
310306
lemma just_the_triangle_inequality {t : G} {a : Fin k → G} (ha : a ∈ l k m ε f A)
@@ -406,7 +402,7 @@ lemma almost_periodicity (ε : ℝ) (hε : 0 < ε) (hε' : ε ≤ 1) (m : ℕ) (
406402
exact T_bound hK₂ #L #S #A #(A + S) _ rfl hL' this
407403
(by rw [← cast_addConst_mul_card]; gcongr) hA.card_pos hε hε' hm
408404
intro t ht
409-
simp only [exists_prop, exists_eq_right, mem_filter, mem_univ, true_and] at ht
405+
simp only [mem_filter, mem_univ, true_and] at ht
410406
have := just_the_triangle_inequality ha ht hk.bot_lt hm
411407
rwa [neg_neg, mul_div_cancel₀ _ (two_ne_zero' ℝ)] at this
412408

@@ -440,7 +436,7 @@ theorem linfty_almost_periodicity (ε : ℝ) (hε₀ : 0 < ε) (hε₁ : ε ≤
440436
_ = _ := by simp [div_div_eq_mul_div, ← mul_div_right_comm, mul_right_comm, div_pow]
441437
_ ≤ _ := hKT
442438
set F : G → ℂ := τ t (μ A ∗ 𝟭 B) - μ A ∗ 𝟭 B
443-
have (x) :=
439+
have (x : G) :=
444440
calc
445441
(τ t (μ A ∗ 𝟭 B ∗ μ C) - μ A ∗ 𝟭 B ∗ μ C : G → ℂ) x
446442
= (F ∗ μ C) x := by simp [sub_conv, F]

LeanAPAP/Physics/DRC.lean

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ private lemma lemma_0 (p : ℕ) (B₁ B₂ A : Finset G) (f : G → ℝ) :
2929
refine Fintype.sum_equiv (Equiv.neg _) _ _ fun s ↦ ?_
3030
rw [← smul_mul_assoc, mul_smul_mul_comm, card_smul_mu_apply, card_smul_mu_apply,
3131
indicate_inter_apply, indicate_inter_apply, mul_mul_mul_comm, prod_mul_distrib]
32-
simp [c, indicate_inf_apply, ← translate_indicate, sub_eq_add_neg, mul_assoc, add_comm]
32+
simp [c, indicate_inf_apply, sub_eq_add_neg, mul_assoc, add_comm]
3333

3434
private lemma sum_c (p : ℕ) (B A : Finset G) : ∑ s, #(B ∩ c p A s) = #A ^ p * #B := by
3535
simp only [card_eq_sum_indicate, indicate_inter_apply, c, indicate_inf_apply, mul_sum, sum_mul,
@@ -91,7 +91,7 @@ lemma drc (hp₂ : 2 ≤ p) (f : G → ℝ≥0) (hf : ∃ x, x ∈ B₁ - B₂
9191
have : 0 ≤ μ_[ℝ] B₁ ○ μ B₂ * (𝟭 A ○ 𝟭 A) ^ p * (↑) ∘ f :=
9292
mul_nonneg (mul_nonneg (dconv_nonneg mu_nonneg mu_nonneg) <| pow_nonneg
9393
(dconv_nonneg indicate_nonneg indicate_nonneg) _) fun _ ↦ by simp -- positivity
94-
refine Fintype.sum_pos <| this.gt_iff_ne.2 <| support_nonempty_iff.1 ?_
94+
refine Fintype.sum_pos <| this.lt_iff_ne'.2 <| support_nonempty_iff.1 ?_
9595
simp only [support_comp_eq, Set.Nonempty, and_assoc, support_mul', support_dconv,
9696
indicate_nonneg, mu_nonneg, support_indicate, support_mu, NNReal.coe_eq_zero, iff_self,
9797
forall_const, Set.mem_inter_iff, ← coe_sub, mem_coe, support_pow' _ hp₀, hf]
@@ -160,7 +160,7 @@ lemma drc (hp₂ : 2 ≤ p) (f : G → ℝ≥0) (hf : ∃ x, x ∈ B₁ - B₂
160160
_ ≤ M * (sqrt (∑ s, #(A₁ s)) * sqrt (∑ s, #(A₂ s))) := by
161161
gcongr; exact sum_sqrt_mul_sqrt_le _ fun i ↦ by positivity fun i ↦ by positivity
162162
_ = _ := ?_
163-
· simp only [mem_filter, mem_univ, true_and, Nat.cast_nonneg, and_imp]
163+
· simp only [mem_filter, mem_univ, true_and, and_imp]
164164
exact fun s hsM hs ↦ mul_lt_mul_of_pos_right ((sqrt_lt' hM).2 hsM) <|
165165
sqrt_pos.2 <| (hg _).lt_of_ne' hs
166166
rw [sum_cast_c, sum_cast_c, sqrt_mul', sqrt_mul', mul_mul_mul_comm (sqrt _), mul_self_sqrt,
@@ -187,17 +187,16 @@ lemma sifting (B₁ B₂ : Finset G) (hε : 0 < ε) (hε₁ : ε ≤ 1) (hδ : 0
187187
c.Nonempty := by
188188
simp_rw [nonempty_iff_ne_empty]
189189
rintro rfl
190-
simp [pow_mul', (zero_lt_four' ℝ).not_ge, inv_mul_le_iff₀ (zero_lt_four' ℝ), mul_assoc,
191-
div_nonpos_iff, mul_nonpos_iff, (pow_pos (dLpNorm_conv_pos hp₀.ne' hB hA) 2).not_ge,
192-
hp₀, hp₀.ne', hA.ne_empty] at h
190+
simp [pow_mul', inv_mul_le_iff₀ (zero_lt_four' ℝ), div_nonpos_iff,
191+
(pow_pos (dLpNorm_conv_pos hp₀.ne' hB hA) 2).not_ge, hp₀.ne', hA.ne_empty] at h
193192
have hA₁ : A₁.Nonempty := aux _ _ hcard₁
194193
have hA₂ : A₂.Nonempty := aux _ _ hcard₂
195194
clear hcard₁ hcard₂ aux
196195
rw [sub_le_comm]
197196
calc
198197
_ = ∑ x ∈ (s p ε B₁ B₂ A)ᶜ, (μ A₁ ○ μ A₂) x := ?_
199198
_ = ⟪μ_[ℝ] A₁ ○ μ A₂, (↑) ∘ 𝟭_[ℝ≥0] ((s (↑p) ε B₁ B₂ A)ᶜ)⟫_[ℝ] := by
200-
simp [wInner_one_eq_sum, -mem_compl, -mem_s, apply_ite NNReal.toReal, indicate_apply]
199+
simp [wInner_one_eq_sum, -mem_compl, -mem_s, indicate_apply]
201200
_ ≤ _ := (le_div_iff₀ <| dLpNorm_conv_pos hp₀.ne' hB hA).2 h
202201
_ ≤ _ := ?_
203202
· simp_rw [sub_eq_iff_eq_add', sum_add_sum_compl, sum_dconv, map_mu]
@@ -252,8 +251,7 @@ lemma sifting_cor (hε : 0 < ε) (hε₁ : ε ≤ 1) (hδ : 0 < δ) (hp : Even p
252251
rw [nnratCast_dens, le_div_iff₀, ← mul_div_right_comm]
253252
calc
254253
_ = (‖𝟭_[ℝ] A ○ 𝟭 A‖_[1, μ univ] : ℝ) := by
255-
simp [mu, wLpNorm_smul_right, hp₀, dL1Norm_dconv, card_univ, inv_mul_eq_div]
256-
254+
simp [mu, wLpNorm_smul_right, dL1Norm_dconv, card_univ, inv_mul_eq_div]
257255
_ ≤ _ := wLpNorm_mono_right (one_le_two.trans <| by norm_cast) _ _
258256
· exact Nat.cast_pos.2 hA.card_pos
259257
obtain ⟨A₁, -, A₂, -, h, hcard₁, hcard₂⟩ :=

LeanAPAP/Physics/Unbalancing.lean

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,11 @@ lemma pow_inner_nonneg' {f : G → ℂ} (hf : g ○ g = f) (hν : h ○ h = (↑
3030
simpa using hyz
3131
_ = _ := by
3232
rw [← hf, ← hν, wInner_one_eq_sum]
33-
simp only [PiLp.toLp_apply, Pi.pow_apply, RCLike.inner_apply, map_pow]
33+
simp only [Pi.pow_apply, RCLike.inner_apply, map_pow]
3434
simp_rw [dconv_apply h, sum_mul]
3535
simp_rw [dconv_apply_sub, sum_fiberwise, ← univ_product_univ, sum_product]
3636
simp only [sum_pow', sum_mul_sum, map_mul, starRingEnd_self_apply, Fintype.piFinset_univ,
37-
← Complex.conj_mul', sum_product, map_sum, map_prod,
38-
mul_mul_mul_comm (g _), ← prod_mul_distrib]
37+
← Complex.conj_mul', map_sum, map_prod]
3938
simp only [mul_sum, @sum_comm _ _ (Fin k → G), mul_comm (conj _), prod_mul_distrib, Pi.conj_apply]
4039
rw [sum_comm]
4140
congr with x
@@ -193,7 +192,7 @@ private lemma unbalancing'' (p : ℕ) (hp : 5 ≤ p) (hp₁ : Odd p) (hε₀ : 0
193192
rpow_le_rpow ?_ (sum_le_sum_of_subset_of_nonneg (subset_univ _) fun i _ _ ↦ ?_) ?_
194193
_ = _ := by
195194
rw [wLpNorm_eq_sum_nnnorm (by positivity) (by simp)]
196-
simp [NNReal.smul_def, hp'.ne', p', (p'_pos hp hε₀ hε₁).le]
195+
simp [p', (p'_pos hp hε₀ hε₁).le]
197196
all_goals positivity
198197

199198
/-- The unbalancing step. Note that we do the physical proof in order to avoid the Fourier

LeanAPAP/Prereqs/Bohr/Basic.lean

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -194,26 +194,27 @@ example [Finite G] : Finite (AddChar G ℂ) := by infer_instance
194194

195195
open scoped Classical in
196196
noncomputable instance [Finite G] : SupSet (BohrSet G) where
197-
sSup B :=
198-
{ frequencies := {ψ | ⨆ i ∈ B, i.ewidth ψ < ⊤},
199-
ewidth := fun ψ => ⨆ i ∈ B, ewidth i ψ
200-
mem_frequencies := fun ψ => by simp [mem_frequencies] }
197+
sSup B := {
198+
frequencies := {ψ | ⨆ i ∈ B, i.ewidth ψ < ⊤},
199+
ewidth ψ := ⨆ i ∈ B, ewidth i ψ
200+
mem_frequencies := by simp
201+
}
201202

202203
lemma iInf_lt_top {α β : Type*} [CompleteLattice β] {S : Set α} {f : α → β}:
203204
(⨅ i ∈ S, f i) < ⊤ ↔ ∃ i ∈ S, f i < ⊤ := by
204205
simp [lt_top_iff_ne_top]
205206

206207
open scoped Classical in
207208
noncomputable instance [Finite G] : InfSet (BohrSet G) where
208-
sInf B :=
209-
{ frequencies := {ψ | ∃ i ∈ B, i.ewidth ψ < ⊤},
210-
ewidth := fun ψ => ⨅ i ∈ B, ewidth i ψ
211-
mem_frequencies := by simp [iInf_lt_top] }
209+
sInf B := {
210+
frequencies := {ψ | ∃ i ∈ B, i.ewidth ψ < ⊤},
211+
ewidth ψ := ⨅ i ∈ B, ewidth i ψ
212+
mem_frequencies := by simp
213+
}
212214

213215
noncomputable def minimalAxioms [Finite G] :
214216
CompletelyDistribLattice.MinimalAxioms (BohrSet G) :=
215-
Function.Injective.completelyDistribLatticeMinimalAxioms .of BohrSet.ewidth
216-
ewidth_injective
217+
ewidth_injective.completelyDistribLatticeMinimalAxioms .of BohrSet.ewidth
217218
(fun _ _ => rfl)
218219
(fun _ _ => rfl)
219220
(fun B => by
@@ -270,7 +271,7 @@ open scoped Classical
270271
noncomputable instance instSMul : SMul ℝ (BohrSet G) where
271272
smul ρ B := BohrSet.mk B.frequencies
272273
(fun ψ => if ψ ∈ B.frequencies then Real.nnabs ρ * B.ewidth ψ else ⊤) fun ψ => by
273-
simp only [lt_top_iff_ne_top, ite_ne_right_iff, Classical.not_imp, iff_self_and]
274+
simp only [lt_top_iff_ne_top, ite_ne_right_iff, iff_self_and]
274275
intro hψ
275276
refine ENNReal.mul_ne_top (by simp) ?_
276277
rwa [←lt_top_iff_ne_top, ←mem_frequencies]
@@ -302,8 +303,8 @@ end smul
302303
lemma eq_zero_of_ewidth_eq_zero {B : BohrSet G} [Finite G] (h : B.ewidth = 0) :
303304
B.chordSet = {0} := by
304305
rw [Set.eq_singleton_iff_unique_mem]
305-
simp only [zero_mem, true_and, mem_chordSet_iff_nnnorm_width, map_zero_eq_one, sub_self,
306-
norm_zero, true_and, NNReal.zero_le_coe, implies_true, nnnorm_zero, zero_le]
306+
simp only [mem_chordSet_iff_nnnorm_width, map_zero_eq_one, sub_self, nnnorm_zero, zero_le,
307+
implies_true, true_and]
307308
intro x hx
308309
by_contra!
309310
rw [←AddChar.exists_apply_ne_zero] at this

0 commit comments

Comments
 (0)