docs/representability.md
Representability
A projection has two independent properties. The repository render proved it: R1–R8 all passed and the layout conveyed nothing.
| Question | Layer | |
|---|---|---|
| licensing | is this channel allowed to carry this quantity? | semantic |
| representability | does the drawing preserve what it carries? | representational |
src/lib/grammar/fidelity.ts, tests/fidelity.test.ts.
1. The derivation
A representation is a map from a semantic structure to a visual one. What it must preserve is exactly what the algebra of the value space supports — already derived machinery in dimension-algebra.md, not a new concept.
| Algebra | Supports | Must preserve | Distortion is |
|---|---|---|---|
| categorical | equality | distinctness | collisions |
| ordered | comparison | monotonicity | inversions |
| spatial | a metric | the ordering of distances | reversed comparisons |
| directed | asymmetry | recoverable direction | direction losses |
| symmetric | adjacency | recoverable adjacency | occlusions |
Every entry is a count of false claims, never a score. That is forced rather
than chosen: a drawing that puts a above b when a < b asserts something
untrue, and this system's rule is that a projection may not assert what the
facts do not support. Counting is the only measure consistent with that rule.
2. Why stress is not the measure
Kruskal stress-1 is continuous, so using it requires a threshold — and a threshold is a convention, which per semantic-typing.md cannot be false, only unuseful, and so must be declared and defended. The familiar 0.05/0.1/0.2 bands are exactly that: stipulations with no observation behind them.
That is avoidable. A metric embedding's false claims are enumerable — count the pairs of pairs whose distance ordering the drawing reverses. Then:
The spatial case reduces to the ordered case. One measure covers both, and no threshold is invented.
Stress is still reported, because it is the standard figure a reader will look for. It is not what adequacy is judged on.
The one number that is not derived, and why it survives
COIN_FLIP = 0.5. At a 50% reversal rate a spatial arrangement carries no
information — and it is worse than not drawing it, because a viewer extracts
confident nonsense rather than nothing.
This is not a taste threshold like stress < 0.2. It is the point where the channel stops carrying information at all, which is a fact about the channel rather than a preference about quality.
3. The measured case
Applied to the repository layout, without tuning:
6,328 pairs → 14,646,903 comparisons
7,989,302 reversed — 54.5%
conveysNothing = true
Worse than a coin flip. A viewer reading "these two are closer, so they are more related" is wrong 54.5% of the time.
Two things about this result matter more than the number:
- It was derived independently and agreed. The measure comes from what the algebra preserves; stress-1 = 1.022 comes from a standard statistic. Neither was fitted to the other, and both condemn the same layout.
- It exceeds 50%, so the arrangement is anti-informative — the same shape as the WorldScene finding, where linked buildings render 1.5× farther apart. Two pipelines, no shared code, both worse than random.
4. The two refusals do not merge
This is the distinction the objective required, and it holds because their repairs are disjoint.
| Observation refusal | Inadequacy | |
|---|---|---|
| says | the vocabulary cannot hold this phenomenon | the semantics are correct; this drawing cannot carry them |
| example | 38 import dependencies — no binary state family | position at 54.5% reversal |
| repair | ontological — a new family, or better observation | representational — choose another representation |
| more data helps? | sometimes | never |
| type | Refusal |
Inadequacy |
The last row is the sharp test. More observation never fixes an inadequacy — a better-embedded layout of the same facts would fix it, and a thousand more commits would not. Conversely no choice of representation fixes an observation refusal: there is nothing to draw.
Merging them would produce the failure this project keeps finding — one word for two conditions whose remedies differ, so the diagnosis silently selects the wrong repair.
An Inadequacy therefore names representations that could carry it. An
inadequacy with no alternative is a complaint, and the test asserts the list is
non-empty. For a binary relation the alternative it names first is an
adjacency matrix, which is lossless — and that is the honest representation
for the dependency graph the reconstruction had to refuse.
5. Orthogonality, tested in both directions
A one-directional demonstration would not establish independence, so
tests/fidelity.test.ts exhibits both:
| Licensed | Faithful | |
|---|---|---|
| churn → size, drawn proportionally | ✓ | ✓ |
| churn → size, drawn inverted | ✓ | ✗ ← the repository case |
| department → size (categorical on ordered) | ✗ | ✓ — marks are all distinct |
| ten categories → eight hues | ✓ | ✗ |
The third row is the one that proves independence rather than merely illustrating it: R1 rejects the encoding while nothing at all is distorted.
Standing
| Question | Answer |
|---|---|
| Are licensing and representability independent? | yes — demonstrated in both directions |
| Is the measure general? | yes — one per algebra, derived from what each preserves |
| Was a threshold invented? | no — the spatial case reduces to counting |
| Do the refusals stay distinct? | yes — more observation never repairs an inadequacy |
| Was the grammar tuned to the observation? | no — R1–R8 are unchanged |
What is still not established
- Only three of the five distortions are implemented: categorical, ordered, spatial. Directed and symmetric are derived in the table and have no measure — occlusion in particular needs a rendered surface, not a scene graph.
- The measure is
O(n²)over pairs and ran 14.6M comparisons for 113 nodes. Fine here; it will not scale, and nothing in this round addresses that. conveysNothingis only defined for the spatial case. Whether an ordered channel has an equivalent floor is not derived.- The alternatives an
Inadequacynames are asserted, not proven adequate. A matrix being lossless for a binary relation is argued; nothing measures the matrix.
180 tests, tsc clean. The one intermittent failure across this work was
IV.2: composition stays linear, the documented wall-clock perf test, which
passed four consecutive runs afterward and is untouched by these changes.