Skip to content

Commit 3cf9558

Browse files
docs: tidy after earn-back closure + theory-work closure + examples cluster landed (#92)
## Summary Three small accuracy passes through `docs/echo-types/` after the earn-back programme, the §"Theory work — no proof assistant needed" section, and the canonical examples cluster (5/9/10) all closed in this session. Pure prose; no Agda changes. ### 1. `roadmap.md` §"Theory work" — two stale items refreshed * **Axis 8** line said the *decidability-respecting* candidate had shipped but listed the other three as still candidate refinements. All four have now shipped: `EchoDecidable`, `EchoCost` (#85), `EchoAccess` (#68 / #75), `EchoSearch` (#80). Updated to credit all four. * **Negative / co-echoes** line was `[unblocked]`; now `[landed]` — `AntiEcho` (#69), tropical decomposition concrete + generic (#72 + #91), `antiecho-partition-dec` (#90). Names the `coecho.md` §5 obligation-5 / obligation-6 closures explicitly. After these edits, every item in §"Theory work — no proof assistant needed" is either `[landed]` or `[ruled out]`/`[refreshed]` — the section is genuinely closed. ### 2. `roadmap.md` §"Example work" — three items landed * ex. 5 (`EchoExampleProvenance`, #81) → `[landed]` * ex. 9 (`EchoExampleParser`, #83) → `[landed]` * ex. 10 (`EchoExampleAbsInt`, #82) → `[landed]` Only ex. 6 (approximate-echo numeric example) remains `[unblocked]`. ### 3. `earn-back-plan.adoc` — stale `roadmap-gates.adoc` claim corrected * Header note used to say "the gate discipline was historically attributed to a `roadmap-gates.adoc`; that file does not exist in-tree". The file **does** exist (created 2026-05-18; see its preamble). Header rewritten to list `roadmap-gates.adoc` alongside `retractions.adoc` / this plan / `next-questions.adoc` as the four canonical loci. * Ledger row D (the "doesn't exist" entry) marked **CLOSED 2026-05-20** with the cite reflecting current reality. ## Test plan * [x] Pure docs / `.adoc` / `.md` edits — no Agda touched * [x] `agda proofs/agda/All.agda` exit 0 (confirms docs match code) * [x] `agda proofs/agda/Smoke.agda` exit 0 * [x] No retracted-claim language moved; no earned-back claim overclaimed; `paper.adoc` / `types-abstract.adoc` / `conservativity.adoc` untouched ## Scope Disjoint from all currently-open PRs: * #88 (F3) — touches Agda + `retractions.adoc` (different sections) + `earn-back-plan.adoc` Status (different section from header / ledger-D) * #90 (partition-dec) — touches Agda only * #91 (generic-codomain) — touches Agda + preamble comments No retracted claim is moved. No earned-back claim is overclaimed. `paper.adoc` / `types-abstract.adoc` / `conservativity.adoc` are intentionally untouched (owner-gated, per the posture set by #86 / #88). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 52d5b03 commit 3cf9558

2 files changed

Lines changed: 47 additions & 29 deletions

File tree

docs/echo-types/earn-back-plan.adoc

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,13 @@ claims back into theorems — or to confirm, on the project's own gate
1212
discipline, that they cannot be earned. Nothing in `paper.adoc` /
1313
`conservativity.adoc` / `types-abstract.adoc` moves until the
1414
corresponding gate here passes. Methodology — explicit pass/fail,
15-
abandon criteria, outcomes logged in `docs/retractions.adoc`. (The
16-
gate discipline was historically attributed to a `roadmap-gates.adoc`;
17-
that file does not exist in-tree — see proof-debt ledger item *D*
18-
below. The canonical loci are `docs/retractions.adoc`, this plan, and
19-
`docs/next-questions.adoc`.)
15+
abandon criteria, outcomes logged in `docs/retractions.adoc`. The
16+
canonical loci of the gate discipline are
17+
`docs/roadmap-gates.adoc` (the protocol document, created 2026-05-18
18+
to resolve the earlier dangling reference), `docs/retractions.adoc`
19+
(the append-only retraction + earn-back log), this plan (the
20+
falsifiable program), and `docs/next-questions.adoc` (the open
21+
questions register).
2022

2123
toc::[]
2224

@@ -237,11 +239,15 @@ single index; it moves no claim.
237239
Completeness nice-to-have, lowest priority.
238240

239241
| D
240-
| Doc-integrity: `docs/roadmap-gates.adoc` is cited as the canonical
241-
gate ledger by ≥7 docs but does not exist in-tree. Role now split
242-
across `retractions.adoc` / this plan / `next-questions.adoc`.
243-
| Open drift vector. Cheap to reconcile (back-link the citing docs;
244-
do not fabricate retroactive gate history).
242+
| Doc-integrity: previously this entry recorded that
243+
`docs/roadmap-gates.adoc` was cited as the canonical gate ledger
244+
but did not exist in-tree. The file *does* exist (created
245+
2026-05-18; see its preamble) and the dangling-reference issue is
246+
resolved.
247+
| *CLOSED 2026-05-20.* `docs/roadmap-gates.adoc` is in tree as the
248+
Gates Protocol. The canonical-loci list at the top of this plan
249+
has been updated to include it explicitly alongside
250+
`retractions.adoc` / `next-questions.adoc`.
245251

246252
| E1
247253
| `examples/Transport.agda` (Gate-3): two disclosed open items, both

docs/echo-types/roadmap.md

Lines changed: 31 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -37,17 +37,23 @@ Paths marked **[unblocked]** can proceed today. Paths marked
3737
lane C tracks the `taxonomy.md` §Axis-2 write-up).
3838
- **[landed]** Axis 8 (information-theoretic vs computational
3939
access): promoted from the candidates list to a numbered axis.
40-
*Three* remaining candidate refinements of `Echo`
41-
(cost-indexed, graded access modality, witness-search abstract
42-
machine); the *decidability-respecting* candidate has shipped
43-
as `proofs/agda/EchoDecidable.agda` (`EchoDec f y = Dec (Echo f
44-
y)` with six headline lemmas including `echo-dec-intro`,
45-
`echo-dec-fin`, `echo-dec-compose-iso`; see `taxonomy.md` §8).
46-
Follow-up: pick one of the remaining three refinements and
47-
formalise.
48-
- **[unblocked]** Negative / co-echoes: formulate `CoEcho(f)` and its
49-
relationship to `Echo(f)`. Possibly resolves the quantitative /
50-
structural tension hinted at by `EchoTropical`.
40+
Every candidate refinement is now mechanised. Decidability-
41+
respecting: `proofs/agda/EchoDecidable.agda`. Cost-indexed (over
42+
an abstract `CostAlgebra`): `EchoCost.agda` + `EchoCostInstance.agda`
43+
(PR #85). Graded access modality: `EchoAccess.agda` (PRs #68 +
44+
#75). Witness-search abstract machine: `EchoSearch.agda` +
45+
`EchoSearchInstance.agda` (PR #80). See `taxonomy.md` §8.
46+
- **[landed]** Negative / co-echoes: `AntiEcho f y := Σ A (λ x → f x ≢ y)`
47+
shipped as `proofs/agda/AntiEcho.agda` (PR #69) with
48+
`antiecho-{intro, disjoint, map-over}`, plus per-element
49+
classification `antiecho-partition-dec` (PR #90, closes
50+
`coecho.md` §5 obligation 5). Distinct from `EchoFiberTriangulation.CoEcho`
51+
(which is the trivial opposite-orientation fibre); see naming
52+
rationale in `AntiEcho.agda`'s preamble. The tropical decomposition
53+
`TropEcho y ↔ Echo score y × (∀ z → y ≤ score z)` lands at the
54+
concrete ℕ-scored level in `AntiEchoTropical.agda` (PR #72) and at
55+
an abstract `OrderedCodomain` interface in `AntiEchoTropicalGeneric.agda`
56+
(PR #91, closes `coecho.md` §5 obligation 6).
5157
- **[ruled out — see docs/echo-types/decisions/no-2-cat.adoc]**
5258
2-categorical shape. Every would-be 2-cell in the landed code
5359
is `refl` or forced trivial by propositionality (`≤g-prop`,
@@ -178,14 +184,20 @@ Paths marked **[unblocked]** can proceed today. Paths marked
178184

179185
- **[unblocked]** Complete worked numeric example (ex. 6) with the
180186
approximate-echo shape, once the definition lands.
181-
- **[unblocked]** Parser residue example (ex. 9) as a toy Agda
182-
example: parse of balanced parens, echo carries token stream.
183-
- **[unblocked]** Abstract-interpretation example (ex. 10) via a
184-
Sign lattice.
185-
- **[unblocked]** Database provenance example (ex. 5) via
186-
K-provenance semiring — text-only pass first, Agda optional.
187-
- **[unblocked]** Extend `EchoExamples.agda` with two to three
188-
further canonical entries.
187+
- **[landed]** Parser residue example (ex. 9) — `EchoExampleParser.agda`
188+
(PR #83): balanced parens, Boolean shadow `parses : List Token →
189+
Bool` non-injective on `(())` vs `()()`, echo retains the token
190+
stream.
191+
- **[landed]** Abstract-interpretation example (ex. 10) —
192+
`EchoExampleAbsInt.agda` (PR #82): Sign lattice `{neg, zero, pos}`
193+
over a hand-rolled five-element integer carrier; collapses
194+
`{m1, m2} ↦ neg`, `{z} ↦ zero`, `{p1, p2} ↦ pos`.
195+
- **[landed]** Database provenance example (ex. 5) —
196+
`EchoExampleProvenance.agda` (PR #81): K-provenance semiring,
197+
distinct Bool-provenance rows projecting to the same payload.
198+
- **[unblocked]** Extend `EchoExamples.agda` with further canonical
199+
entries (post-#81/#82/#83 the cluster has good coverage; only
200+
ex. 6 remains).
189201

190202
---
191203

0 commit comments

Comments
 (0)