pith. sign in
module module high

IndisputableMonolith.Foundation.GeneralizedDAlembert

show as:
view Lean formalization →

GeneralizedDAlembert assembles the Aczél–Kannappan classification for continuous solutions of the d'Alembert equation. Researchers deriving cost functionals from multiplicative consistency cite the module to obtain the constant-1, cosh, or cos cases. The structure reduces the classification to the integration bootstrap and ODE uniqueness lemmas imported from AczelProof and sibling modules.

claimEvery continuous solution $H:\mathbb{R}\to\mathbb{R}$ of $H(x+y)+H(x-y)=2H(x)H(y)$ with $H(0)=1$ equals the constant function 1, $\cosh(kx)$ for some $k$, or $\cos(kx)$ for some $k$.

background

The module sits inside the Foundation layer and imports DAlembert.Inevitability, which shows the d'Alembert equation is the unique form required by multiplicative consistency of any cost functional $F:\mathbb{R}_+\to\mathbb{R}$. It also imports AczelProof, whose integration bootstrap converts continuity into real-analyticity (ContDiff $\mathbb{R}$ $\top$), and SmoothnessTop, which isolates the Mathlib ContDiff API for the top smoothness level.

LogicAsFunctionalEquation supplies the surrounding context that cost functionals must obey the Recognition Composition Law. The module therefore treats the classification as a proved theorem rather than an axiom, wiring the imported smoothness and inevitability results into the disjunction of constant, hyperbolic, and trigonometric solutions.

proof idea

The module is an assembly layer rather than a self-contained proof. It reduces aczel_kannappan_continuous_dAlembert directly to the classification theorem in Cost.FunctionalEquation.dAlembert_classification. Helper definitions (mollified, polynomial_continuous, MollifierCkRoute) support the continuous-combiner route while SmoothnessTop supplies the finite-to-top smoothness step.

why it matters in Recognition Science

The module supplies the named theorem aczel_kannappan_continuous_dAlembert that AxiomDischargePlan uses to discharge classical inputs. It also feeds the second-derivative obstruction analysis in GeneralizedDAlembert.SecondDerivative. In the chain it closes the classification step that begins in LogicAsFunctionalEquation and leads to the cosh case already discharged by dAlembert_cosh_solution_aczel.

scope and limits

used by (2)

From the project-wide theorem graph. These declarations reference this one in their body.

depends on (4)

Lean names referenced from this declaration's body.

declarations in this module (38)