Concurrent agents · Mozaik
Separation
Two agents decide about the same aircraft at the same time. Each decision is safe on its own. Together they are not — and neither one exists yet while the other is being written.
01 / The volumes
Each aircraft wears 3 nautical miles and a thousand feet.
The two shapes touch exactly when the standard is broken. Scroll to run the clock.
t+000 s
02 / Why this is drawn in three dimensions
A radar scope shows both outcomes as the same picture.
Across all 380 recorded frames the two architectures are laterally identical. Both reach their closest approach of 2.3511 NM at the same second.
Validate at commit
400.67 ft apart
Vertical minimum broken. Separation lost at t+97.6 s.
Interlock
1000 ft apart
Exactly the standard. It corrected to the minimum, not past it.
The plan view a controller actually looks at cannot tell the catastrophe from the save. The third axis is the only one this story exists on.
03 / The repair
A peer rewrote the arguments of a call that was still open.
proposed {"targetAltFt":4000,"verticalRateFpm":2000}
executed {"targetAltFt":7000,"verticalRateFpm":2000}
because: “that descent crosses my metering block at CARDL”
The rewritten call is what ran, and what landed in the first agent's own context — so it reasons about having been narrowed. A narrowing, not a refusal. Aborting would have cost minutes of inference; databases can afford that and agent runtimes cannot.
04 / The ablation
Three architectures, 200 seeds each, one decision policy.
| arm | losses | hazards caught | content differs |
|---|---|---|---|
| world waits (sequential) | 100 | 0 | 0 |
| concurrent, validate at commit | 100 | 0 | 0 |
| concurrent + interlock | 0 | 100 | 100 |
Of 100 hazardous seeds the interlock altered 100. Of 100 safe seeds it altered none. A mechanism that altered everything would be indistinguishable from one that understood nothing.
05 / Run it yourself
Every claim on this page is a command away.
npm run verify:theorem # the theorem, 0.7 s
npm run verify:braid-2 # the scenario, under the shipped integrator
npm run ablate # 600 runs
npm run demo:live # replays a recorded model run
Zero tokens, no API key, no network. The live model run is recorded once and replayed from a committed cache, so it costs nothing and cannot fail in front of you.