@@ -94,10 +94,14 @@ lemma tile_reach {ϑ : Θ X} {N : ℕ} {p p' : 𝔓 X} (hp : dist_(p) (𝒬 p)
9494 simp only [defaultD, Nat.cast_pow, Nat.cast_ofNat]
9595 rw [h4, ← zpow_natCast, ← zpow_add₀ two_ne_zero, ← zpow_add₀ two_ne_zero,
9696 ← zpow_zero (2 : ℝ)]
97- rw [Nat.cast_mul, Nat.cast_ofNat, Nat. cast_pow]
97+ rw [Nat.cast_mul, Nat.cast_pow]
9898 gcongr --uses h12
99- ring_nf
100- nlinarith only
99+ suffices (2 : ℤ) * a + 5 * a ^ 2 ≤ 𝕔 * a ^ 2 by linarith
100+ norm_cast
101+ calc 2 * a + 5 * a ^ 2
102+ _ ≤ a * a + 5 * a ^ 2 := by gcongr; linarith [four_le_a X]
103+ _ = 6 * a ^ 2 := by ring
104+ _ ≤ 𝕔 * a ^ 2 := by gcongr; linarith [seven_le_c]
101105 _ = (4 * 2 ^ (2 - 5 * (a : ℤ) ^ 2 - 2 * ↑a)) * (D * D ^ 𝔰 p) := by ring
102106 _ ≤ 4 * 2 ^ (2 - 5 * (a : ℤ) ^ 2 - 2 * ↑a) * D ^ 𝔰 p' := by
103107 have h1D : 1 ≤ (D : ℝ) := one_le_D
@@ -358,11 +362,11 @@ lemma local_antichain_density {𝔄 : Set (𝔓 X)} (h𝔄 : IsAntichain (· ≤
358362 rw [inter_assoc, inter_assoc]; exact (hE.inter_right _).inter_left _
359363
360364/-- The constant appearing in Lemma 6.3.4. -/
361- def C6_3_4 (a N : ℕ) : ℝ≥0 := 2 ^( 101 *a^ 3 + N* a)
365+ def C6_3_4 (a N : ℕ) : ℝ≥0 := 2 ^ ((𝕔 + 1 ) * a ^ 3 + N * a)
362366
363367/-- Auxiliary constant for Lemma 6.3.4. -/
364368def C6_3_4' (a N : ℕ) : ℝ≥0 :=
365- ((( 2 : ℝ≥ 0 )^ (a * (N + 5 )) + 2 ^ (a * N + a * 3 )) * 2 ^ (100 * a^3 + 5 * a))
369+ ((2 ^ (a * (N + 5 )) + 2 ^ (a * N + a * 3 )) * 2 ^ (𝕔 * a^3 + 5 * a))
366370
367371variable (𝔄 : Set (𝔓 X)) (ϑ : range (Q (X := X))) (N : ℕ)
368372
@@ -803,7 +807,7 @@ private lemma ineq_6_3_39 (h𝔄 : IsAntichain (· ≤ ·) 𝔄) {L : Grid X}
803807
804808-- Ineq. 6.3.41
805809private lemma volume_L'_le {L : Grid X} (hL : L ∈ 𝓛' 𝔄 ϑ N) :
806- volume (L' hL : Set X) ≤ 2 ^ (100 * a^3 + 5 *a) * volume (L : Set X) := by
810+ volume (L' hL : Set X) ≤ 2 ^ (𝕔 * a^3 + 5 *a) * volume (L : Set X) := by
807811 have hc : dist (c L) (c (L' hL)) + 4 * D ^ s (L' hL) ≤ 8 * D ^ s (L' hL) := by
808812 calc dist (c L) (c (L' hL)) + 4 * D ^ s (L' hL)
809813 _ ≤ 4 * ↑D ^ s (L' hL) + 4 * D ^ s (L' hL) := by grw [Grid.dist_c_le_of_subset (L_le_L' hL).1 ]
@@ -816,17 +820,17 @@ private lemma volume_L'_le {L : Grid X} (hL : L ∈ 𝓛' 𝔄 ϑ N) :
816820 _ = volume (ball (c L) ((32 * D) * (D ^ (s L))/4 )) := by
817821 rw [s_L'_eq hL, zpow_add₀ (by simp), zpow_one]
818822 ring_nf
819- _ = volume (ball (c L) ((2 ^( 100 * a^2 + 5 )) * ((D ^ (s L))/4 ))) := by
823+ _ = volume (ball (c L) ((2 ^ (𝕔 * a^2 + 5 )) * ((D ^ (s L))/4 ))) := by
820824 have h32 : (32 : ℝ) = (2 ^5 : ℕ) := by norm_num
821825 congr; simp only [defaultD, h32]; norm_cast; ring_nf
822- _ ≤ 2 ^ (100 * a^3 + 5 *a) * volume (ball (c L) ((D ^ (s L))/4 )) := by
823- have : (2 : ℝ≥0 ∞) ^ (100 * a^3 + 5 *a) = (defaultA a)^( 100 * a^2 + 5 ) := by
826+ _ ≤ 2 ^ (𝕔 * a^3 + 5 *a) * volume (ball (c L) ((D ^ (s L))/4 )) := by
827+ have : (2 : ℝ≥0 ∞) ^ (𝕔 * a^3 + 5 *a) = (defaultA a) ^ (𝕔 * a^2 + 5 ) := by
824828 simp only [defaultA, Nat.cast_pow, Nat.cast_ofNat, ← pow_mul]
825829 ring
826830 rw [this]
827831 exact DoublingMeasure.volume_ball_two_le_same_repeat (c L) ((D ^ (s L))/4 )
828- (100 * a ^ 2 + 5 )
829- _ ≤ 2 ^ (100 * a^3 + 5 *a) * volume (L : Set X) := by gcongr; exact ball_subset_Grid
832+ (𝕔 * a ^ 2 + 5 )
833+ _ ≤ 2 ^ (𝕔 * a^3 + 5 *a) * volume (L : Set X) := by gcongr; exact ball_subset_Grid
830834
831835-- Ineq. 6.3.30
832836open Classical in
@@ -866,11 +870,10 @@ lemma global_antichain_density_aux (h𝔄 : IsAntichain (· ≤ ·) 𝔄) {L : G
866870 gcongr
867871 exact ineq_6_3_38 hL
868872 _ ≤ (2 ^(a * (N + 5 )) + 2 ^(a * N + a * 3 )) * dens₁ (𝔄 : Set (𝔓 X)) *
869- 2 ^ (100 *a^3 + 5 *a) * volume (L : Set X) := by
870- grw [mul_assoc _ (2 ^ (100 *a^3 + 5 *a)) _, volume_L'_le hL]
871- _ = ((2 ^(a * (N + 5 )) + 2 ^(a * N + a * 3 )) * 2 ^ (100 *a^3 + 5 *a)) * dens₁ (𝔄 : Set (𝔓 X)) *
872- volume (L : Set X) := by ring
873- _ = ↑(C6_3_4' a N) * dens₁ (𝔄 : Set (𝔓 X)) * volume (L : Set X) := by rfl
873+ 2 ^ (𝕔 * a^3 + 5 *a) * volume (L : Set X) := by
874+ grw [mul_assoc _ (2 ^ (𝕔 * a^3 + 5 *a)) _, volume_L'_le hL]
875+ _ = ((2 ^(a * (N + 5 )) + 2 ^(a * N + a * 3 )) * 2 ^ (𝕔 * a ^ 3 + 5 * a))
876+ * dens₁ (𝔄 : Set (𝔓 X)) * volume (L : Set X) := by ring
874877
875878variable (𝔄 ϑ N)
876879
@@ -924,50 +927,12 @@ private lemma lhs : ∑ (p ∈ (𝔄_aux 𝔄 ϑ N).toFinset), volume (E p ∩ G
924927 ∑ p ∈ (𝔄_min 𝔄 ϑ N).toFinset, volume (E p ∩ G) := by rw [lhs']
925928
926929private lemma le_C6_3_4 (ha : 4 ≤ a) :
927- (((2 : ℝ≥0 ∞) ^ (a * (N + 5 )) + 2 ^ (a * N + a * 3 )) * 2 ^ (100 * a ^ 3 + 5 * a)) +
928- 2 ^ (a * (N + 5 )) ≤ (C6_3_4 a N) := by
929- calc ((2 : ℝ≥0 ∞) ^ (a * (N + 5 )) + 2 ^ (a * N + a * 3 )) * 2 ^ (100 * a ^ 3 + 5 * a) +
930- 2 ^ (a * (N + 5 ))
931- _ ≤ (2 ^(a * N + a * 5 ) + 2 ^(a * N + a * 5 )) * 2 ^ (100 *a^3 + 5 *a) + 2 ^ (a * N + a* 5 ) * 1 := by
932- have h12 : (1 : ℝ≥0 ∞) ≤ 2 := one_le_two
933- have h35 : 3 ≤ 5 := by omega
934- gcongr <;> apply le_of_eq <;> ring
935- _ = 2 ^(a * N + a * 5 ) * (2 * 2 ^ (100 *a^3 + 5 *a)) + 2 ^ (a * N + a* 5 ) * 1 := by
936- rw [← two_mul]; ring
937- _ = 2 ^(a * N + a * 5 ) * (2 * 2 ^ (100 *a^3 + 5 *a) + 1 ) := by ring
938- _ ≤ 2 ^(a * N + a * 5 ) * (2 ^2 * 2 ^ (100 *a^3 + 5 *a)) := by
939- gcongr
940- norm_cast
941- rw [pow_two, mul_assoc 2 2 ]
942- conv_rhs => rw [two_mul]
943- gcongr
944- exact NeZero.one_le
945- _ = 2 ^(100 *a^3 + a * N + a * 10 + 2 ) := by
946- rw [← pow_add, ← pow_add]
947- congr 1
948- ring
949- _ ≤ ↑(C6_3_4 a N) := by
950- have h101 : 101 * a ^ 3 = 100 * a ^ 3 + a ^ 3 := by ring
951- have ha3 : a ^ 3 = a * (a^2 - 1 ) + a := by
952- simp only [mul_tsub, mul_one]
953- rw [tsub_add_cancel_of_le]
954- · ring
955- · nth_rewrite 1 [← mul_one a]
956- have ha' : 1 ≤ a^1 := by linarith
957- gcongr
958- apply le_trans ha' (Nat.pow_le_pow_right (by linarith) one_le_two)
959- rw [C6_3_4]
960- norm_cast
961- apply pow_le_pow (le_refl _) one_le_two
962- rw [add_assoc, add_assoc, add_comm (a * N), ← add_assoc, ← add_assoc, mul_comm N]
963- gcongr
964- rw [add_assoc, h101]
965- nth_rewrite 3 [ha3]
966- gcongr
967- · calc 10
968- _ ≤ 4 ^2 - 1 := by norm_num
969- _ ≤ a ^ 2 - 1 := by gcongr
970- · linarith
930+ (((2 : ℝ≥0 ∞) ^ (a * (N + 5 )) + 2 ^ (a * N + a * 3 )) * 2 ^ (𝕔 * a ^ 3 + 5 * a)) +
931+ 2 ^ (a * (N + 5 )) ≤ C6_3_4 a N := by
932+ simp only [add_mul, ← pow_add, C6_3_4, one_mul, ENNReal.coe_pow, ENNReal.coe_ofNat]
933+ apply add_le_pow_two₃ le_rfl (by linarith) (by omega) ?_
934+ ring_nf
935+ linarith [sixteen_times_le_cube ha]
971936
972937-- Lemma 6.3.4
973938open Classical in
@@ -1083,7 +1048,7 @@ open Classical in
10831048lemma tile_count_aux {𝔄 : Set (𝔓 X)} (h𝔄 : IsAntichain (· ≤ ·) 𝔄) (ϑ : range (Q (X := X)))
10841049 {n : ℕ} : eLpNorm (fun x ↦ ∑ p ∈ 𝔄_aux 𝔄 ϑ n, (2 : ℝ) ^ (-n * (2 * a ^ 2 + a ^ 3 : ℝ)⁻¹) *
10851050 (E p).indicator 1 x * G.indicator 1 x) (ENNReal.ofReal (p₆ a)) volume ≤
1086- (2 ^ (101 * a ^ 3 - n : ℝ)) ^ (p₆ a)⁻¹ * dens₁ 𝔄 ^ (p₆ a)⁻¹ *
1051+ (2 ^ ((𝕔 + 1 ) * a ^ 3 - n : ℝ)) ^ (p₆ a)⁻¹ * dens₁ 𝔄 ^ (p₆ a)⁻¹ *
10871052 volume (⋃ p ∈ 𝔄, (𝓘 p : Set X)) ^ (p₆ a)⁻¹ := by
10881053 have a4 := four_le_a X
10891054 have p₆p := p₆_pos a4
@@ -1155,10 +1120,10 @@ lemma tile_count_aux {𝔄 : Set (𝔓 X)} (h𝔄 : IsAntichain (· ≤ ·) 𝔄
11551120def C6_1_6 (a : ℕ) : ℝ≥0 := 2 ^ (5 * a)
11561121
11571122lemma le_C6_1_6 (a4 : 4 ≤ a) :
1158- (2 : ℝ≥0 ∞) ^ (101 * a ^ 3 / p₆ a) * ∑ n ∈ Finset.range N, (2 ^ (-(p₆ a)⁻¹)) ^ n ≤ C6_1_6 a := by
1123+ (2 : ℝ≥0 ∞) ^ ((𝕔 + 1 ) * a ^ 3 / p₆ a) * ∑ n ∈ Finset.range N, (2 ^ (-(p₆ a)⁻¹)) ^ n ≤ C6_1_6 a := by
11591124 have p₆p := p₆_pos a4
11601125 calc
1161- _ ≤ (2 : ℝ≥0 ∞) ^ (101 * a ^ 3 / p₆ a) * (8 * a ^ 4 ) := by
1126+ _ ≤ (2 : ℝ≥0 ∞) ^ ((𝕔 + 1 ) * a ^ 3 / p₆ a) * (8 * a ^ 4 ) := by
11621127 gcongr
11631128 calc
11641129 _ ≤ _ := ENNReal.sum_le_tsum _
@@ -1172,7 +1137,8 @@ lemma le_C6_1_6 (a4 : 4 ≤ a) :
11721137 gcongr
11731138 · exact one_le_two
11741139 · rw [div_le_iff₀ p₆p, p₆]; norm_cast; rw [show 7 * (4 * a ^ 4 ) = 28 * a * a ^ 3 by ring]
1175- gcongr; omega
1140+ gcongr
1141+ linarith [c_le_100]
11761142 · exact_mod_cast calculation_6_1_6 a4
11771143 _ ≤ _ := by
11781144 rw [C6_1_6]; norm_cast; rw [← pow_add]; gcongr
@@ -1219,10 +1185,10 @@ lemma tile_count {𝔄 : Set (𝔓 X)} (h𝔄 : IsAntichain (· ≤ ·) 𝔄) (
12191185 apply ENNReal.ofReal_le_ofReal
12201186 simp only [𝔄_aux, mem_toFinset] at mp
12211187 exact mp.2 .1
1222- _ ≤ ∑ n ∈ Finset.range N, (2 ^ (101 * a ^ 3 - n : ℝ)) ^ (p₆ a)⁻¹ * dens₁ 𝔄 ^ (p₆ a)⁻¹ *
1188+ _ ≤ ∑ n ∈ Finset.range N, (2 ^ ((𝕔 + 1 ) * a ^ 3 - n : ℝ)) ^ (p₆ a)⁻¹ * dens₁ 𝔄 ^ (p₆ a)⁻¹ *
12231189 volume (⋃ p ∈ 𝔄, (𝓘 p : Set X)) ^ (p₆ a)⁻¹ :=
12241190 Finset.sum_le_sum fun _ _ ↦ tile_count_aux h𝔄 ϑ
1225- _ = 2 ^ (101 * a ^ 3 / p₆ a) * (∑ n ∈ Finset.range N, (2 ^ (-(p₆ a)⁻¹)) ^ n) *
1191+ _ = 2 ^ ((𝕔 + 1 ) * a ^ 3 / p₆ a) * (∑ n ∈ Finset.range N, (2 ^ (-(p₆ a)⁻¹)) ^ n) *
12261192 dens₁ 𝔄 ^ (p₆ a)⁻¹ * volume (⋃ p ∈ 𝔄, (𝓘 p : Set X)) ^ (p₆ a)⁻¹ := by
12271193 rw [← Finset.sum_mul, ← Finset.sum_mul, Finset.mul_sum]; congr! with n mn
12281194 rw [← ENNReal.rpow_natCast, ← ENNReal.rpow_mul, ← ENNReal.rpow_mul, neg_mul, ← div_eq_inv_mul,
0 commit comments