From Data to Mechanism to Constraint
Why “constraints as constructors” sits one layer deeper
Accurate prediction is not the same thing as understanding.

That statement has become almost a cliché in machine learning, usually followed by a correction:
don’t model the distribution of observed data—
model the mechanisms that generated the data.
This is the shift from correlation to causation. From pattern-matching to explanation. From surface to structure.
It’s a necessary move.
But it’s not the final one.
The Missing Layer
Causal models ask:
what process generated this outcome?
But there is a prior question:
why is that process even possible?
Mechanisms don’t exist in isolation. They operate inside a field of constraints—physical, informational, social, economic—that define what can and cannot happen.
So while causal AI moves from:
observations → mechanisms
there is a deeper move:
mechanisms → constraints
Constraints as Constructors
We tend to think of constraints as limitations. As boundaries imposed on a system after the fact.
But in practice:
constraints are what construct the system in the first place.
They don’t just restrict behavior.
They determine:
- which states are reachable
- which transitions are possible
- which mechanisms can even emerge
A mechanism is not just “found.”
It is selected by the constraint field it operates in.
A Simple Stack
You can think of system understanding as a three-layer stack:
-
Observations
What we see. Data, patterns, outputs. -
Mechanisms
The processes that generate those observations. -
Constraints
The conditions that make those mechanisms possible—and exclude others.
Each layer explains the one above it.
But only the bottom layer:
defines the space of all possible explanations.
Why This Matters
If you only model observations, you can predict—but not explain.
If you model mechanisms, you can explain—but still within a fixed space of possibilities.
If you model constraints:
you understand why the space itself looks the way it does.
This is the difference between:
- explaining what happens
- explaining how it happens
- and explaining why it cannot happen differently
Example: Architecture
Take something as concrete as a hotel.
You can describe it in terms of:
- rooms, corridors, lobby placement (observations)
Or:
- guest flow, service routes, capacity optimization (mechanisms)
But the real structure comes from constraints:
- land geometry
- cost per square meter
- fire safety regulations
- human expectations of orientation and comfort
These constraints don’t “influence” the design.
They force it.
Change the constraints, and a different building must emerge.
Where Most Systems Fail
Most systems don’t resolve constraints upfront.
They:
- defer them
- hide them
- or externalize them
The result is predictable:
conflicts surface later, under pressure, when resolution is expensive.
This is true in:
- software (runtime errors, patching)
- organizations (misaligned incentives)
- AI systems (emergent failures in real-world deployment)
The Deeper Question
So the real question in systems thinking is not:
how do you resolve?
That’s already too late.
It is:
how do you resolve constraints before they are allowed to interact irreversibly?
Designing at the Right Layer
If constraints define the space, then good design is not:
- adding features
- optimizing outputs
- or even refining mechanisms
It is:
shaping the constraint field so that invalid states never emerge.
This is fundamentally different from:
- detecting errors
- or correcting them after the fact
It is about:
making certain outcomes impossible by construction.
Closing
Causal AI is a step forward because it looks beneath the surface.
But it still operates inside a given space.
Autonomy Theory—and similar constraint-first perspectives—ask a different question:
what defines that space?
Because once you see constraints not as limits but as constructors,
you stop asking:
what produced this?
and start asking:
what made it inevitable?
One-line takeaway
mechanisms generate outcomes—
constraints generate mechanisms.