and L, then the value of F **is set to their maximum. However, despite the equality,**
if a forest fire starts some other way, that does not force the value of either ML or L **to be 1.**
It is conceptually useful to split the random variables into two sets: the *exogenous* **variables, whose values are determined by factors outside the model, and the**
endogenous **variables, whose values are ultimately determined by the exogenous**
variables. For example, in the forest-fire example, the variables ML, L, and F are endogenous. However, we want to take as given that there is enough oxygen for the fire and that the wood is sufficiently dry to burn. In addition, we do not want to concern ourselves with the factors that make the arsonist drop the match or the factors that cause lightning. These factors are all determined by **the exogenous** variables.

Formally, a *causal model* M is a pair (S, F), where S **is a** *signature***, which explicitly lists the endogenous and exogenous variables and characterizes their possible**
values, and F **defines a set of** *modifiable structural equations***, relating the values**
of the variables. A signature S is a tuple (U, V, R), where U **is a set of exogenous**
variables, V is a set of endogenous variables, and R **associates with every variable**
Y ∈ U ∪ V a nonempty set R(Y ) of possible values for Y **(that is, the set of values**
over which Y *ranges*). F associates with each endogenous variable X ∈ V a function denoted FX such that FX : (×U∈UR(U)) × (×Y ∈V−{X}R(Y )) → R(X**). This**
mathematical notation just makes precise the fact that FX **determines the value**
of X, given the values of all the other variables in U ∪ V. If there is one exogenous variable U and three endogenous variables, X, Y , and Z, then FX **defines the**
values of X in terms of the values of Y , Z, and U**. For example, we might have**
FX (u, y, z) = u + y**, which is usually written as** X ← U + Y .

2 Thus, if Y **= 3 and**
U = 2, then X = 5, regardless of how Z **is set.**
In the running forest-fire example, suppose that we have an exogenous random variable U that determines the values of L and ML. Thus, U **has four possible values**
of the form (i, j), where both of i and j are either 0 or 1. The i **value determines**
the value of L and the j value determines the value of ML. Although FL **gets as**
arguments the vale of U, ML, and F**, in fact, it depends only on the (first component**
of) the value of U; that is, FL((i, j), m, f) = i. Similarly, FML((i, j), l, f) = j**. The**
value of F depends only on the value of L and ML. How **it depends on them depends**
on whether either cause by itself is sufficient for the forest fire or whether both are necessary. If either one suffices, then FF ((i, j), l, m) = max(l, m**), or, perhaps more**
comprehensibly, F = max(L, ML); if both are needed, then F = min(L, ML**). For**
future reference, call the former model the *disjunctive* **model, and the latter the** conjunctive **model.**
The key role of the structural equations is to define what happens **in the presence**
of external interventions. For example, we can explain what happens if the arsonist 2The fact that X is assigned U + Y (i.e., the value of X is the sum of the values of U and Y )
does not imply that Y is assigned X − U; that is, FY (U, X, Z) = X − U does not necessarily hold.