Skip to content

Commit 3401f03

Browse files
Merge branch 'main' into claude/echo-comp-iso
2 parents 03b8575 + e92be7d commit 3401f03

25 files changed

Lines changed: 2244 additions & 946 deletions

README.md

Lines changed: 131 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,154 @@
11
# echo-types
22

3-
Constructive Agda formalization of echo types / fibers:
3+
Constructive Agda development for echo types as a first-class notion of structured loss:
4+
5+
loss that is not total erasure.
6+
7+
## Core Idea
8+
9+
Most formalisms foreground two clean cases:
10+
11+
- reversible / injective / linear-ish: no important loss
12+
- ordinary irreversible: loss occurs and is usually forgotten
13+
14+
Echo types target a third case:
15+
16+
- irreversible, but with a retained proof-relevant constraint on what was lost
17+
18+
This repository treats that third case as the primary object of study.
19+
20+
## Definition (Foundation)
21+
22+
Given `f : A → B`, define the fiber/echo at `y : B`:
423

524
`Echo f y := Σ (x : A) , (f x ≡ y)`
625

7-
This repository provides a minimal, explicit development in ordinary intensional dependent type theory (`--safe --without-K`) with:
26+
Current formal foundation is in:
27+
28+
- `proofs/agda/Echo.agda`
29+
- `proofs/agda/EchoCharacteristic.agda`
30+
- `proofs/agda/EchoResidue.agda`
31+
- `proofs/agda/EchoExamples.agda`
32+
- `proofs/agda/EchoChoreo.agda`
33+
- `proofs/agda/EchoEpistemic.agda`
34+
- `proofs/agda/EchoLinear.agda`
35+
- `proofs/agda/EchoGraded.agda`
36+
- `proofs/agda/EchoTropical.agda`
37+
- `proofs/agda/EchoIntegration.agda`
38+
39+
with constructive proofs (`--safe --without-K`, no postulates in `proofs/agda`):
40+
41+
- `echo-intro` (introduction into own fiber)
42+
- `map-over` (action on fibers for morphisms over fixed base)
43+
- `map-over-id` (identity law)
44+
- `map-over-comp` (composition law)
45+
- `map-square` (action along commuting squares)
46+
47+
Characteristic M2 results include:
48+
49+
- explicit non-injectivity witnesses for collapse maps
50+
- impossibility of full reconstruction from plain visible output (`no-section-*` family)
51+
- distinct echoes over the same visible value (`echo-true≢echo-false`, `stateA≢stateB`)
52+
- retained-constraint theorem for projection-style structured loss (`visible-constraint`)
53+
54+
Scope-broadening stages now include:
55+
56+
- choreographic bridge (`RoleEcho` over role projections, commuting-square transport)
57+
- epistemic bridge (indistinguishability and echo-indexed knowledge)
58+
- affine/linear bridge (strict weakening from full echoes to residues)
59+
- graded bridge (grade order and compositional degradation law)
60+
- tropical bridge (argmin-style witness residues under tropical collapse)
61+
- integration bridge (knowledge preservation under choreography plus controlled graded degradation)
62+
- indexed/relational/categorical packaging (`EchoIndexed`, `EchoRelational`, `EchoCategorical`, `EchoScope`)
63+
- cross-ecosystem bridges (`EchoCNOBridge`, `EchoJanusBridge`, `DyadicEchoBridge`, `EchoOrdinal`)
64+
65+
## Current Status Snapshot (2026-04-23)
66+
67+
On `main`, the following are true:
68+
69+
- full suite compiles: `agda -i proofs/agda proofs/agda/All.agda`
70+
- core echo/fiber laws are smoke-pinned (`echo-intro`, `map-over`, `map-over-id`, `map-over-comp`, `map-square`)
71+
- non-injectivity/no-section family is present (`collapse-non-injective`, `no-section-collapse`, `no-section-visible`, `no-section-collapse-to-residue`, `no-section-weaken`)
72+
- distinct-witness and retained-constraint exemplars are present (`echo-true≢echo-false`, `stateA≢stateB`, `visible-constraint`)
873

9-
- fiber introduction (`echo-intro`)
10-
- action on fibers over a fixed base (`map-over`)
11-
- identity law (`map-over-id`)
12-
- composition law (`map-over-comp`)
13-
- action along commuting squares (`map-square`)
74+
Ordinal/Buchholz track status:
1475

15-
## Controlled Scope Broadening
76+
- `Ordinal.Buchholz.WellFounded` provides `wf-<ᵇ : WellFounded _<ᵇ_` for the currently admitted constructor core
77+
- top-marker `bplus` bridges are admitted and inverted: `<ᵇ-+ω`, `<ᵇ-+ψω`, `<ᵇ-inv-+Ωω`, `<ᵇ-inv-+ψω`
78+
- open work remains for general `Ω/+` and `ψ/+` comparisons and shared-binder cases (`<ᵇ-ψα`, `<ᵇ-+2`) in a `--without-K`-compatible style
1679

17-
The formal scope is extended in controlled phases:
80+
## External Bridge Targets (local workspace)
1881

19-
- Phase A (`proofs/agda/EchoIndexed.agda`): role-indexed echoes `Echoᵢ` with trace-level witness separation.
20-
- Phase B (`proofs/agda/EchoEpistemicResidue.agda`): residue-based epistemic echoes `EchoR` with strict weakening/no-section results.
21-
- Phase C (`proofs/agda/EchoRelational.agda`): relational semantics `Step : S → O → Set` and output fibers `Σ s , Step s o`.
22-
- Phase D (`proofs/agda/EchoCategorical.agda`): slice/fibration packaging over the compiled deterministic and relational layers.
82+
Current bridge targets in this workspace are:
83+
84+
- `absolute-zero`: `/var/mnt/eclipse/repos/verification-ecosystem/maa-framework/absolute-zero`
85+
- `januskey`: `/var/mnt/eclipse/repos/developer-ecosystem/januskey`
86+
- `tropical-resource-typing` (potential target, not recently audited): `/var/mnt/eclipse/repos/verification-ecosystem/tropical-resource-typing` (upstream: `https://github.com/hyperpolymath/tropical-resource-typing`)
87+
88+
Note: `januskey` is not currently nested under `maa-framework` in this workspace layout.
89+
90+
Cross-repo status:
91+
92+
- bridge formalisms live in this repo (`EchoCNOBridge`, `EchoJanusBridge`, tropical-collapse witness work in `EchoTropical`)
93+
- Agda-side adapter slot now exists in `maa-framework/absolute-zero` at `absolute-zero/proofs/agda/EchoBridgeScaffold.agda`
94+
- end-to-end conformance against upstream codebases is a separate track and is not yet fully machine-checked here
95+
- current bridge ledger: `docs/echo-types/cross-repo-bridge-status.md`
96+
- see `docs/echo-types/roadmap.md` for staged cross-repo verification gates
97+
98+
## What Echo Types Are For
99+
100+
Echo types are useful when outputs are:
101+
102+
- insufficient to reconstruct their source exactly
103+
- still sufficient to constrain the source non-trivially
104+
105+
Intended proof-use cases include:
106+
107+
- non-injective computation
108+
- provenance
109+
- structured irreversibility
110+
- partial recoverability
111+
- classification up to equivalence
112+
- forensic inference from residues
113+
- refined taxonomies of information loss
114+
115+
## Identity Claim and Falsifiability
116+
117+
This repo is trying to establish echo types as a concept with its own identity.
118+
Since `Echo` is built from sigma/fiber machinery, identity will not come from syntax.
119+
It must come from role and theorems.
120+
121+
We treat the claim as established only if all three are met:
122+
123+
1. Distinct phenomenon: structured loss under non-injective computation.
124+
2. Characteristic theorem family: results that are naturally echo-shaped, not just generic sigma lemmas.
125+
3. Canonical examples: cases where echo type is the right explanatory unit.
126+
127+
If these fail, we record that result and stop the identity claim.
23128

24129
## Build
25130

26131
```bash
27132
cd /var/mnt/eclipse/repos/echo-types
28133
agda -i proofs/agda proofs/agda/Echo.agda
29-
agda -i proofs/agda proofs/agda/All.agda
30-
for f in proofs/agda/*.agda; do agda -i proofs/agda "$f"; done
31134
```
32135

33-
## Bridge to Certified Null Operations (CNOs)
136+
Full suite:
34137

35-
This repository now includes a theoretical bridge to **Certified Null Operations (CNOs)** from the [Absolute Zero](https://gitlab.com/maa-framework/6-the-foundation/absolute-zero) project.
138+
```bash
139+
cd /var/mnt/eclipse/repos/echo-types
140+
agda -i proofs/agda proofs/agda/All.agda
141+
```
36142

37-
**Key Insight**: CNOs are singleton echo types over identity functions.
143+
## Roadmap
38144

39-
**Bridge Modules**:
40-
- `proofs/agda/EchoCNO.agda` - Basic bridge with core theorems
41-
- `proofs/agda/EchoCNOBridge.agda` - Comprehensive bridge with full mapping
145+
Proof milestones and decision gates are in:
42146

43-
**Documentation**: See `docs/ECHO-CNO-BRIDGE.adoc` for detailed explanation.
147+
- `roadmap.adoc`
148+
- `docs/buchholz-plan.adoc`
44149

45-
**Main Theorems**:
46-
- `cno-echo-equivalence`: CNOs ≃ singleton echoes over identity
47-
- `all-cnos-are-echos`: All state-preserving programs are echoes over identity
48-
- `cno-composition-echo`: CNO composition preserves echo structure
150+
Open/gated work and cross-repo follow-ups are tracked in:
49151

50-
This bridge enables:
51-
- Using echo type theory for CNO verification
52-
- Cross-repository theorem sharing
53-
- Unified foundation for structured loss and null operations
152+
- `docs/echo-types/roadmap.md`
153+
- `docs/echo-types/taxonomy.md`
154+
- `docs/echo-types/composition.md`

docs/buchholz-plan.adoc

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,47 @@ Note: `CLAUDE.md` currently refers to CNF trichotomy as "E3" (post-merge renumbe
9292
| E7 | echo | collapse as non-injective map | `ordinal-collapse-non-injective`
9393
|===
9494

95+
== WF track status (current)
96+
97+
The order / well-foundedness track now has an explicit staged split:
98+
99+
* WF-0 (`Ordinal.Buchholz.Order`): partial strict order with
100+
irreflexivity and transitivity over the currently admitted
101+
constructors.
102+
* WF-1 (`Ordinal.Buchholz.WellFounded`): `WellFounded _<ᵇ_` for the
103+
current core, with irreflexivity recovered as a corollary
104+
(`<ᵇ-irreflexive`) instead of a direct shared-binder elimination
105+
proof.
106+
* WF-1.5 (`Ordinal.Buchholz.VeblenInterface`): measure-route interface
107+
pinning constructor-by-constructor decrease obligations and explicit
108+
deferred same-binder obligations (`dec-ψα`, `dec-+2`) for the Veblen
109+
follow-up.
110+
* WF-1.6 (`Ordinal.Buchholz.VeblenIdentityModel`): first concrete
111+
instantiation of the interface (identity-measure bootstrap), keeping
112+
`dec-ψα` and `dec-+2` as explicit assumptions.
113+
* WF-1.7 (`Ordinal.Buchholz.VeblenObligations`): discharge
114+
same-binder obligation shapes in projection-model form; landed lemmas:
115+
`dec-+2-plus-right`, `dec-ψα-psi-arg`.
116+
* WF-2 (in progress): mixed-head bridge layer now includes
117+
`bpsi ν α <ᵇ bOmega μ` (under `ν ≤Ω μ`) and left-summand bridges
118+
into additive terms (`<ᵇ-Ω+`, `<ᵇ-ψ+`) with inversions.
119+
120+
Remaining open comparison work after this update:
121+
122+
* Constructor-level comparison rules for non-top `bplus` vs `bOmega`
123+
(the `bplus → bOmega` direction beyond `<ᵇ-+ω`).
124+
* Constructor-level comparison rules for non-top `bplus` vs `bpsi`
125+
(the `bplus → bpsi` direction beyond `<ᵇ-+ψω`).
126+
* Shared-binder same-index/same-left sub-cases in a K-free style
127+
(do not return to the blocked direct reflexive-equation elimination
128+
route).
129+
130+
Risk-gated bridge currently admitted:
131+
132+
* `bplus x y <ᵇ bOmega ω` from `x <ᵇ bOmega ω` (top-marker-only
133+
directional bridge). This is intentionally narrow to avoid forcing
134+
immediate `bplus` vs `bpsi` constructor commitments.
135+
95136
== The very first Agda proof: `C-monotone`
96137

97138
Before any ψ-value is defined, we must know the closure stages form a

0 commit comments

Comments
 (0)