You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**Progressive type safety for WebAssembly linear memory — checked L1-L10 core, 0 believe_me in the checked proof package.**
17
+
**Progressive type safety for WebAssembly linear memory — checked L1-L10 core, 0 believe_me in the checked proof package.
18
+
L11 (tropical cost-tracking) and L12 (epistemic safety) are formally specified and published.**
18
19
____
19
20
20
-
**Evidence**: `/var/mnt/eclipse/repos/typed-wasm/src/abi/Levels.idr` defines Idris2 dependent types for all 10 levels: L1 (instruction validity), L2 (region binding), L3 (type compatibility), ..., L10 (linearity). Proof search at `/var/mnt/eclipse/repos/typed-wasm/src/abi/Proofs.idr` contains zero `believe_me`, `assert_total`, or escape hatches. LEVEL-STATUS.md confirms "checked L1-L10 core."
21
+
**Evidence**: `/var/mnt/eclipse/repos/typed-wasm/src/abi/Levels.idr` defines Idris2 dependent types for all 10 checked levels: L1 (instruction validity), L2 (region binding), L3 (type compatibility), ..., L10 (linearity). `src/abi/Proofs.idr` contains zero `believe_me`, `assert_total`, or escape hatches. LEVEL-STATUS.md confirms "checked L1-L10 core."
21
22
22
-
**Caveat**: L11-L12 (advanced liveness + exotic type-level properties) are *draft files*, not integrated into the default proof package. Claims scope to L1-L10 only.
23
+
L11 and L12 are formally specified in `src/abi/TypedWasm/ABI/Tropical.idr` (L11: AllPairsCosts + Level11KleeneProof) and `src/abi/TypedWasm/ABI/Epistemic.idr` (L12: Level12Proof + freshness witnesses). The full 12-level type hierarchy is given by the `fullCert12` top-level certificate type in `Proofs.idr`.
24
+
25
+
**Published**: Zenodo `10.5281/zenodo.19535653` — "typed-wasm: Progressive Type Safety for WebAssembly Linear Memory" (v1.1.0-paper, 2026-04-12).
26
+
27
+
**Caveat**: L11-L12 type-check in Idris2 but are NOT integrated into the default checked build. The `fullCert12` certificate exists as a type; producing concrete witnesses for arbitrary programs requires additional toolchain work. Claims cite the paper; do not assert machine-checked L11-L12 coverage.
23
28
24
29
=== Claim 2: "Multi-Module Type Safety Across Language Boundaries"
25
30
26
-
**From README** (lines 52-93):
31
+
**From README**:
27
32
____
28
33
When Module A (compiled from Rust) shares memory with Module B (compiled from ReScript), **neither source-level type system can verify the boundary.**
29
34
30
35
typed-wasm declares the shared schema once. Both modules import it. The typed-wasm checker verifies structural agreement at compile time, before any module runs.
31
36
____
32
37
33
-
**Evidence**: `/var/mnt/eclipse/repos/typed-wasm/examples/02-multi-module.twasm` demonstrates: Module A exports a `region Entity` with fields (pos_x, pos_y, hp); Module B imports the same region and defines typed load/store operations. Prover at `/var/mnt/eclipse/repos/typed-wasm/src/abi/Proofs.idr` proves field offset and alignment agreement.
38
+
**Evidence**: `examples/02-multi-module.twasm` demonstrates: Module A exports a `region Entity` with fields (pos_x, pos_y, hp); Module B imports the same region and defines typed load/store operations. `src/abi/Proofs.idr` proves field offset and alignment agreement.
34
39
35
-
**Caveat**: Schema agreement proof is *type-level* (compile-time). Does NOT verify that actual Rust/ReScript compiled code respects field layout—correspondence is manual. Runtime behavior depends on correct field packing across compilers.
40
+
**Caveat**: Schema agreement proof is _type-level_ (compile-time). Does NOT verify that actual Rust/ReScript compiled code respects field layout — correspondence is manual. Runtime behavior depends on correct field packing across compilers.
**Evidence**: `/var/mnt/eclipse/repos/typed-wasm/spec/10-levels-for-wasm.adoc` maps each level from database (TypedQL) to WASM. `/var/mnt/eclipse/repos/typed-wasm/src/abi/` contains proof files for each: L1-L3 in Types.idr, L4-L5 in Layout.idr, L6-L7 in Access.idr, L8-L10 in Linearity.idr.
44
+
**Evidence**: `spec/10-levels-for-wasm.adoc` maps each level from database (TypedQL) to WASM. `src/abi/` contains proof files for each: L1-L3 in Types.idr, L4-L5 in Layout.idr, L6-L7 in Access.idr, L8-L10 in Linearity.idr.
51
45
52
-
**Caveat**: Proofs are *about abstract WASM models*, not actual WebAssembly instruction sequences. Translation from `.twasm` (typed-wasm surface syntax) to WASM bytecode is NOT mechanically verified.
46
+
**Caveat**: Proofs are _about abstract WASM models_, not actual WebAssembly instruction sequences. Translation from `.twasm` (typed-wasm surface syntax) to WASM bytecode is NOT mechanically verified.
53
47
54
48
== Dogfooded Across The Account
55
49
56
-
Uses the hyperpolymath type safety stack (Idris2 + TypeLL + 10-level verification). Same pattern across:
57
-
- https://github.com/hyperpolymath/typedqliser[TypedQLiser] — 10 levels for database query languages (origin)
58
-
- https://github.com/hyperpolymath/vql-ut[VCL-total] — 10 levels for VeriSimDB
50
+
Uses the hyperpolymath type safety stack (Idris2 + TypeLL + 12-level verification). Same pattern across:
51
+
52
+
- https://github.com/hyperpolymath/typedqliser[TypedQLiser] — 12 levels for database query languages (origin)
53
+
- https://github.com/hyperpolymath/vql-ut[VCL-total] — 12 levels for VeriSimDB
59
54
- https://github.com/hyperpolymath/typell[TypeLL] — Type theory foundation (shared)
| `src/abi/Proofs.idr` | Machine-checked proofs for L1-L10. `fullCert12` top-level certificate for all 12 levels. Zero `believe_me`.
85
84
86
85
| `src/abi/Foreign.idr` | FFI declarations: C header generation from Idris2 ABI
87
86
@@ -97,26 +96,34 @@ All share: *Progressive safety levels, mechanized proofs in Idris2, no escape ha
97
96
98
97
| `examples/04-ecs-game.twasm` | Real-world example: Entity Component System as columnar database with typed-wasm regions
99
98
100
-
| `LEVEL-STATUS.md` | Current claim envelope: which levels are checked (L1-L10), which are draft (L11-L12), audit status
99
+
| `examples/05-tropical-cost.twasm` | L11 demo: particle system with bounded memory access cost via tropical semiring
100
+
101
+
| `examples/06-epistemic-sync.twasm` | L12 demo: game server/renderer with freshness enforcement across module boundaries
102
+
103
+
| `docs/arxiv/typed-wasm.tex` | Preprint source: "typed-wasm: Progressive Type Safety for WebAssembly Linear Memory" (12-level)
104
+
105
+
| `LEVEL-STATUS.md` | Current claim envelope: which levels are checked (L1-L10), which are published-but-not-integrated (L11-L12), audit status
101
106
102
-
| `docs/WHITEPAPER.md` | Full academic treatment: type theory, proof structure, GraalVM implications
107
+
| `docs/supplementary/proof-inventory.adoc` | Full mapping of paper theorems to source locations, including Zero-Overhead Property, tropical semiring laws, epistemic freshness theorems
103
108
|===
104
109
105
110
== Status
106
111
107
-
**Honest Assessment**: Pre-alpha / Research. The checked L1-L10 ABI core and Zig FFI are in place. Parser smoke tests pass. L11-L12 are experimental drafts (not integrated). End-to-end codegen (`.twasm` → WASM bytecode) is NOT yet implemented.
112
+
**Honest Assessment**: Pre-alpha / Research. The checked L1-L10 ABI core and Zig FFI are in place. L11-L12 are formally specified and published (Zenodo `10.5281/zenodo.19535653`). End-to-end codegen (`.twasm` → WASM bytecode) is NOT yet implemented.
108
113
109
114
**What Works**:
110
115
- L1-L10 proof core in Idris2 (zero unsound axioms)
116
+
- L11-L12 type specifications in Idris2 (`fullCert12` certificate type)
111
117
- Zig FFI layer (C-compatible, tested)
112
118
- Multi-module schema agreement verification
119
+
- Published preprint with formal inference rules
113
120
114
121
**What's Missing**:
115
122
- Parser for `.twasm` syntax (spec exists, implementation partial)
0 commit comments