pith. machine review for the scientific record. sign in
theorem

ode_neg_zero_uniqueness

proved
show as:
view math explainer →
module
IndisputableMonolith.Cost.AczelTheorem
domain
Cost
line
288 · github
papers citing
none yet

open explainer

Generate a durable explainer page for this declaration.

open lean source

IndisputableMonolith.Cost.AczelTheorem on GitHub at line 288.

browse module

All declarations in this module, on Recognition.

explainer page

Tracked in the explainer inventory; generation is lazy so crawlers do not trigger LLM jobs.

open explainer

depends on

used by

formal source

 285
 286/-! ## §5 ODE Uniqueness for f'' = −f -/
 287
 288private theorem ode_neg_zero_uniqueness (f : ℝ → ℝ)
 289    (h_diff2 : ContDiff ℝ 2 f)
 290    (h_ode : ∀ t, deriv (deriv f) t = -(f t))
 291    (h_f0 : f 0 = 0) (h_f'0 : deriv f 0 = 0) :
 292    ∀ t, f t = 0 := by
 293  have h_d1 : Differentiable ℝ f := h_diff2.differentiable (by decide : (2 : WithTop ℕ∞) ≠ 0)
 294  have hCD1 : ContDiff ℝ 1 (deriv f) := by
 295    rw [show (2 : WithTop ℕ∞) = 1 + 1 from rfl] at h_diff2
 296    rw [contDiff_succ_iff_deriv] at h_diff2; exact h_diff2.2.2
 297  have h_dd : Differentiable ℝ (deriv f) :=
 298    hCD1.differentiable (by decide : (1 : WithTop ℕ∞) ≠ 0)
 299  have hE_deriv_zero : ∀ s, deriv (fun t => f t ^ 2 + deriv f t ^ 2) s = 0 := by
 300    intro s
 301    have h1 : HasDerivAt (fun x => f x ^ 2 + deriv f x ^ 2)
 302        (↑2 * f s ^ (2 - 1) * deriv f s + ↑2 * deriv f s ^ (2 - 1) * deriv (deriv f) s) s :=
 303      ((h_d1 s).hasDerivAt.pow 2).add ((h_dd s).hasDerivAt.pow 2)
 304    have h2 := h1.deriv; rw [h_ode s] at h2; push_cast at h2; simp only [pow_one] at h2
 305    linarith
 306  have hE_eq := is_const_of_deriv_eq_zero
 307    (show Differentiable ℝ (fun t => f t ^ 2 + deriv f t ^ 2) from
 308      (h_d1.pow 2).add (h_dd.pow 2))
 309    hE_deriv_zero
 310  intro t
 311  have hE0 : f 0 ^ 2 + deriv f 0 ^ 2 = 0 := by rw [h_f0, h_f'0]; ring
 312  have hEt := hE_eq t 0; simp only [hE0] at hEt
 313  nlinarith [sq_nonneg (f t), sq_nonneg (deriv f t)]
 314
 315private theorem ode_cos_uniqueness (f : ℝ → ℝ)
 316    (h_diff : ContDiff ℝ 2 f)
 317    (h_ode : ∀ t, deriv (deriv f) t = -(f t))
 318    (h_f0 : f 0 = 1) (h_f'0 : deriv f 0 = 0) :