Encyclopedia Cost Cost Aczel Class

ARTICLE 1 claim 1 theorem

Cost Aczel Class

A classical theorem about a functional equation, packaged as a reusable assumption in a machine-checked library.

The smoothness package

The d'Alembert equation is the functional equation H(t+u) + H(t−u) = 2·H(t)·H(u), named after Jean le Rond d'Alembert, who studied it in 1747 while working on the vibrating string. Its continuous solutions are exactly the constant 1, the hyperbolic cosine cosh(λt), and the ordinary cosine cos(λt), for any nonzero real λ. A classical result, proved by János Aczél in 1966, says that every continuous solution is in fact infinitely differentiable: continuity alone already forces all higher derivatives to exist.

In Recognition Science, the cost function J(x) = (x + 1/x)/2 − 1 is derived from five plain conditions. One of those conditions is a forced composition law that, after a change of variables, becomes the d'Alembert equation. The Aczél smoothness package is a formal device: it declares a typeclass-style assumption that any continuous solution of the d'Alembert equation is infinitely differentiable. The package then proves a bootstrap theorem: given an instance of that assumption, any continuous H with H(0) = 1 satisfying the equation is automatically C^∞.

This matters because the uniqueness proof for the cost function needs to rule out pathological solutions. Without smoothness, the d'Alembert equation can have wildly discontinuous solutions, and the classification above fails. The package supplies the missing regularity condition as a clean hypothesis, so the main theorem can state: if the solution is continuous, then it is smooth, and therefore it falls into the classical three-case classification. The concrete instance that makes the assumption true is provided elsewhere, in a separate file that proves the unconditional theorem.

In the framework's machine-checked library of formal theorems, the class is declared in its own file so that neither the main functional-equation theorem nor the unconditional Aczél proof has to depend on the other. The practical effect is modularity: the smoothness assumption can be reused, and the bootstrap theorem applies to any function that meets the hypotheses. For the reader, the takeaway is that a seemingly technical regularity assumption is what turns a functional equation with many solutions into one with exactly three, and the cost function's uniqueness rests on that step.

THEOREM aczel_dAlembert_smooth · IndisputableMonolith/Cost/AczelClass.lean
aczel_dAlembert_smooth · IndisputableMonolith/Cost/AczelClass.lean:45
/-- Smoothness of continuous d'Alembert solutions, parameterized by an
`AczelSmoothnessPackage` instance. -/
theorem aczel_dAlembert_smooth [AczelSmoothnessPackage] (H : ℝ → ℝ)
    (h_one : H 0 = 1)
    (h_cont : Continuous H)
    (h_dAlembert : ∀ t u, H (t + u) + H (t - u) = 2 * H t * H u) :
    ContDiff ℝ ⊤ H :=
  AczelSmoothnessPackage.smooth_of_dAlembert H h_one h_cont h_dAlembert

What this page does not claim

The Aczél smoothness package itself proves the uniqueness of the cost function; it only supplies a regularity condition. The d'Alembert equation is the same as the cost function's defining equation; it is a transformed version. The package proves that all solutions are smooth without the continuity hypothesis.

Verify this page

Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:

$ lake env lean IndisputableMonolith/Cost/AczelClass.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)

A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.

Derived articles

This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:

MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND