Skip to content

Commit 2723aad

Browse files
docs+meta: cleanup after #58 — proof-debt cross-refs + STATE/META (#59)
## Summary Cleanup follow-on to #58 (Phase 1 per-axiom triage of 72 Coq Axioms). Wires the new triage doc into the existing seed and refreshes machine-readable state. - **CHANGELOG.md** — add #58 under Unreleased/Documentation. - **docs/proof-debt.md** — link to `docs/proof-debt-triage.md`; refresh §(a)/§(b)/§(c)/§(d) sections to reflect the Phase 1 disposition (52 c / 17 a / 3 b for Coq); update headline count 129 → 124 reflecting intervening closures. - **.machine_readable/6a2/STATE.a2ml** — bump `last-updated` to 2026-05-27; replace stale "begin classification sweep" next-action with the 17 §a discharge backlog + Phase 2 (Lean axioms + Idris2 postulates); add 2026-05-27 session-history entry; refresh `coq-proofs` component summary. - **.machine_readable/6a2/META.a2ml** — bump `last-updated`; add ADR-009 (was missing here vs `META.scm`) + new ADR-010 for the Phase 1 triage. - **.machine_readable/META.scm** — add ADR-010 matching `META.a2ml` for parity. No code changes; documentation + machine-readable state only. ## Test plan - [ ] Visual review of the 5 file diffs - [ ] `check-trusted-base.sh` count unchanged (124 — no axioms touched) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent e17256b commit 2723aad

5 files changed

Lines changed: 51 additions & 28 deletions

File tree

.machine_readable/6a2/META.a2ml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
[metadata]
88
version = "1.0.0"
9-
last-updated = "2026-05-20"
9+
last-updated = "2026-05-27"
1010

1111
[project-info]
1212
license = "MPL-2.0"
@@ -22,6 +22,8 @@ decisions = [
2222
{ id = "ADR-006", status = "accepted", title = "state_eq excludes state_pc — PC is control-flow bookkeeping, not observable side effect (2026-05-18 rescue)" },
2323
{ 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" },
2424
{ 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" },
25+
{ id = "ADR-009", status = "accepted", title = "Delete unsound alignmentMatchesPlatformWord Idris2 postulate; consolidate alignedSizeCorrect into shared AbsoluteZero.ABI.Proofs.DivMod module (PR #40, Refs #27)" },
26+
{ id = "ADR-010", status = "accepted", title = "Phase 1 per-axiom triage of 72 Coq Axioms per standards#203 trusted-base policy (2026-05-27, PR #58): 52 §c TRUSTED-BASE + 17 §a DISCHARGE backlog + 3 §b PROPERTY-TEST; canonical disposition in docs/proof-debt-triage.md" },
2527
]
2628

2729
[development-practices]

.machine_readable/6a2/STATE.a2ml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ repo = "github.com/hyperpolymath/absolute-zero"
1111
version = "1.0.0-alpha"
1212
schema-version = "1.0"
1313
created = "2026-01-03"
14-
last-updated = "2026-05-20"
14+
last-updated = "2026-05-27"
1515
status = "active"
1616

1717
[project-context]
@@ -26,7 +26,7 @@ maturity = "experimental"
2626

2727
[components]
2828
# Format: name = [percentage, "notes"]
29-
coq-proofs = [90, "11/11 files compile (Coq 8.18.0+8.20.1); 0 Admitted (rescue 2026-05-18); 75→73 Axioms + 42 Parameters; 3 discharges 2026-05-20 — eval_deterministic (PR #24) + eval_respects_state_eq_{left,right} (deleted as unsound, downstream refactored to use cno_terminates + weakened logically_reversible); remainder are legitimate model-layer assumptions about abstract Parameters"]
29+
coq-proofs = [90, "11/11 files compile (Coq 8.18.0+8.20.1); 0 Admitted (rescue 2026-05-18); 75→72 Axioms + 42 Parameters; Phase 1 triage 2026-05-27 (PR #58) classifies 72 Coq Axioms into §c TRUSTED-BASE (52) + §a DISCHARGE backlog (17) + §b PROPERTY-TEST (3); see docs/proof-debt-triage.md"]
3030
lean4-proofs = [95, "lake build 1631/1632 green (mathlib + 6 lean_lib targets); verified 2026-05-20"]
3131
z3-proofs = [90, "10 theorems encoded, needs z3 runtime"]
3232
agda-proofs = [60, "CNO.agda type-checks clean — 0 postulates/holes/unsolved metas (verified 2026-05-18)"]
@@ -57,18 +57,20 @@ high = [
5757
]
5858
medium = [
5959
"LandauerDerivation.v needs measure theory",
60-
"~120 post-T0 Coq Axiom/Parameter audit (legitimate model assumption vs avoidable proof shortcut)",
60+
"17 §a DISCHARGE Coq axioms backlog (post-Phase-1 triage, see docs/proof-debt-triage.md)",
61+
"Triage Phase 2 for 52 Lean axioms + 7 Idris2 postulates (#27) still pending",
6162
]
6263
low = [
6364
"y_not_cno non-termination proof",
6465
]
6566

6667
[critical-next-actions]
6768
immediate = [
68-
"PR #24 review + merge (eval_deterministic discharge + rescue rebase)",
69+
"Phase 2 triage: Lean axioms (52) + Idris2 postulates (#27, 7)",
6970
]
7071
this-week = [
71-
"Begin classification sweep of remaining ~120 Axiom declarations",
72+
"Begin discharging the 17 §a Coq DISCHARGE-backlog axioms (lowest-hanging: cno_zero_energy_dissipation_derived, fidelity_bound, unitary_inverse_property, *_not_identity existence pair)",
73+
"Physics-constant deduplication (kB_positive/temperature_positive declared 3x across QuantumCNO/StatMech/LandauerDerivation)",
7274
"Migrate Python to Rust",
7375
]
7476
this-month = [
@@ -78,6 +80,7 @@ this-month = [
7880

7981
[session-history]
8082
sessions = [
83+
{ date = "2026-05-27", agent = "opus", summary = "Phase 1 per-axiom triage of all 72 Coq Axioms per standards#203 trusted-base policy. Classification: 52 §c TRUSTED-BASE (physics constants, quantum primitives, POSIX semantics, Kolmogorov+Shannon axioms, Cexp algebra, physical laws), 17 §a DISCHARGE (derivable theorems incl. 2 named *_derived), 3 §b PROPERTY-TEST (decidability over opaque types). Surfaced 5 follow-ups (physics-constant dedup ×3, quantum-law dedup ×2, Cexp constructive in Complex.v). PR #58 MERGED 2026-05-27 (commit e17256b). Also: traced phantom '315 Lean sorries' figure to a metric mismatch — actual local user-sorry count = 0; canonical figure is 129 (now 124) escape hatches across all proof languages per standards#195 + scripts/check-trusted-base.sh." },
8184
{ date = "2026-05-20", agent = "opus", summary = "Post-T0 axiom audit: 117 declarations triaged into Tier A/B/C; 2 unsound axioms (eval_respects_state_eq_left/right) deleted with downstream refactor; logically_reversible weakened to =st=; cno_eval_on_equal_states + cno_logically_reversible re-proved without axioms; 75→73 Axioms total" },
8285
{ date = "2026-05-20", agent = "opus", summary = "Rescue branch rebased onto current main (clean); eval_deterministic Axiom discharged → Theorem (via step_deterministic_strong helper); Print Assumptions Closed under global context; 11/11 Coq + 1631/1632 Lean targets green; PR #24 MERGED (admin-squash 69e7a22)" },
8386
{ date = "2026-05-18", agent = "opus", summary = "Tier-0 rescue: CNO.v keystone re-proved (state_eq PC-exclusion fix, 9 named repairs); Complex.v self-contained complex numbers added; 11 Coq files compile under Coq 8.20.1; full Lean lake build succeeds; PROOF-STATUS-2026-05-18.md ledger added" },
@@ -86,7 +89,7 @@ sessions = [
8689
]
8790

8891
[maintenance-status]
89-
last-run-utc = "2026-05-20T15:00:00Z"
92+
last-run-utc = "2026-05-27T08:00:00Z"
9093
last-result = "pass" # unknown | pass | warn | fail
9194

9295
[migration-notes]

.machine_readable/META.scm

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
("ADR-006" "accepted" "state_eq excludes state_pc — PC is control-flow bookkeeping, not observable side effect (2026-05-18 rescue)")
1313
("ADR-007" "accepted" "Discharge eval_deterministic Axiom → Theorem via step_deterministic_strong helper (2026-05-20, PR #24); first post-T0 axiom audit win")
1414
("ADR-008" "accepted" "Delete unsound eval_respects_state_eq_{left,right} axioms; weaken logically_reversible to =st= (observational reversibility); re-prove cno_eval_on_equal_states + cno_logically_reversible via cno_terminates + cno_preserves_state (2026-05-20)")
15-
("ADR-009" "accepted" "Delete unsound alignmentMatchesPlatformWord Idris2 postulate (HasAlignment carries no evidence; would derive So (1 mod 8 == 0) from CNOResultLayout.alignment); replace single consumer with per-Platform decidable proof. Consolidate remaining alignedSizeCorrect postulate into shared AbsoluteZero.ABI.Proofs.DivMod module as the estate-wide div/mod lemma surface (absolute-zero#27, civic-connect alignUpDivides/mkFieldsAligned/offsetInBoundsPrf migrate here)")))
15+
("ADR-009" "accepted" "Delete unsound alignmentMatchesPlatformWord Idris2 postulate (HasAlignment carries no evidence; would derive So (1 mod 8 == 0) from CNOResultLayout.alignment); replace single consumer with per-Platform decidable proof. Consolidate remaining alignedSizeCorrect postulate into shared AbsoluteZero.ABI.Proofs.DivMod module as the estate-wide div/mod lemma surface (absolute-zero#27, civic-connect alignUpDivides/mkFieldsAligned/offsetInBoundsPrf migrate here)")
16+
("ADR-010" "accepted" "Phase 1 per-axiom triage of 72 Coq Axioms per standards#203 trusted-base policy (2026-05-27, PR #58): 52 §c TRUSTED-BASE + 17 §a DISCHARGE backlog + 3 §b PROPERTY-TEST; canonical disposition in docs/proof-debt-triage.md")))
1617

1718
(development-practices
1819
(code-style "Coq proof engineering")

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ this project aims to follow [Semantic Versioning](https://semver.org/spec/v2.0.0
3737

3838
### Documentation
3939

40+
- docs: Phase 1 per-axiom triage of 72 Coq Axioms (#58)
4041
- docs: seed docs/proof-debt.md per trusted-base policy (#52)
4142
- docs: record tech-debt audit findings (2026-05-26) (#47)
4243

docs/proof-debt.md

Lines changed: 36 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -11,37 +11,53 @@ SPDX-FileCopyrightText: 2026 Jonathan D.A. Jewell (hyperpolymath)
1111

1212
The 2026-05-26 estate proof-debt audit
1313
([standards#195](https://github.com/hyperpolymath/standards/pull/195))
14-
detected **129 soundness-relevant escape hatches** in this
15-
repo. This file is the **initial seed** — every marker starts in §(d)
16-
DEBT and the maintainer triages each into §(a) / §(b) / §(c) / §(d) as
17-
classification proceeds.
14+
detected **129 soundness-relevant escape hatches** in this repo (now
15+
**124** after intervening closures). Markers were originally seeded
16+
in §(d) DEBT pending classification.
1817

19-
## (a) DISCHARGED in this repo
18+
## Phase 1 triage — 72 Coq Axioms (2026-05-27, [#58](https://github.com/hyperpolymath/absolute-zero/pull/58))
2019

21-
*(None yet — entries move here when the proof lands or the construct
22-
is removed.)*
20+
The per-marker classification for every Coq `Axiom` lives in
21+
[`docs/proof-debt-triage.md`](./proof-debt-triage.md). Summary:
2322

24-
## (b) BUDGETED — tested with a refutation budget
23+
| Disposition | Count |
24+
|-------------|------:|
25+
| §(c) AXIOM (TRUSTED-BASE) | 52 |
26+
| §(a) DISCHARGE backlog | 17 |
27+
| §(b) PROPERTY-TEST | 3 |
28+
| **Total Coq Axioms** | **72** |
2529

26-
*(None yet — entries belong here when the construct is at an
27-
extraction boundary and is covered by a documented property-test
28-
budget.)*
30+
Out of scope for Phase 1 (still in §(d) pending future triage):
31+
52 Lean 4 `axiom` declarations and the 7 Idris2 postulates tracked by
32+
[#27](https://github.com/hyperpolymath/absolute-zero/issues/27).
2933

30-
## (c) NECESSARY AXIOM
34+
## (a) DISCHARGE backlog (Coq, 17)
3135

32-
*(None yet — entries belong here when the construct encodes a
33-
metatheoretic assumption that cannot be discharged within the working
34-
logic.)*
36+
Provable propositions currently stated as `Axiom`. Enumerated in
37+
[`docs/proof-debt-triage.md`](./proof-debt-triage.md) — each row marked
38+
`DISCHARGE` is a candidate for a future proof PR.
39+
40+
## (b) BUDGETED — tested with a refutation budget (3)
41+
42+
Decidability claims over opaque types: `fs_eq_dec`, `state_dec`,
43+
`state_eq_dec`. Belong to §(b) once a §(b) property-test budget is
44+
attached; otherwise treat as §(c).
45+
46+
## (c) NECESSARY AXIOM (Coq, 52)
47+
48+
Physics constants, quantum gate primitives, POSIX semantics,
49+
Kolmogorov + Shannon entropy core inequalities, complex exponential
50+
algebra, and fundamental physical laws (second law, Landauer, no-cloning).
51+
Full enumeration in [`docs/proof-debt-triage.md`](./proof-debt-triage.md).
3552

3653
## (d) DEBT — actively to be closed
3754

38-
All 129 markers below start in this section. As the
39-
maintainer classifies each, it should be moved into §(a) / §(b) /
40-
§(c) as appropriate. Markers that genuinely belong in §(d) need a
41-
deadline and an owner.
55+
After Phase 1, the §(d) bucket contains only the 52 Lean axioms and
56+
7 Idris2 postulates that have not yet been triaged. Coq markers are
57+
no longer in §(d).
4258

4359
```
44-
(no markers; check-trusted-base passes already)
60+
(no Coq markers in §(d) post Phase 1; see triage doc for §a/§b/§c.)
4561
```
4662

4763
> If `129` > 30, the list above shows the first 30 only.

0 commit comments

Comments
 (0)