You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
proof(coq): discharge eval_respects_state_eq_{L,R} via deletion + refactor (PR #26)
Audit of the remaining ~120 axioms after PR #24 identified 2 genuinely unsound axioms and ~115 legitimate model-layer assumptions.
**Deleted as unsound:** `eval_respects_state_eq_right` and `eval_respects_state_eq_left`. Both stated forms cannot hold under the rescue branch's PC-excluding `state_eq` (ADR-006) — eval propagates PC deterministically while `=st=` ignores it, so [eval p s s' /\ s' =st= s''] does not in general imply [eval p s s'']. The in-file TODO ("prove by induction") was unprovable.
**Downstream refactor:**
- `cno_eval_on_equal_states` re-proved using `cno_terminates` alone (different existential witnesses suffice — the lemma is a termination iff).
- `cno_logically_reversible` re-proved after weakening the `logically_reversible` definition to observational form (uses `=st=` instead of strict `=`). No theory lost: `bennett_logical_implies_thermodynamic` body never used its hypothesis (explicit comment in source).
**Verification:** all 11 Coq files compile clean; `Print Assumptions` on `cno_eval_on_equal_states` and `cno_logically_reversible` → "Closed under the global context"; `bennett_logical_implies_thermodynamic` depends only on the abstract `shannon_entropy` Parameter (model layer, not a proof escape).
**Net effect:** 75 → 73 Axioms (deleted 2, no replacement). 42 Parameters unchanged. Remaining 73 + 42 are model-layer assumptions; discharging requires first defining the underlying Parameter (out of scope).
**Docs:** PROOF-STATUS-2026-05-18.md ledger refreshed; ADR-008 added (META.scm + META.a2ml) recording the deletion + weakening + rationale; STATE.a2ml session-history prepended.
Refs hyperpolymath/standards#124
Refs hyperpolymath/standards#133
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Copy file name to clipboardExpand all lines: .machine_readable/6a2/META.a2ml
+1Lines changed: 1 addition & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -21,6 +21,7 @@ decisions = [
21
21
{ id = "ADR-005", status = "proposed", title = "Fix QuantumCNO.v Cexp: real exp -> complex phase factor" },
22
22
{ id = "ADR-006", status = "accepted", title = "state_eq excludes state_pc — PC is control-flow bookkeeping, not observable side effect (2026-05-18 rescue)" },
23
23
{ id = "ADR-007", status = "accepted", title = "Discharge eval_deterministic Axiom → Theorem via step_deterministic_strong helper (2026-05-20, PR #24); first post-T0 axiom audit win" },
24
+
{ id = "ADR-008", status = "accepted", title = "Delete unsound eval_respects_state_eq_{left,right} axioms; weaken logically_reversible definition to use =st= (observational reversibility); re-prove cno_eval_on_equal_states + cno_logically_reversible via cno_terminates + cno_preserves_state (2026-05-20); rationale: under PC-excluding state_eq the strong axioms force a syntactically-identical eval result, which is unsound because eval propagates PC deterministically while =st= ignores it" },
|`proofs/lean4/CNO.lean`| ✅ builds | completed `loadStore_preserves_memory` cons case with rewrite helper lemmas; no proof holes. |
80
80
|`proofs/lean4/{FilesystemCNO,LambdaCNO,QuantumCNO,StatMech,CNOCategory}.lean`| ✅ build | full `lake build` succeeds. |
81
-
|~120 Coq `Axiom`/`Parameter`| ⚠️ assumptions |**NOT holes.**Separate post-T0 audit (e.g. `cno_decidable`, `eval_respects_state_eq_left/right`). `eval_deterministic`was on this list — **discharged 2026-05-20**(PR `#24`, `Print Assumptions` "Closed under the global context"). |
81
+
|73 Coq `Axiom` + 42 `Parameter`| ⚠️ model-layer assumptions |**NOT holes.**Triage 2026-05-20: ~73 Axioms are properties of abstract `Parameter`s (physics constants/laws, quantum gate unitarity, Cexp properties, POSIX semantics, Y-combinator non-termination, intentionally-typed `hom_functor` per inline comment) — **legitimate model layer; do not discharge without first defining the underlying Parameter**. **3 discharges shipped: `eval_deterministic`(PR #24, 2026-05-20), `eval_respects_state_eq_left` + `_right` (this PR, 2026-05-20)**— the last two were unsound under the rescue branch's PC-excluding `state_eq` and have been **deleted outright**; their downstream consumers (`cno_eval_on_equal_states`, `cno_logically_reversible`) re-proved via `cno_terminates` + `cno_preserves_state` with a correspondingly-weakened `logically_reversible` definition. `cno_decidable` (depends on undecidable Memory function equality) deferred. |
0 commit comments