# What is the relationship between a causal graph, affordances, and constraints?
# What is the relationship between a causal graph, affordances, and constraints
The hunch here is that the edges in a causal graph of heuretics have to do with either affordances or constraints. The former would look like “This component/precursor heuretic enables this other heuretic because it has the affordances to do XYZ.” The latter would look like “This component/precursor heuretic is blocking this other heuretic because it has constraints ABC.”
Implicit in those statements is that the latter heuretic is dependent on the former and suggests that you either need to improve the former heuretic or switch to another branch of the graph.
### Related
* [[Tech trees as causal graphs]]
* [[Program design could be thought of as creating a causal graph of blockers and hypotheses about how to mitigate those blockers]]
* [[Any causal statement about history implicitly states a counterfactual]]
* [[Causal Loop Diagrams]]
* [[Affordances and constraints instead of pros and cons]]
* [[Each heuretic by default inherits the constraints affordances and assumptions of its parents]]
* [[The affordance of a heuretic dictates how it can connect with another node on the tech tree]]
* [[arthurLogicInvention2005]]