@@ -9153,7 +9153,85 @@ lemma vGeTwo_le_uCandidate
91539153 (fun {x y} hA1 => vGeTwo_le_uA1_on_closureA1 p hp hA1) x y
91549154
91559155
9156- /-! ## 12. Majorant existence statement -/
9156+ /-! ## 12. uCandidate(p,x,y) <0 If xy=0 e (x,y) ≠ (0,0) -/
9157+
9158+ lemma uCandidate_le_zero_of_xy_zero
9159+ (p x y : ℝ) (hp : 2 ≤ p)
9160+ (hxy : x * y = 0 ) (_hnonzero : (x, y) ≠ (0 , 0 )) :
9161+ uCandidate p x y ≤ 0 := by
9162+ have hv_axis : ∀ t : ℝ, vGeTwo p t 0 ≤ 0 := by
9163+ intro t
9164+ have hp_nonneg : 0 ≤ p := by linarith
9165+ have hbase : (1 : ℝ) ≤ p - 1 := by linarith
9166+ have hpow : (1 : ℝ) ≤ Real.rpow (p - 1 ) p := by
9167+ simpa [Real.one_rpow] using
9168+ (Real.rpow_le_rpow
9169+ (by norm_num : (0 : ℝ) ≤ 1 ) hbase hp_nonneg)
9170+ have hA_nonneg : 0 ≤ Real.rpow (|t / 2 |) p :=
9171+ Real.rpow_nonneg (abs_nonneg (t / 2 )) p
9172+ have hle :
9173+ Real.rpow (|t / 2 |) p ≤
9174+ Real.rpow (p - 1 ) p * Real.rpow (|t / 2 |) p := by
9175+ simpa [one_mul] using mul_le_mul_of_nonneg_right hpow hA_nonneg
9176+ have hsum : ((t + 0 ) / 2 : ℝ) = t / 2 := by ring
9177+ have hdiff : ((t - 0 ) / 2 : ℝ) = t / 2 := by ring
9178+ simpa [vGeTwo, hsum, hdiff] using sub_nonpos.mpr hle
9179+
9180+ have haux_axis : ∀ t : ℝ, 0 ≤ t → auxFunction1 p t 0 ≤ 0 := by
9181+ intro t ht
9182+ have h2 : closureA2 p t 0 := by
9183+ refine ⟨ht, by linarith, ?_⟩
9184+ exact mul_nonneg (a_nonneg_of_two_le p hp) ht
9185+ rw [auxFunction1_eq_vGeTwo p hp t 0 h2]
9186+ exact hv_axis t
9187+
9188+ rcases mem_some_QuarterPlane x y with hQ1 | hrest
9189+ · rw [uCandidate_eq_Q1 p hQ1]
9190+ have hy0 : y = 0 := by
9191+ rcases mul_eq_zero.mp hxy with hx0 | hy0
9192+ · have hy_le : y ≤ 0 := by simpa [hx0] using hQ1.2 .1
9193+ have hy_ge : 0 ≤ y := by simpa [hx0] using hQ1.2 .2
9194+ exact le_antisymm hy_le hy_ge
9195+ · exact hy0
9196+ subst y
9197+ exact haux_axis x hQ1.1
9198+
9199+ rcases hrest with hQ2 | hrest
9200+ · rw [uCandidate_eq_Q2 p hQ2]
9201+ have hy0 : y = 0 := by
9202+ rcases mul_eq_zero.mp hxy with hx0 | hy0
9203+ · have hy_le : y ≤ 0 := by simpa [hx0] using hQ2.2 .1
9204+ have hy_ge : 0 ≤ y := by simpa [hx0] using hQ2.2 .2
9205+ exact le_antisymm hy_le hy_ge
9206+ · exact hy0
9207+ subst y
9208+ have ht : 0 ≤ -x := by linarith [hQ2.1 ]
9209+ simpa using haux_axis (-x) ht
9210+
9211+ rcases hrest with hQ3 | hQ4
9212+ · rw [uCandidate_eq_Q3 p hQ3]
9213+ have hx0 : x = 0 := by
9214+ rcases mul_eq_zero.mp hxy with hx0 | hy0
9215+ · exact hx0
9216+ · have hx_ge : 0 ≤ x := by simpa [hy0] using hQ3.2 .1
9217+ have hx_le : x ≤ 0 := by simpa [hy0] using hQ3.2 .2
9218+ exact le_antisymm hx_le hx_ge
9219+ subst x
9220+ exact haux_axis y hQ3.1
9221+
9222+ · rw [uCandidate_eq_Q4 p hQ4]
9223+ have hx0 : x = 0 := by
9224+ rcases mul_eq_zero.mp hxy with hx0 | hy0
9225+ · exact hx0
9226+ · have hx_ge : 0 ≤ x := by simpa [hy0] using hQ4.2 .1
9227+ have hx_le : x ≤ 0 := by simpa [hy0] using hQ4.2 .2
9228+ exact le_antisymm hx_le hx_ge
9229+ subst x
9230+ have ht : 0 ≤ -y := by linarith [hQ4.1 ]
9231+ simpa using haux_axis (-y) ht
9232+
9233+
9234+ /-! 13. Majorant existence statement -/
91579235
91589236/-
91599237This final theorem is the high-level packaging goal for the candidate. The
0 commit comments