|
1 | 1 | # echo-types |
2 | 2 |
|
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`: |
4 | 23 |
|
5 | 24 | `Echo f y := Σ (x : A) , (f x ≡ y)` |
6 | 25 |
|
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`) |
8 | 73 |
|
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: |
14 | 75 |
|
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 |
16 | 79 |
|
17 | | -The formal scope is extended in controlled phases: |
| 80 | +## External Bridge Targets (local workspace) |
18 | 81 |
|
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. |
23 | 128 |
|
24 | 129 | ## Build |
25 | 130 |
|
26 | 131 | ```bash |
27 | 132 | cd /var/mnt/eclipse/repos/echo-types |
28 | 133 | 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 |
31 | 134 | ``` |
32 | 135 |
|
33 | | -## Bridge to Certified Null Operations (CNOs) |
| 136 | +Full suite: |
34 | 137 |
|
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 | +``` |
36 | 142 |
|
37 | | -**Key Insight**: CNOs are singleton echo types over identity functions. |
| 143 | +## Roadmap |
38 | 144 |
|
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: |
42 | 146 |
|
43 | | -**Documentation**: See `docs/ECHO-CNO-BRIDGE.adoc` for detailed explanation. |
| 147 | +- `roadmap.adoc` |
| 148 | +- `docs/buchholz-plan.adoc` |
44 | 149 |
|
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: |
49 | 151 |
|
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` |
0 commit comments