Why text is a hostile medium for long AI work
1. Three different “languages”
| Layer | What it is | Cost unit |
|---|---|---|
| Human prose | English / markdown | Cognitive + tokens |
| BPE stream | Integer ids | API / context tokens |
| Residual / A(q) | Float vectors | KV bytes + FLOPs |
Optimizing only prose style barely touches residual geometry.
2. Text multiplies KV positions
Each token → (typically) one position → one K and V per layer/head group.
“We decided to use Postgres because we need transactions.”
Many tokens; one decision.
Attention may collapse them geometrically, but cache still paid unless you compress engine-side.
3. Exact full-key recovery is heavy (math)
Theorem 0 (research derivation 17, distilled in maths/01_theorem0_exact_scores.md):
Recovering all attention scores for generic queries requires Θ(m d) parameters.
So “store something tiny, perfect full attention forever” is not free.
The right target is approximate A(q) (output), not scores or chat text.
4. Image intuition (correct use)
Images can be efficient because they sample a field (pixels on a grid / vision patches) with high parallel structure.
Analogy that holds:
| Image | Architecture-native |
|---|---|
| Field on a chart | A(q) as map query→output vector |
| Palette + indices | Prototypes + anchors |
| Resolution tradeoff | ε-cover size r\* |
Analogy that fails:
- “Always send screenshots instead of text” for abstract logic (OCR/vision tax).
- “Unicode art is a new neural representation.”
5. What text is good for
- Human communication
- Exact code and IDs
- Tool schemas
- One-shot questions
What text is bad for as working memory:
- Multi-hour agent transcripts
- Repeated entity names
- Full tool dumps
- Full doc pastes every turn
6. Mitigations by track
| Problem | Track A (I/O) | Track B (engine) |
|---|---|---|
| Long chat | Frame + palette, Δ | Shorter m into cache |
| Tool dump | Tables / WIN only | N/A |
| Redundant K,V | Can’t fix | AOC / hybrid / residual tricks |
| Grammar tax | Codes | Doesn’t care about grammar |
7. Bottom line
Text is hostile because it is a discrete, high-redundancy codec into a continuous, geometry-driven machine, and it inflates m for KV.
New AI Language = use text only where humans/tools need it; use covers of A (and short I/O codes) where the machine pays.