IndisputableMonolith.Verification.DAlembertSymmetryCert
IndisputableMonolith/Verification/DAlembertSymmetryCert.lean · 78 lines · 1 declarations
show as:
view math explainer →
1import Mathlib
2import IndisputableMonolith.Cost.FunctionalEquation
3
4namespace IndisputableMonolith
5namespace Verification
6namespace DAlembertSymmetry
7
8open IndisputableMonolith.Cost.FunctionalEquation
9
10/-!
11# D'Alembert Symmetry Certificate
12
13This certificate packages the proof that the d'Alembert functional equation
14implies even symmetry:
15
16If H satisfies:
17- H(0) = 1
18- H(t+u) + H(t-u) = 2·H(t)·H(u) for all t, u
19
20Then H is an even function: H(-t) = H(t) for all t.
21
22## Why this matters for the certificate chain
23
24The d'Alembert functional equation is the characteristic equation of cosh and cos.
25This certificate proves:
26
271. **Symmetry is forced**: The d'Alembert equation alone (with H(0) = 1) implies
28 H is even - no additional symmetry assumption is needed
29
302. **Foundation for ODE analysis**: Even symmetry at differentiable points implies
31 H'(0) = 0, which combined with H(0) = 1 gives the correct initial conditions
32 for the ODE H'' = H
33
343. **Cost uniqueness connection**: This is a key step in proving Jlog (and hence J)
35 is uniquely determined
36
37## Proven Results
38
391. `dAlembert_even`: d'Alembert equation with H(0) = 1 implies H is even
402. `even_deriv_at_zero`: even differentiable functions have H'(0) = 0
41-/
42
43structure DAlembertSymmetryCert where
44 deriving Repr
45
46/-- Verification predicate: d'Alembert functional equation implies symmetry.
47
48This certifies:
491. d'Alembert with H(0) = 1 implies H is even (H(-t) = H(t))
502. Even + differentiable at 0 implies H'(0) = 0
51-/
52@[simp] def DAlembertSymmetryCert.verified (_c : DAlembertSymmetryCert) : Prop :=
53 -- 1) d'Alembert functional equation implies even symmetry
54 (∀ H : ℝ → ℝ,
55 H 0 = 1 →
56 (∀ t u, H (t+u) + H (t-u) = 2 * H t * H u) →
57 Function.Even H) ∧
58 -- 2) Even + differentiable at 0 implies derivative is 0
59 (∀ H : ℝ → ℝ,
60 Function.Even H →
61 DifferentiableAt ℝ H 0 →
62 deriv H 0 = 0)
63
64/-- Top-level theorem: the certificate verifies. -/
65@[simp] theorem DAlembertSymmetryCert.verified_any (c : DAlembertSymmetryCert) :
66 DAlembertSymmetryCert.verified c := by
67 constructor
68 · -- d'Alembert implies even
69 intro H h_one h_dAlem
70 exact dAlembert_even H h_one h_dAlem
71 · -- Even + differentiable implies H'(0) = 0
72 intro H h_even h_diff
73 exact even_deriv_at_zero H h_even h_diff
74
75end DAlembertSymmetry
76end Verification
77end IndisputableMonolith
78