# Reproduction — Catenary cable — cosh sag, envelope-guarded

Source `examples/catenary.eml` (sha256 `5ae1c0fe19f40a87`). Regenerate with `make demo`.

> A cosh geometry kernel. y = scale·cosh(curv·x) is the exact shape of a cable hanging under gravity; the clamp guards the reported height to the structural envelope [1,20] m. The @verify contract PROVES the height stays in the envelope for any input; the forward-error certificate BOUNDS how far the compiled float64 cosh drifts from exact (Certcom.pipeline_nested_std — cosh is the 7th and last symmetric-domain primitive in the certified fold).

| stage | artifact | tier |
|---|---|---|
| emit — software (14) | `c`, `cpp`, `csharp`, `gdscript`, `go`, `java`, `javascript`, `kotlin`, `luau`, `matlab`, `python`, `rust`, `swift`, `wasm` | LOCAL |
| emit — gpu shader (5) | `glsl`, `glsl-es`, `hlsl`, `metal`, `wgsl` | LOCAL |
| emit — compiler IR (1) | `llvm` | LOCAL |
| emit — proof (3) | `coq`, `isabelle`, `lean` | LOCAL |
| emit — safety-critical (4) | `aadl`, `ada/spark`, `autosar`, `ros2` | LOCAL |
| emit — blockchain (2) | `solidity`, `zkproof` | LOCAL |
| **emit total** | **29 targets from one source** | LOCAL |
| proof | `catenary_within_envelope` — ✓ clean (`proof/catenary_within_envelope.axioms.txt`) | REPLAY (re-derive: TOOLCHAIN — Lean) |
| simulate | `sim/trace.csv`, `sim/catenary.png` — reported height samples outside the envelope [1, 20] m = 0 = 0 | LOCAL |
| certificate | fwd-error ≤ `8.35e-15` abs (`75` ulp of result), all inputs in range — `certificate.json` | LOCAL |
| hardware | — | N/A |

**Forward-error certificate.** For every input in the declared ranges (`|scale| ≤ 5`, `|curv| ≤ 0.5`, `|x| ≤ 4`), the COMPILED kernel's float64 result is within **`8.354e-15`** (absolute, ≈ `75` ulp of the result) of the exact real value, assuming IEEE-754 binary64 round-to-nearest, unit roundoff u = 2^-53 ≈ 1.110e-16. This is not asserted — it is the `absErr` fold computed over the kernel's AST, and that fold is proved sound (`sorryAx`-free) by machlib's `Certcom.pipeline_nested_std`. Regime: absolute. The soundness is machine-checked (TOOLCHAIN); the per-kernel bound is computed here (LOCAL).

The harness also emits the **instantiated proof** `certificate/catenary_forward_error.lean` — the kernel's arithmetic core as an `EML` term, its generated `IsArith` proof, and the `pipeline_arith` instantiation = a machine-checked per-kernel theorem `catenary_forward_error : AbsEnc (absErr …) (emitted-C value) (exact)`, `sorryAx`-free, holding for any `FPBridge`. Re-check: `lake env lean` it against machlib (TOOLCHAIN).

**The same claim, two ways.** The Lean theorem `catenary_within_envelope` proves the reported catenary height is always inside the structural envelope [1, 20] m, for any input; the simulation shows `reported height samples outside the envelope [1, 20] m = 0 = 0` (across a ±4 m span the catenary sags to 5.0 m at the low point and rises toward the 20.0 m towers, always inside [1.0,20.0] — the envelope the theorem proves, the cosh the forward-error certificate bounds); Proved, simulated.

