theorem
proved
kernel_at_ratio_one_alpha_zero
show as:
view math explainer →
open explainer
Read the cached plain-language explainer.
open lean source
IndisputableMonolith.ILG.Kernel on GitHub at line 117.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
formal source
114 linarith
115
116/-- Kernel equals 1 + C when the ratio a/(k τ₀) = 1 and α = 0. -/
117theorem kernel_at_ratio_one_alpha_zero (P : KernelParams) (hα : P.alpha = 0)
118 (k a : ℝ) (hk : k ≠ 0) (hratio : a / (k * P.tau0) = 1) (h1ge : (0.01 : ℝ) ≤ 1) :
119 kernel P k a = 1 + P.C := by
120 unfold kernel
121 have hmax : max 0.01 (a / (k * P.tau0)) = 1 := by
122 rw [hratio]
123 exact max_eq_right h1ge
124 simp [hmax, hα, Real.rpow_zero]
125
126/-- Kernel equals 1 when C = 0 (no ILG modification). -/
127theorem kernel_eq_one_of_C_zero (P : KernelParams) (hC : P.C = 0) (k a : ℝ) :
128 kernel P k a = 1 := by
129 simp [kernel, hC]
130
131/-! ## Monotonicity Properties -/
132
133/-- For fixed k and positive α, the kernel is monotonically increasing in a
134 when a/(k τ₀) ≥ 0.01. -/
135theorem kernel_mono_in_a (P : KernelParams) (hα_pos : 0 < P.alpha) (hC_pos : 0 < P.C)
136 (k : ℝ) (hk : 0 < k) (a₁ a₂ : ℝ)
137 (ha₁ : 0.01 * (k * P.tau0) ≤ a₁) (ha₁₂ : a₁ ≤ a₂) :
138 kernel P k a₁ ≤ kernel P k a₂ := by
139 unfold kernel
140 -- When a ≥ 0.01 * (k τ₀), the max is just a / (k τ₀)
141 have hktau_pos : 0 < k * P.tau0 := mul_pos hk P.tau0_pos
142 have hr₁ : 0.01 ≤ a₁ / (k * P.tau0) := by
143 rwa [le_div_iff₀ hktau_pos]
144 have hmax₁ : max 0.01 (a₁ / (k * P.tau0)) = a₁ / (k * P.tau0) := max_eq_right hr₁
145 have hr₂ : 0.01 ≤ a₂ / (k * P.tau0) := by
146 have : a₁ / (k * P.tau0) ≤ a₂ / (k * P.tau0) := by
147 apply div_le_div_of_nonneg_right ha₁₂