Chapter 27
How Causal Relationships Become Space
Chapter 24 said that “A came before B” and “A is a precondition of B” are different claims, and Chapter 26 fixed the boundary of the space those relations sit in. This chapter looks at how the order that relations make becomes space on screen.
1. Time order and causal order are different
Suppose two things are recorded like this: A at 10:00, B at 11:00.
That alone does not let us say A caused B. Two decisions made on the same day need not presuppose one another, and two decisions months apart must be joined by prerequisite_of, not by time, if the later one was built on the earlier.
So the graph stores time and causality separately. Time is the three axes of Chapter 24; causality is the relations of Chapter 11.
2. Causality is read as a partial order
Three of Chapter 11's six relations make order: prerequisite_of, derives_from and inherits_from. Chaining them, their transitive closure, is the graph's causal order.
The direction had to be settled once, in August 2026. prerequisite_of points along time: if A is a precondition of B, A comes first. derives_from and inherits_from point the other way: if B derives from A, the arrow runs from B to A, and A still comes first. The code that computes the order and the screen that draws it both read those two reversed, and that is written down in one place.
The goal is not to line the whole graph up on one axis. Some Nodes have an order between them and some do not. That is a partial order.
We can say A comes before B and C, and B and C before D. Which of B and C comes first is not decided by these relations, and what is undecided is not pretended decided.
3. Order comes before coordinates
Think about space first and the question becomes whether A goes at x=10 and B at x=20. The question to settle first is whether A < B holds at all. Coordinates do not make order; relations make order, and the order makes the coordinates.
Reverse that and the layout invents meaning the graph never claimed. The rank preset of Chapter 25 §6 is this principle in code: the layer axis is global topological order, topics do not cluster because lineage crosses them, and within a layer the Nodes are banded by topic instead.
4. A cone is built from relations
Around a Node A two regions can be drawn.
A's upstream is what preceded it for A to hold; its downstream is what derived from it or followed as a consequence. That region is the graph's version of the light cone borrowed in Chapter 6 §6, the causal cone. It is not a before-and-after window on a time axis. “A existed before B” and “A is a precondition of B” are different relations, and the cone follows the second.
The cones are on screen. The research verdict came in an order: causal order first, then cones, then density, and a metric never. The first two are drawn. The Timeline viewpoint has a lineage overlay, off by default because shown always it is spaghetti. When it is on, the directed relations are drawn over the time axis, and a relation that runs backwards in time is dashed. A derivation that points into the past is either a recording error or a genuinely interesting fact, and drawing it like every other line would hide both.
5. No metric is invented
Computing coordinates between Nodes does not mean a physical distance exists between them. Two readings are off limits: taking the distance between two Nodes as the truth of their meaning, and taking geometric distance as the strength of causation.
Coordinates are layout values for the View; relations are what the graph means. The two must not be treated as one. The principle of Chapter 6 §7 applies here: borrow the forms that help and invent no meaning that is not present. What was borrowed from physics is the shape of the cone, not a scale for the gaps.
6. Causal order and layout are kept apart
From what the graph means comes the causal order, from the order the layout constraints, from the constraints the coordinates, and the renderer only draws them. A layout may draw the causal order; the layout must never make a new causal relation. The more elaborate the picture, the more this matters. It is also why Chapter 25 §6 has the sidecar's pure functions compute the coordinates: a layout made by a force simulation on the client draws accident, not order.
7. Causality reaches search too
Select one Node and its upstream and downstream become explorable: upstream, what had to exist first for it to hold; downstream, what derived from it as a result.
This is stronger than a one-hop neighbourhood. To understand one concept you see, together, what had to come before it and what came out of it. It is one more reason Chapter 19's brief carries each relation with its direction.
8. Causal space is not semantic space
The vectors of Chapter 17 find sentences and Nodes that are close in meaning. The causal graph finds what precedes or derives through relations. Semantic space is similarity of meaning; causal space is the order relations make.
The two complement each other. Two Nodes close in meaning are not guaranteed to be causally joined, and two causally joined Nodes need not sit close in vector space. The coordinates on one screen are a projection made by topic, relation, causal order and time together. Space does not replace what the graph means. It is one projection for reading it.
But when Nodes crowd together in that projection, what does the crowding mean? That is the last chapter of Part 3.
Continue with Chapter 28, What Density and Layout Show.