In stable structures, there is a canonical ternary relation {\displaystyle A\downarrow _{C}B} on subsets {\displaystyle A,B,C} of the structure, interpreted as "{\displaystyle A} is independent from {\displaystyle B} over {\displaystyle C}." There is also a closely connected notion of a "non-forking extension" of a complete type. This is related to {\displaystyle \downarrow } as follows: if {\displaystyle C\subset B} and {\displaystyle a} is a tuple, {\displaystyle \operatorname {tp} (a/B)} is a non-forking extension of {\displaystyle \operatorname {tp} (a/C)} if {\displaystyle a\downarrow _{C}B}, and is a forking extension of {\displaystyle \operatorname {tp} (a/C)} if {\displaystyle a\not \downarrow _{C}B}. This depends only on {\displaystyle \operatorname {tp} (a/B)} and {\displaystyle \operatorname {tp} (a/C)}. The non-forking extensions of a complete type can be thought of as the "generic" or "canonical" extensions, in a certain sense.

The ternary independence relation and the relation of non-forking can be defined through several different approaches, described below. In practice, what is more important than the definition is the formal properties possessed by these relations. In fact, these properties can be used to axiomatize {\displaystyle \downarrow }. The manipulation of independence and non-forking via these axioms and other properties is called the forking calculus. Forking computations play a key role in many proofs in stability theory.

In superstable theories, forking is closely connected to ranks such as Lascar rank and Morley rank. In a general stable theory, these ranks may explode. Certain arguments that work in superstable settings can be generalized to stable theories through reformulation in terms of {\displaystyle \downarrow }. The relation {\displaystyle \downarrow } also appears in many of the basic definitions of stability theory, such as Lascar rank, stationary types, orthogonal types, regular types, domination, and weight.

Forking calculus in stable theories can be generalized to simple theories, and more generally, rosy theories. Along the way, one or two of the axioms must be dropped, however.

Definitions[]

Work in a monster model {\displaystyle \mathbb {U} } of a stable theory {\displaystyle T}. Recall that the strong type of {\displaystyle a} over {\displaystyle C}, denoted {\displaystyle \operatorname {stp} (a/C)}, is the type of {\displaystyle a} over {\displaystyle \operatorname {acl} ^{eq}(C)}, the algebraic closure of {\displaystyle C} in {\displaystyle \mathbb {U} ^{eq}}. In stable theories, strong types have canonical extensions: there is a unique complete type {\displaystyle p} over {\displaystyle \mathbb {U} } which extends {\displaystyle \operatorname {stp} (a/C)} and which is {\displaystyle \operatorname {Aut} (\mathbb {U} /\operatorname {acl} ^{eq}(C))}-invariant. Denoting this unique extension by {\displaystyle \operatorname {stp} (a/C)|\mathbb {U} }, one can make the following definition: if {\displaystyle C\subset B}, then {\displaystyle \operatorname {tp} (a/B)} is a non-forking extension of {\displaystyle \operatorname {tp} (a/C)} if and only if {\displaystyle \operatorname {stp} (a/B)|\mathbb {U} =\operatorname {stp} (a/C)|\mathbb {U} .} It turns out that this definition depends only on {\displaystyle \operatorname {tp} (a/C)} and {\displaystyle \operatorname {tp} (a/B)}.

Then for {\displaystyle A,B,C\subset \mathbb {U} }, one defines {\displaystyle A\downarrow _{C}B} to mean that for every finite {\displaystyle a\subset A}, {\displaystyle \operatorname {tp} (a/BC)} is a non-forking extension of {\displaystyle \operatorname {tp} (a/C)}.

See below for some alternative definitions.

Axioms and Basic Properties[]

(symmetry)
{\displaystyle A\downarrow _{C}B} is equivalent to {\displaystyle B\downarrow _{C}A}. That is, if {\displaystyle A} is independent from {\displaystyle B} over {\displaystyle C}, then {\displaystyle B} is independent from {\displaystyle A} over {\displaystyle C}.
(invariance)
If {\displaystyle \sigma } is an automorphism of {\displaystyle \mathbb {U} }, then {\displaystyle A\downarrow _{C}B\iff \sigma (A)\downarrow _{\sigma (C)}\sigma (B)}. By strong homogeneity of the monster, this can be restated as follows: if {\displaystyle A'B'C'\equiv _{\emptyset }ABC}, then {\displaystyle A'\downarrow _{C'}B'\iff A\downarrow _{C}B}. This is an unsurprising property, which would be expected of any definition which was canonical.
(monotonicity)
If {\displaystyle A'\subset A} and {\displaystyle B'\subset B}, then {\displaystyle A\downarrow _{C}B\implies A'\downarrow _{C}B'}.
(finite character)
{\displaystyle A\downarrow _{C}B} holds if and only if {\displaystyle A'\downarrow _{C}B'} holds for all finite subsets {\displaystyle A'\subset A} and {\displaystyle B'\subset B}.
(transitivity)
If {\displaystyle B_{1}\subset B_{2}\subset B_{3}}, then {\displaystyle A\downarrow _{B_{1}}B_{3}} holds if and only if {\displaystyle A\downarrow _{B_{1}}B_{2}} and {\displaystyle A\downarrow _{B_{2}}B_{3}} hold. On the level of types, this means that {\displaystyle \operatorname {tp} (A/B_{3})} is a non-forking extension of {\displaystyle \operatorname {tp} (A/B_{1})} if and only if {\displaystyle \operatorname {tp} (A/B_{3})} is a non-forking extension of {\displaystyle \operatorname {tp} (A/B_{2})} and {\displaystyle \operatorname {tp} (A/B_{2})} is a non-forking extension of {\displaystyle \operatorname {tp} (A/B_{1})}. In particular, the relation of being a non-forking extension is transitive.
(normality)
{\displaystyle A\downarrow _{C}B} is equivalent to {\displaystyle A\downarrow _{C}BC}. This means that {\displaystyle A\downarrow _{C}B} really depends only on the set {\displaystyle BC}, and not on {\displaystyle B} specifically.
(stationarity)
Suppose {\displaystyle M} is a model, {\displaystyle A\downarrow _{M}B}, {\displaystyle A'\downarrow _{M}B}, and {\displaystyle A\equiv _{M}A'}. Then {\displaystyle A\equiv _{MB}A'}. On the level of types, this means that if {\displaystyle M\subset B} and {\displaystyle M} is a model, then every type over {\displaystyle M} has a unique non-forking extension to {\displaystyle B}.
(existence)
{\displaystyle A\downarrow _{B}B}. On the level of types, this means that types are non-forking extensions of themselves.
(full existence)
Given {\displaystyle A,B,C} we can find {\displaystyle A'\equiv _{C}A} such that {\displaystyle A'\downarrow _{C}B}. On the level of types, this means that if {\displaystyle C\subset B}, then every type over {\displaystyle C} has at least one non-forking extension to {\displaystyle B}.
(local character)
There is a cardinal {\displaystyle \kappa } such that if {\displaystyle A} is finite and {\displaystyle C} is arbitrary, then there exists {\displaystyle C'\subset C} with {\displaystyle |C'|<\kappa } such that {\displaystyle A\downarrow _{C'}C}. On the level of types, this means that every type is a non-forking extension of some type over a set of size less than {\displaystyle \kappa }.

Some of the above properties, such as symmetry, are more readily expressed in terms of independence, while others, such as transitivity, are more readily expressed in terms of non-forking extensions. Part of the complexity of forking calculus comes from the interplay of these two notions.

The above conditions actually characterize stable theories, in the following sense: if {\displaystyle T} is a theory with monster model {\displaystyle \mathbb {U} } for which there exists a ternary relation {\displaystyle \downarrow } satisfying the above axioms, then {\displaystyle T} is stable and {\displaystyle \downarrow } is forking independence.

Forking and ranks[]

Forking is closely related to ranks such as Morley rank and Lascar rank. If {\displaystyle R(-)} is one of Morley rank, Lascar rank, or Shelah infinity-rank, then {\displaystyle R(-)} governs forking, in the following sense: if {\displaystyle p(x)} is a type extending {\displaystyle q(x)} and {\displaystyle R(q)<\infty }, then

Equivalently, {\displaystyle a\downarrow _{C}B} means that {\displaystyle R(a/BC)=R(a/C)}, and {\displaystyle a\not \downarrow _{C}B} means that {\displaystyle R(a/BC)<R(a/C)}.

If {\displaystyle T} has finite Lascar rank, {\displaystyle \downarrow } can be defined very symmetrically as follows: {\displaystyle A\downarrow _{C}B} means that for every finite tuple {\displaystyle a} from {\displaystyle A} and {\displaystyle b} from {\displaystyle B}, {\displaystyle U(ab/C)=U(a/C)+U(b/C).}

Further properties[]

Aside from the axioms listed above, there are a number of other commonly used properties of forking:

Alternative Definitions[]

There are a number of different approaches to defining non-forking and {\displaystyle \downarrow }, aside from the one used above. All these definitions agree, for stable theories.

As a slight variant of the definition given above, one can proceed as follows. If {\displaystyle a} and {\displaystyle b} are finite, {\displaystyle a\downarrow _{C}b} means that {\displaystyle (\operatorname {stp} (a/C)|\mathbb {U} )\otimes (\operatorname {stp} (b/C)|\mathbb {U} )=\operatorname {stp} (ab/C)|\mathbb {U} ,} where {\displaystyle \otimes } denotes the product operation on global invariant types. Alternatively, {\displaystyle a\downarrow _{C}b} means that {\displaystyle ab\models (p\otimes q)|C} for two {\displaystyle \operatorname {acl} ^{eq}(C)}-definable global types {\displaystyle p} and {\displaystyle q}. Either way, {\displaystyle A\downarrow _{C}B} is then defined to mean that {\displaystyle a\downarrow _{C}b} for every finite {\displaystyle a\subset A} and {\displaystyle b\subset B}. Then {\displaystyle \operatorname {tp} (a/BC)} is a non-forking extension of {\displaystyle \operatorname {tp} (a/C)} if and only if {\displaystyle a\downarrow _{C}B}.

Shelah's original definition of forking proceeds as follows. A formula {\displaystyle \phi (x;a)} is said to divide over a set {\displaystyle C} if there exists a {\displaystyle C}-indiscernible sequence {\displaystyle a_{1},a_{2},\ldots } of realizations of {\displaystyle \operatorname {tp} (a/C)} such that {\displaystyle \bigwedge _{i=1}^{\infty }\phi (x;a_{i})} is inconsistent. A formula {\displaystyle \phi (x;a)} is said to fork over a set {\displaystyle C} if it implies a finite disjunction {\displaystyle \bigvee _{j=1}^{n}\psi _{j}(x;b_{j})} of formulas (with parameters {\displaystyle b_{j}} from {\displaystyle \mathbb {U} }), such that each {\displaystyle \psi _{j}(x;b_{j})} divides over {\displaystyle C}. A type {\displaystyle \Sigma (x)} forks (divides) over {\displaystyle C} if some formula in it forks (divides) over {\displaystyle C}.

Then one defines {\displaystyle A\downarrow _{C}B} to mean that {\displaystyle \operatorname {tp} (a/BC)} doesn’t fork over {\displaystyle C} for every finite tuple {\displaystyle a} from {\displaystyle A}. In a stable theory, it turns out that one can equivalently replace "forking" with "dividing" in this definition. Shelah’s definition of {\displaystyle \downarrow } is somewhat convoluted, but turns out to be the right definition for use with unstable theories, such as simple theories, NIP theories, and NTP2 theories.

In Poizat’s Course in Model Theory a different definition of forking is given for stable theories, using the fundamental order. If {\displaystyle p(x)} is a complete type over a model, we say that a formula {\displaystyle \phi (x;y)} is "represented" in {\displaystyle p(x)} if {\displaystyle \phi (x;a)\in p(x)} for some {\displaystyle a}. If {\displaystyle p(x)} and {\displaystyle q(x)} are two complete types over models, we say that {\displaystyle p\leq q} if every formula represented in {\displaystyle q} is also represented in {\displaystyle p}. If {\displaystyle p} is an extension of {\displaystyle q}, then {\displaystyle p\leq q} holds, for example. This defines a pre-order on the class of types over models; the quotient poset is called the fundamental order. If {\displaystyle p} is a type over an arbitrary set {\displaystyle A}, and {\displaystyle M\supset A} is a model, then among the equivalence classes of extensions of {\displaystyle p} to {\displaystyle M}, there is a unique maximum in the fundamental order. This maximum is called the bound of {\displaystyle p}; it does not depend on {\displaystyle M}. Now if {\displaystyle p} and {\displaystyle q} are two complete types, and {\displaystyle q} is an extension of {\displaystyle p}, then {\displaystyle q} is a non-forking extension of {\displaystyle p} if and only if {\displaystyle q} and {\displaystyle p} have the same bound. So {\displaystyle A\downarrow _{C}B} means that for every finite tuple {\displaystyle a} from {\displaystyle A}, {\displaystyle \operatorname {tp} (a/BC)} and {\displaystyle \operatorname {tp} (a/C)} have the same bound.

In totally transcendental theories, as noted above, {\displaystyle \operatorname {tp} (a/BC)} is a non-forking extension of {\displaystyle \operatorname {tp} (a/C)} if and only if {\displaystyle RM(a/BC)=RM(a/C)}. This can be used to define non-forking, in a totally transcendental setting. The analogous fact for Lascar rank in superstable theories cannot really be used as a definition, because Lascar rank is (usually) defined in terms of {\displaystyle \downarrow }.

In a general stable theory, there is still a way to define {\displaystyle \downarrow } using ranks. If {\displaystyle \Delta } is a finite set of formulas, and {\displaystyle \Sigma (x)} is a finite partial type, the local {\displaystyle \Delta }-rank {\displaystyle R(\Sigma (x);\Delta ;\omega )} is defined to be the Cantor-Bendixson rank of the space of {\displaystyle \Delta }-types over {\displaystyle \mathbb {U} } which are consistent with {\displaystyle \Sigma (x)}. If {\displaystyle \Sigma (x)} is an arbitrary partial type, {\displaystyle R(\Sigma (x);\Delta ;\omega )} is defined to be the minimum of {\displaystyle R(\Sigma _{0}(x);\Delta ;\omega )}, for {\displaystyle \Sigma _{0}(x)} a finite subtype of {\displaystyle \Sigma (x)}. In a stable theory, {\displaystyle R(\Sigma (x);\Delta ;\omega )<\infty } always holds. If {\displaystyle p(x)} is a type extending {\displaystyle q(x)} (complete types over different sets), then it turns out that {\displaystyle p} is a non-forking extension of {\displaystyle q} if and only if {\displaystyle R(p;\Delta ;\omega )=R(q;\Delta ;\omega )} for every finite set of formulas {\displaystyle \Delta }. ::: ::: :::