|
1 | | -= Adjacency Notes (Gate 1) |
| 1 | += Adjacency notes |
2 | 2 | :toc: macro |
3 | | -:sectnums: |
| 3 | +:source-highlighter: rouge |
4 | 4 |
|
5 | 5 | [.lead] |
6 | | -One note per neighbouring framework, written to discharge Gate 1 of |
7 | | -`roadmap-gates.adoc`: that echo types name a phenomenon not already |
8 | | -covered elsewhere under a different name. |
| 6 | +Per-neighbour distinctness comparisons for the gate #1 identity |
| 7 | +claim. This directory is the artefact `roadmap-gates.adoc` § Gate 1 |
| 8 | +specifies. It supersedes the consolidated neighbour-theory section |
| 9 | +in `docs/gate-1-distinct-phenomenon.adoc`, which now points here. |
| 10 | + |
| 11 | +The exploration that motivated this directory (and identified the |
| 12 | +gaps it fills) is in `docs/integration-audit.adoc` § "Adjacency |
| 13 | +exploration". |
9 | 14 |
|
10 | 15 | toc::[] |
11 | 16 |
|
12 | | -== Gate 1 test, repeated |
| 17 | +== The two argument families |
13 | 18 |
|
14 | | -For each framework below, the note answers three questions: |
| 19 | +Working through the neighbours individually surfaced a structural |
| 20 | +observation that the consolidated framing was glossing: the |
| 21 | +distinctness arguments fall into two structurally different |
| 22 | +families. |
15 | 23 |
|
16 | | -. What is the nearest existing construction? |
17 | | -. What do echo types add? |
18 | | -. What do echo types _not_ add? |
| 24 | +=== Truncation arguments |
19 | 25 |
|
20 | | -A framework *fails* the test if every claimed addition is already |
21 | | -present elsewhere under another name. Gate 1 *fails* if no framework |
22 | | -survives the test — in which case the identity claim is retracted per |
23 | | -`roadmap-gates.adoc`. |
| 26 | +Echo wins by carrying *type-data* where the neighbour carries |
| 27 | +*propositional* or *single-witness* content. The formal certificate |
| 28 | +is the family of `echo-not-prop` lemmas formalised in |
| 29 | +`proofs/agda/examples/`: |
24 | 30 |
|
25 | | -== Frameworks surveyed |
| 31 | +* `TropicalArgmin.echo-not-prop` — three paths, two argmins |
| 32 | +* `EpistemicUpdate.echo-not-prop` — eight worlds, four consistent |
| 33 | +* `LinearErasure.echo-not-prop` — two annotated types, one erasure |
26 | 34 |
|
27 | | -[cols="1,3", options="header"] |
28 | | -|=== |
29 | | -| Note | Nearest construction |
| 35 | +The general theorem (forwarded as Q2.1 in `next-questions.adoc`): |
| 36 | +for non-injective `f : A → B` with at least two distinct preimages |
| 37 | +of `y`, `is-prop (Echo f y) → ⊥`. The n=2 special cases are proved; |
| 38 | +the general theorem awaits gate-2 evaluation. |
| 39 | + |
| 40 | +Truncation arguments are load-bearing against: |
| 41 | + |
| 42 | +* Refinement types (in propositional-predicate variants like F\*, |
| 43 | + Liquid Haskell — see `refinement-types.adoc`) |
| 44 | +* Information-flow non-interference (in relational variants — see |
| 45 | + `information-flow.adoc`) |
| 46 | +* Provenance (in single-witness variants — see `provenance.adoc`) |
| 47 | +* Quotient types (which collapse witnesses by construction — see |
| 48 | + `quotients.adoc`) |
| 49 | + |
| 50 | +=== 2-cell arguments |
| 51 | + |
| 52 | +Echo wins because the natural 2-cell in the neighbour's framework |
| 53 | +is *Σ-over-preimages-shaped*, i.e., already echo-shaped, when |
| 54 | +incomparable kernels force a true 2-cell rather than a refinement |
| 55 | +map. The formal certificates: |
| 56 | + |
| 57 | +* `EchoVsQuotient.Sophisticated.equalizer→echo-pair` — quotients' |
| 58 | + 2-categorical encoding's natural 2-cell is the equalizer of two |
| 59 | + parallel maps, which IS Σ-over-preimages. |
| 60 | +* `EchoVsGalois.Sophisticated.meet→echo-intersection` — abstract |
| 61 | + interpretation's natural 2-cell is the meet in the abstraction |
| 62 | + lattice, which IS Σ-over-preimages with a paired predicate. |
30 | 63 |
|
31 | | -| link:refinement-types.adoc[Refinement types] |
32 | | -| `{ x : A | P x }` subset types with predicate carrier. |
| 64 | +Both arguments are sealed against subordinate sub-cases: joins |
| 65 | +(`Joins.join-universal`), indexed families with coherence laws |
| 66 | +(`IndexedFamilies.s-2-reduction`). |
33 | 67 |
|
34 | | -| link:lenses-and-optics.adoc[Lenses and optics] |
35 | | -| get/put pairs with lawful round-tripping. |
| 68 | +The diagonal correspondence |
| 69 | +(`Sophisticated.meet-on-diagonal→equalizer`) establishes that the |
| 70 | +two arguments agree where they overlap: the AI meet specialises to |
| 71 | +the quotient equalizer when output values coincide. |
36 | 72 |
|
37 | | -| link:hott-fibers.adoc[HoTT fibers] |
38 | | -| `fib f y := Σ x , f x = y` with univalent identity. |
| 73 | +2-cell arguments are load-bearing against: |
39 | 74 |
|
40 | | -| link:setoid-quotients.adoc[Setoid quotients] |
41 | | -| `(A , ~)` carrier plus equivalence relation. |
| 75 | +* Quotient types (`quotients.adoc`) |
| 76 | +* Galois connections / abstract interpretation |
| 77 | + (`galois-connections.adoc`) |
42 | 78 |
|
43 | | -| link:provenance-semirings.adoc[Provenance semirings] |
44 | | -| `K`-annotated tuples tracked through relational algebra. |
| 79 | +=== Multiplicity arguments |
45 | 80 |
|
46 | | -| link:cubical-systems.adoc[Cubical systems] |
47 | | -| Cubical Agda, `RedPRL`, `redtt`, `cooltt` as higher-dimensional equality frameworks. |
| 81 | +A subset of the truncation family worth distinguishing: provenance |
| 82 | +specifically tracks *one* source per output rather than truncating |
| 83 | +to "some source exists". The win is at non-injective points; the |
| 84 | +loss is the same `echo-not-prop`-flavoured certificate but the |
| 85 | +neighbour's failure mode is "single-witness selection" rather than |
| 86 | +"propositional truncation" per se. |
| 87 | + |
| 88 | +Treated under truncation in `provenance.adoc`, with the |
| 89 | +multiplicity-vs-truncation distinction noted explicitly. |
| 90 | + |
| 91 | +=== Where the wins live (summary table) |
| 92 | + |
| 93 | +[cols="2,2,2,2", options="header"] |
| 94 | +|=== |
| 95 | +| Neighbour | Truncation | 2-cell | Notes |
| 96 | + |
| 97 | +| Refinement types |
| 98 | +| Wins against propositional-predicate variants (`echo-not-prop`) |
| 99 | +| N/A |
| 100 | +| Tied with Σ-relevant variants (Agda, Coq) — these *are* echo |
| 101 | + |
| 102 | +| Quotient types |
| 103 | +| Wins (quotients collapse witnesses by construction) |
| 104 | +| Wins (`equalizer→echo-pair` + S-1, S-2) |
| 105 | +| Strongest case; argued on both axes |
| 106 | + |
| 107 | +| Galois / AI |
| 108 | +| Partial (Galois is propositional/relational about the abstract domain) |
| 109 | +| Wins (`meet→echo-intersection`) |
| 110 | +| Diagonal correspondence with quotients |
| 111 | + |
| 112 | +| IFC (Goguen-Meseguer) |
| 113 | +| Wins against relational variants (`echo-not-prop` per gate-3) |
| 114 | +| Open question against type-theoretic IFC variants |
| 115 | +| Genuine open work — see Q2.x candidates |
| 116 | + |
| 117 | +| Provenance |
| 118 | +| Wins against single-witness variants (multiplicity) |
| 119 | +| Wins (transitive provenance reduces to S-2 case) |
| 120 | +| Multiplicity wording is sharper than truncation here |
| 121 | + |
| 122 | +| Modal type theories (QTT, etc.) |
| 123 | +| Wins against propositional-mode accounts |
| 124 | +| N/A (modal type theories make 2-cells syntactic primitives) |
| 125 | +| Co-extensive with QTT-class systems on bare echo; integration recipe is open |
| 126 | + |
| 127 | +| HoTT fibers |
| 128 | +| N/A (HoTT fibers are echo by another name) |
| 129 | +| N/A (cubical 2-cells are equalizers definitionally) |
| 130 | +| Tied; the win is over the propositional-truncation modality, not over HoTT |
| 131 | +|=== |
| 132 | + |
| 133 | +[NOTE] |
| 134 | +==== |
| 135 | +*EI-2 cascade.* The 2-cell wins above hold on their own structural |
| 136 | +terms (equalizers and meets are Σ-over-preimages-shaped). The |
| 137 | +*recipe-level* cross-axis commutations on 2D and 3D products are a |
| 138 | +*different* story: per the EI-2 investigation |
| 139 | +(`docs/EI2_REPORT.adoc`), the integration recipe with the existing |
| 140 | +five named axes does *not* produce substantive simultaneous |
| 141 | +cross-axis content. |
| 142 | +
|
| 143 | +Concretely: across seven data points (sibling 2D constructions |
| 144 | +`RoleGraded`, `RoleMode`, `ModeGraded`; the 3D `RoleModeGrade` |
| 145 | +with three pairwise commutations and a triple; and the |
| 146 | +self-pairing `RoleRole`), every "non-trivial" cell carries |
| 147 | +one-axis-at-a-time content, never simultaneous interaction. The |
| 148 | +non-loss-only criterion (formal certificate for Choreo in |
| 149 | +`ChoreoInjective.agda`) is necessary but not sufficient for |
| 150 | +simultaneous interaction; even Role × Role degenerates to either |
| 151 | +trivial coordinate-product commutation or breaks the per-axis |
| 152 | +transport assumption. |
| 153 | +
|
| 154 | +In short: *the integration recipe does not carry the |
| 155 | +distinctness load*. The 2-cell argument and the truncation |
| 156 | +argument do, and they stand independently. |
| 157 | +
|
| 158 | +`gate-1-distinct-phenomenon.adoc` § The Gate #1 claim has been |
| 159 | +narrowed to reflect this. |
| 160 | +==== |
| 161 | + |
| 162 | +== What this directory replaces |
| 163 | + |
| 164 | +The neighbour-theory section in |
| 165 | +`gate-1-distinct-phenomenon.adoc` previously listed five neighbours |
| 166 | +in a single doc. That section is now superseded by this directory. |
| 167 | +The consolidated doc retains the integration-flavoured argument |
| 168 | +and the falsification tests T1/T2/T3, but for per-neighbour |
| 169 | +comparison work it points here. |
| 170 | + |
| 171 | +The split is per `roadmap-gates.adoc` § Gate 1, which originally |
| 172 | +specified `docs/adjacency/` as the gate-1 artefact. The |
| 173 | +consolidated form was a transitional state during parallel work; |
| 174 | +this directory is the intended structure. |
| 175 | + |
| 176 | +== File index |
| 177 | + |
| 178 | +[cols="2,3", options="header"] |
| 179 | +|=== |
| 180 | +| File | Neighbour |
| 181 | + |
| 182 | +| `quotients.adoc` | Quotient types / setoid quotients |
| 183 | +| `galois-connections.adoc` | Galois connections / abstract interpretation |
| 184 | +| `refinement-types.adoc` | Refinement types (Σ-relevant and propositional variants) |
| 185 | +| `information-flow.adoc` | Information-flow non-interference (Goguen-Meseguer lineage) |
| 186 | +| `provenance.adoc` | Provenance / data lineage |
| 187 | +| `modal-type-theories.adoc` | QTT, Reed-Pfenning modal calculi, adjoint modalities |
| 188 | +| `hott-fibers.adoc` | HoTT homotopy fibers (cubical and Book HoTT) |
48 | 189 | |=== |
49 | 190 |
|
50 | | -== Reading order |
51 | | - |
52 | | -The notes are independent; read whichever framework you already know and |
53 | | -then cross-check the others. If after reading every note you conclude |
54 | | -that echo types are strictly renamed components of one of these |
55 | | -frameworks, Gate 1 fails and the verdict is recorded in |
56 | | -`docs/retractions.adoc`. |
57 | | - |
58 | | -== Scope |
59 | | - |
60 | | -All notes are written against the current Agda development |
61 | | -(`--safe --without-K`, no postulates). Claims reference specific |
62 | | -theorems by module and name. Anything not backed by a compiled |
63 | | -theorem is called out as conjectural. |
64 | | - |
65 | | -== Compositional evidence (load-bearing across notes) |
66 | | - |
67 | | -Three families of theorems in `proofs/agda/Echo.agda` and |
68 | | -`proofs/agda/EchoGraded.agda` are cited across multiple notes as |
69 | | -content distinguishing echo types from neighbours: |
70 | | - |
71 | | -* *Base-accumulation iso.* `Echo-comp-iso-{to, from, from-to, to-from}` |
72 | | - proves `Echo (g ∘ f) y ≃ Σ b. Echo f b × (g b ≡ y)` with both |
73 | | - round-trips, plus the projection-pentagon lemmas |
74 | | - `Echo-comp-iso-pent-{B, echo}` for three-fold composites. |
75 | | -* *Cancellation under section/retraction.* `cancel-iso-{to, from}` |
76 | | - exhibit `Echo (g ∘ f) y → Echo f (s y)` and back when `g` admits a |
77 | | - pointwise inverse `s`, without needing a triangle-identity coherence |
78 | | - for the partial maps. |
79 | | -* *Per-decoration composition for grades.* `≤g-prop`, |
80 | | - `≤g-⊔g-{left, right, univ}`, `degrade-compose`, `degrade-via-join` |
81 | | - in `EchoGraded.agda` exhibit the grade order as a propositional |
82 | | - pre-order with a categorical join, with degradation composing |
83 | | - uniquely up to `refl`. |
84 | | - |
85 | | -Each adjacency note flags whichever of these is load-bearing for its |
86 | | -particular framework comparison. |
| 191 | +== What's formalised, what's not |
| 192 | + |
| 193 | +The truncation argument has formal exhibits for three of its |
| 194 | +target neighbours via gate-3's `echo-not-prop` family |
| 195 | +(`TropicalArgmin`, `EpistemicUpdate`, `LinearErasure`). The |
| 196 | +general theorem (Q2.1) is unstated and unproven. Q2.1 is the |
| 197 | +single most leveraged open formalisation: closing it would |
| 198 | +discharge truncation arguments against all four |
| 199 | +truncation-vulnerable neighbours simultaneously. |
| 200 | + |
| 201 | +The 2-cell argument has formal exhibits for both of its target |
| 202 | +neighbours (quotients via `EchoVsQuotient.Sophisticated`, Galois |
| 203 | +via `EchoVsGalois.Sophisticated`). |
| 204 | + |
| 205 | +The remaining neighbours (IFC, provenance, modal type theories, |
| 206 | +HoTT fibers) have prose adjacency notes here but no dedicated |
| 207 | +Agda formalisation. Each note states what would be required for |
| 208 | +formalisation and forwards the obligation to either Q2.x (for |
| 209 | +recipe-level distinctness from a given neighbour) or to Q3.x |
| 210 | +(for a canonical example exercising the distinctness). |
| 211 | + |
| 212 | +The honest summary: gate #1 has a strong consolidated argument |
| 213 | +plus formalised obstructions against the two strongest neighbours |
| 214 | +(quotients, Galois) plus formalised truncation wins on three |
| 215 | +domains (tropical, epistemic, linear). The remaining neighbours |
| 216 | +have framed but unformalised distinctness claims. |
0 commit comments