# Forcing (mathematics)

For the use of forcing in recursion theory, see Forcing (recursion theory).

In the mathematical discipline of set theory, forcing is a technique discovered by Paul Cohen for proving consistency and independence results. It was first used, in 1963, to prove the independence of the Axiom of Choice and the Continuum Hypothesis from Zermelo–Fraenkel set theory. Forcing was considerably reworked and simplified in the following years, and has since served as a powerful technique, both in set theory and in areas of mathematical logic such as recursion theory.

Descriptive set theory uses the notion of forcing from both recursion theory and set theory. Forcing has also been used in model theory, but it is common in model theory to define genericity directly without mention of forcing.

## Intuition

Forcing is equivalent to the method of Boolean-valued models, which some feel is conceptually more natural and intuitive, but usually much more difficult to apply.

Intuitively, forcing consists of expanding the set theoretical universe ${\displaystyle V}$ to a larger universe ${\displaystyle V^{*}}$. In this bigger universe, for example, one might have lots of new subsets of ${\displaystyle \omega }$ ${\displaystyle =\{0,1,2,\ldots \}}$ that were not there in the old universe, and thereby violate the continuum hypothesis. While impossible on the face of it, this is just another version of Cantor's paradox about infinity. In principle, one could consider

${\displaystyle V^{*}=V\times \{0,1\}}$,

identify ${\displaystyle x\in V}$ with ${\displaystyle (x,0)}$, and then introduce an expanded membership relation involving “new” sets of the form ${\displaystyle (x,1)}$. Forcing is a more elaborate version of this idea, reducing the expansion to the existence of one new set, and allowing for fine control over the properties of the expanded universe.

Cohen’s original technique, now called ramified forcing, is slightly different from the unramified forcing expounded here.

## Forcing Posets

A forcing poset is an ordered triple, ${\displaystyle (\mathbb {P} ,\leq ,\mathbf {1} )}$, where ${\displaystyle \leq }$ is a preorder on ${\displaystyle \mathbb {P} }$ that satisfies following splitting condition:

• For each ${\displaystyle p\in \mathbb {P} }$, there are ${\displaystyle q,r\in \mathbb {P} }$ such that ${\displaystyle q,r\leq p}$, with no ${\displaystyle s\in \mathbb {P} }$ such that ${\displaystyle s\leq q,r}$. The largest element of ${\displaystyle \mathbb {P} }$ is ${\displaystyle \mathbf {1} }$, that is, ${\displaystyle p\leq \mathbf {1} }$ for all ${\displaystyle p\in \mathbb {P} }$. Members of ${\displaystyle \mathbb {P} }$ are called forcing conditions or just conditions. One reads ${\displaystyle p\leq q}$ as ${\displaystyle p}$ is stronger than ${\displaystyle q}$. Intuitively, the “smaller” condition provides “more” information, just as the smaller interval ${\displaystyle [3.1415926,3.1415927]}$ provides more information about the number ${\displaystyle \pi }$ than the interval ${\displaystyle [3.1,3.2]}$ does.

There are various conventions in use. Some authors require ${\displaystyle \leq }$ to also be antisymmetric, so that the relation is a partial order. Some use the term partial order anyway, conflicting with standard terminology, while some use the term preorder. The largest element can be dispensed with. The reverse ordering is also used, most notably by Saharon Shelah and his co-authors.

### ${\displaystyle \mathbb {P} }$-Names

Associated with a forcing poset ${\displaystyle \mathbb {P} }$ is the class ${\displaystyle V^{(\mathbb {P} )}}$ of ${\displaystyle \mathbb {P} }$-names. A ${\displaystyle \mathbb {P} }$-name is a set ${\displaystyle A}$ of the form

${\displaystyle A\subseteq \{(u,p)\mid u~{\text{is a}}~\mathbb {P} {\text{-name and}}~p\in \mathbb {P} \}.}$

This is actually a definition by transfinite recursion. More precisely, one first uses transfinite recursion to define the following hierarchy:

{\displaystyle {\begin{aligned}\operatorname {Name} (\varnothing )&=\varnothing ;\\\operatorname {Name} (\alpha +1)&={\mathcal {P}}(\operatorname {Name} (\alpha )\times \mathbb {P} ),~{\text{where}}~{\mathcal {P}}~{\text{denotes the power-set operator}};\\\operatorname {Name} (\lambda )&=\bigcup \{\operatorname {Name} (\alpha )\mid \alpha <\lambda \},~{\text{if}}~\lambda ~{\text{is a limit ordinal}}.\end{aligned}}}

Then the class of ${\displaystyle \mathbb {P} }$-names is defined as

${\displaystyle V^{(\mathbb {P} )}=\bigcup \{\operatorname {Name} (\alpha )~|~\alpha ~{\text{is an ordinal}}\}.}$

The ${\displaystyle \mathbb {P} }$-names are, in fact, an expansion of the universe. Given ${\displaystyle x\in V}$, one defines ${\displaystyle {\check {x}}}$ to be the ${\displaystyle \mathbb {P} }$-name

${\displaystyle {\check {x}}=\{({\check {y}},\mathbf {1} )\mid y\in x\}.}$

Again, this is really a definition by transfinite recursion.

### Interpretation

Given any subset ${\displaystyle G}$ of ${\displaystyle \mathbb {P} }$, one next defines the interpretation or valuation map from ${\displaystyle \mathbb {P} }$-names by

${\displaystyle \operatorname {val} (u,G)=\{\operatorname {val} (v,G)\mid \exists p\in G:~(v,p)\in u\}.}$

This is again a definition by transfinite recursion. Note that if ${\displaystyle \mathbf {1} \in G}$, then ${\displaystyle \operatorname {val} ({\check {x}},G)=x}$. One then defines

${\displaystyle {\underline {G}}=\{({\check {p}},p)\mid p\in \mathbb {P} \}}$

so that ${\displaystyle \operatorname {val} ({\underline {G}},G)=G}$.

### Example

A good example of a forcing poset is ${\displaystyle (\operatorname {Bor} (I),\subseteq ,I)}$, where ${\displaystyle I=[0,1]}$ and ${\displaystyle \operatorname {Bor} (I)}$ is the collection of Borel subsets of ${\displaystyle I}$ having non-zero Lebesgue measure. In this case, one can talk about the conditions as being probabilities, and a ${\displaystyle \operatorname {Bor} (I)}$-name assigns membership in a probabilistic sense. Due to the ready intuition this example can provide, probabilistic language is sometimes used with other forcing posets.

## Countable Transitive Models and Generic Filters

The key step in forcing is, given a ${\displaystyle {\mathsf {ZFC}}}$ universe ${\displaystyle V}$, to find an appropriate object ${\displaystyle G}$ not in ${\displaystyle V}$. The resulting class of all interpretations of ${\displaystyle \mathbb {P} }$-names will turn out to be a model of ${\displaystyle {\mathsf {ZFC}}}$ that properly extending the original ${\displaystyle V}$ (since ${\displaystyle G\notin V}$).

Instead of working with ${\displaystyle V}$, one considers a countable transitive model ${\displaystyle M}$ with ${\displaystyle (\mathbb {P} ,\leq ,\mathbf {1} )\in M}$. By “model”, we mean a model of set theory, either of all of ${\displaystyle {\mathsf {ZFC}}}$, or a model of a large but finite subset of ${\displaystyle {\mathsf {ZFC}}}$, or some variant thereof. “Transitivity” means that if ${\displaystyle x\in y\in M}$, then ${\displaystyle x\in M}$. The Mostowski Collapsing Theorem says that this can be assumed if the membership relation is well-founded. The effect of transitivity is that membership and other elementary notions can be handled intuitively. Countability of the model relies on the Löwenheim-Skolem Theorem.

As ${\displaystyle M}$ is a set, there are sets not in ${\displaystyle M}$ – this follows from Russell’s Paradox. The appropriate set ${\displaystyle G}$ to pick and adjoin to ${\displaystyle M}$ is a generic filter on ${\displaystyle \mathbb {P} }$. The “filter” condition means that

• ${\displaystyle G\subseteq \mathbb {P} }$;
• ${\displaystyle \mathbf {1} \in G}$;
• if ${\displaystyle p\geq q\in G}$, then ${\displaystyle p\in G}$;
• if ${\displaystyle p,q\in G}$, then there exists an ${\displaystyle r\in G}$ such that ${\displaystyle r\leq p,q}$.

For ${\displaystyle G}$ to be “generic” means:

• If ${\displaystyle D\in M}$ is a “dense” subset of ${\displaystyle \mathbb {P} }$ (that is, for each ${\displaystyle p\in \mathbb {P} }$, there exists a ${\displaystyle q\in D}$ such that ${\displaystyle q\leq p}$), then ${\displaystyle G\cap D\neq \varnothing }$.

The existence of a generic filter ${\displaystyle G}$ follows from the Rasiowa-Sikorski Lemma. In fact, slightly more is true: Given a condition ${\displaystyle p\in \mathbb {P} }$, one can find a generic filter ${\displaystyle G}$ such that ${\displaystyle p\in G}$. Due to the splitting condition, if ${\displaystyle G}$ is a filter, then ${\displaystyle \mathbb {P} \setminus G}$ is dense. If ${\displaystyle G\in M}$, then ${\displaystyle \mathbb {P} \setminus G\in M}$ because ${\displaystyle M}$ is a model of ${\displaystyle {\mathsf {ZFC}}}$. For this reason, a generic filter is never in ${\displaystyle M}$.

## Forcing

Given a generic filter ${\displaystyle G\subseteq \mathbb {P} }$, one proceeds as follows. The subclass of ${\displaystyle \mathbb {P} }$-names in ${\displaystyle M}$ is denoted ${\displaystyle M^{(\mathbb {P} )}}$. Let ${\displaystyle M[G]=\left\{\operatorname {val} (u,G)\mid u\in M^{(\mathbb {P} )}\right\}}$. To reduce the study of the set theory of ${\displaystyle M[G]}$ to that of ${\displaystyle M}$, one works with the “forcing language”, which is built up like ordinary first-order logic, with membership as the binary relation and all the ${\displaystyle \mathbb {P} }$-names as constants.

Define ${\displaystyle p\Vdash _{M,\mathbb {P} }\varphi (u_{1},\ldots ,u_{n})}$ (to be read as “${\displaystyle p}$ forces ${\displaystyle \varphi }$ in the model ${\displaystyle M}$ with poset ${\displaystyle \mathbb {P} }$”), where ${\displaystyle p}$ is a condition, ${\displaystyle \varphi }$ is a formula in the forcing language, and the ${\displaystyle u_{i}}$’s are ${\displaystyle \mathbb {P} }$-names, to mean that if ${\displaystyle G}$ is a generic filter containing ${\displaystyle p}$, then ${\displaystyle M[G]\models \varphi (\operatorname {val} (u_{1},G),\ldots ,\operatorname {val} (u_{n},G))}$. The special case ${\displaystyle \mathbf {1} \Vdash _{M,\mathbb {P} }\varphi }$ is often written as “${\displaystyle \mathbb {P} \Vdash _{M,\mathbb {P} }\varphi }$” or simply “${\displaystyle \Vdash _{M,\mathbb {P} }\varphi }$”. Such statements are true in ${\displaystyle M[G]}$, no matter what ${\displaystyle G}$ is.

What is important is that this external definition of the forcing relation ${\displaystyle p\Vdash _{M,\mathbb {P} }\varphi }$ is equivalent to an internal definition within ${\displaystyle M}$, defined by transfinite induction over the ${\displaystyle \mathbb {P} }$-names on instances of ${\displaystyle u\in v}$ and ${\displaystyle u=v}$, and then by ordinary induction over the complexity of formulas. This has the effect that all the properties of ${\displaystyle M[G]}$ are really properties of ${\displaystyle M}$, and the verification of ${\displaystyle {\mathsf {ZFC}}}$ in ${\displaystyle M[G]}$ becomes straightforward. This is usually summarized as the following three key properties:

• Truth: ${\displaystyle M[G]\models \varphi (\operatorname {val} (u_{1},G),\ldots ,\operatorname {val} (u_{n},G))}$ if and only if it is forced by ${\displaystyle G}$, that is, for some condition ${\displaystyle p\in G}$, we have ${\displaystyle p\Vdash _{M,\mathbb {P} }\varphi (u_{1},\ldots ,u_{n})}$.
• Definability: The statement “${\displaystyle p\Vdash _{M,\mathbb {P} }\varphi (u_{1},\ldots ,u_{n})}$” is definable in ${\displaystyle M}$.
• Coherence: If ${\displaystyle p\Vdash _{M,\mathbb {P} }\varphi (u_{1},\ldots ,u_{n})}$ and ${\displaystyle q\leq p}$, then ${\displaystyle q\Vdash _{M,\mathbb {P} }\varphi (u_{1},\ldots ,u_{n})}$.

We define the forcing relation ${\displaystyle \Vdash _{M,\mathbb {P} }}$ in ${\displaystyle M}$ by induction on the complexity of formulas, in which we first define the relation for atomic formulas by ${\displaystyle \in }$-induction and then define it for arbitrary formulas by induction on their complexity.

1. ${\displaystyle p\Vdash _{M,\mathbb {P} }a\in b}$ if and only if ${\displaystyle (\forall q\in \mathbb {P} )\!\left[(q\leq p)\Rightarrow (\exists r\in \mathbb {P} )\!\left((r\leq q)\land \left(\exists c\in M^{(\mathbb {P} )}\right)\!(\exists s\in \mathbb {P} )(((c,s)\in b)\land (r\leq s)\land (r\Vdash _{M,\mathbb {P} }a=c))\right)\right]}$.

2. ${\displaystyle p\Vdash _{M,\mathbb {P} }a=b}$ if and only if ${\displaystyle (\forall q\in \mathbb {P} )\!\left[(q\leq p)\Rightarrow \left(\forall c\in M^{(\mathbb {P} )}\right)\!((q\Vdash _{M,\mathbb {P} }c\in a)\Leftrightarrow (q\Vdash _{M,\mathbb {P} }c\in b))\right]}$.

3. ${\displaystyle p\Vdash _{M,\mathbb {P} }\lnot \phi }$ if and only if ${\displaystyle \lnot (\exists q\in \mathbb {P} )[(q\leq p)\land (q\Vdash _{M,\mathbb {P} }\phi )]}$.

4. ${\displaystyle p\Vdash _{M,\mathbb {P} }(\phi \land \psi )}$ if and only if ${\displaystyle (p\Vdash _{M,\mathbb {P} }\phi )\land (p\Vdash _{M,\mathbb {P} }\psi )}$.

5. ${\displaystyle p\Vdash _{M,\mathbb {P} }(\forall x)\phi (x)}$ if and only if ${\displaystyle \left(\forall x\in M^{(\mathbb {P} )}\right)\!(p\Vdash _{M,\mathbb {P} }\phi (x))}$.

## Consistency

The discussion above can be summarized by the fundamental consistency result that, given a forcing poset ${\displaystyle \mathbb {P} }$, we may assume the existence of a generic filter ${\displaystyle G}$, not belonging to the universe ${\displaystyle V}$, such that ${\displaystyle V[G]}$ is again a set-theoretic universe that models ${\displaystyle {\mathsf {ZFC}}}$. Furthermore, all truths in ${\displaystyle V[G]}$ may be reduced to truths in ${\displaystyle V}$ involving the forcing relation.

Both styles, adjoining ${\displaystyle G}$ to either a countable transitive model ${\displaystyle M}$ or the whole universe ${\displaystyle V}$, are commonly used. Less commonly seen is the approach using the “internal” definition of forcing, in which no mention of set or class models is made. This was Cohen’s original method, and in one elaboration, it becomes the method of Boolean-valued analysis.

## Cohen Forcing

The simplest nontrivial forcing poset is ${\displaystyle (\operatorname {Fin} (\omega ,2),\supseteq ,0)}$, the finite partial functions from ${\displaystyle \omega }$ to ${\displaystyle 2~{\stackrel {\text{df}}{=}}~\{0,1\}}$ under reverse inclusion. That is, a condition ${\displaystyle p}$ is essentially two disjoint finite subsets ${\displaystyle {p^{-1}}[1]}$ and ${\displaystyle {p^{-1}}[0]}$ of ${\displaystyle \omega }$, to be thought of as the “yes” and “no” parts of ${\displaystyle p}$, with no information provided on values outside the domain of ${\displaystyle p}$. “${\displaystyle q}$ is stronger than ${\displaystyle p}$” means that ${\displaystyle q\supseteq p}$, in other words, the “yes” and “no” parts of ${\displaystyle q}$ are supersets of the “yes” and “no” parts of ${\displaystyle p}$, and in that sense, provide more information.

Let ${\displaystyle G}$ be a generic filter for this poset. If ${\displaystyle p}$ and ${\displaystyle q}$ are both in ${\displaystyle G}$, then ${\displaystyle p\cup q}$ is a condition because ${\displaystyle G}$ is a filter. This means that ${\displaystyle g=\bigcup G}$ is a well-defined partial function from ${\displaystyle \omega }$ to ${\displaystyle 2}$ because any two conditions in ${\displaystyle G}$ agree on their common domain.

In fact, ${\displaystyle g}$ is a total function. Given ${\displaystyle n\in \omega }$, let ${\displaystyle D_{n}=\{p\mid p(n)~{\text{is defined}}\}}$. Then ${\displaystyle D_{n}}$ is dense. (Given any ${\displaystyle p}$, if ${\displaystyle n}$ is not in ${\displaystyle p}$’s domain, adjoin a value for ${\displaystyle n}$ — the result is in ${\displaystyle D_{n}}$.) A condition ${\displaystyle p\in G\cap D_{n}}$ has ${\displaystyle n}$ in its domain, and since ${\displaystyle p\subseteq g}$, we find that ${\displaystyle g(n)}$ is defined.

Let ${\displaystyle X={g^{-1}}[1]}$, the set of all “yes” members of the generic conditions. It is possible to give a name for ${\displaystyle X}$ directly. Let ${\displaystyle {\underline {X}}=\{({\check {n}},p)\mid p(n)=1\}}$. Then ${\displaystyle \operatorname {val} ({\underline {X}},G)=X}$. Now suppose that ${\displaystyle A\subseteq \omega }$ in ${\displaystyle V}$. We claim that ${\displaystyle X\neq A}$. Let ${\displaystyle D_{A}=\{p\mid (\exists n)(n\in \operatorname {Dom} (p)\land (p(n)=1\iff n\notin A))\}}$. Then ${\displaystyle D_{A}}$ is dense. (Given any ${\displaystyle p}$, if ${\displaystyle n}$ is not in ${\displaystyle p}$’s domain, adjoin a value for ${\displaystyle n}$ contrary to the status of “${\displaystyle n\in A}$”.) Then any ${\displaystyle p\in G\cap D_{A}}$ witnesses ${\displaystyle X\neq A}$. To summarize, ${\displaystyle X}$ is a “new” subset of ${\displaystyle \omega }$, necessarily infinite.

Replacing ${\displaystyle \omega }$ with ${\displaystyle \omega \times \omega _{2}}$, that is, consider instead finite partial functions whose inputs are of the form ${\displaystyle (n,\alpha )}$, with ${\displaystyle n<\omega }$ and ${\displaystyle \alpha <\omega _{2}}$, and whose outputs are ${\displaystyle 0}$ or ${\displaystyle 1}$, one gets ${\displaystyle \omega _{2}}$ new subsets of ${\displaystyle \omega }$. They are all distinct, by a density argument: Given ${\displaystyle \alpha <\beta <\omega _{2}}$, let ${\displaystyle D_{\alpha ,\beta }=\{p\mid (\exists n)(p(n,\alpha )\neq p(n,\beta ))\}}$, then each ${\displaystyle D_{\alpha ,\beta }}$ is dense, and a generic condition in it proves that the αth new set disagrees somewhere with the ${\displaystyle \beta }$-th new set.

This is not yet the falsification of the continuum hypothesis. One must prove that no new maps have been introduced which map ${\displaystyle \omega }$ onto ${\displaystyle \omega _{1}}$, or ${\displaystyle \omega _{1}}$ onto ${\displaystyle \omega _{2}}$. For example, if one considers instead ${\displaystyle \operatorname {Fin} (\omega ,\omega _{1})}$, finite partial functions from ${\displaystyle \omega }$ to ${\displaystyle \omega _{1}}$, the first uncountable ordinal, one gets in ${\displaystyle V[G]}$ a bijection from ${\displaystyle \omega }$ to ${\displaystyle \omega _{1}}$. In other words, ${\displaystyle \omega _{1}}$ has collapsed, and in the forcing extension, is a countable ordinal.

The last step in showing the independence of the continuum hypothesis, then, is to show that Cohen forcing does not collapse cardinals. For this, a sufficient combinatorial property is that all of the antichains of this poset are countable.

## The Countable Chain Condition

An antichain ${\displaystyle A}$ of ${\displaystyle p}$ is a subset such that if ${\displaystyle p,q\in A}$, then ${\displaystyle p}$ and ${\displaystyle q}$ are incompatible (written ${\displaystyle p\perp q}$), meaning there is no ${\displaystyle r}$ in ${\displaystyle \mathbb {P} }$ such that ${\displaystyle r\leq p}$ and ${\displaystyle r\leq q}$. In the example on Borel sets, incompatibility means that ${\displaystyle p\cap q}$ has zero measure. In the example on finite partial functions, incompatibility means that ${\displaystyle p\cup q}$ is not a function, in other words, ${\displaystyle p}$ and ${\displaystyle q}$ assign different values to some domain input.

${\displaystyle \mathbb {P} }$ satisfies the countable chain condition (c.c.c.) if and only if every antichain in ${\displaystyle \mathbb {P} }$ is countable. (The name, which is obviously inappropriate, is a holdover from older terminology. Some mathematicians write “c.a.c.” for “countable antichain condition”.)

It is easy to see that ${\displaystyle \operatorname {Bor} (I)}$ satisfies the c.c.c. because the measures add up to at most ${\displaystyle 1}$. Also, ${\displaystyle \operatorname {Fin} (E,2)}$ is c.c.c., but the proof is more difficult.

Given an uncountable subfamily ${\displaystyle W\subseteq \operatorname {Fin} (E,2)}$, shrink ${\displaystyle W}$ to an uncountable subfamily ${\displaystyle W_{0}}$ of sets of size ${\displaystyle n}$, for some ${\displaystyle n<\omega }$. If ${\displaystyle p(e_{1})=b_{1}}$ for uncountably many ${\displaystyle p\in W_{0}}$, shrink this to an uncountable subfamily ${\displaystyle W_{1}}$ and repeat, getting a finite set ${\displaystyle \{(e_{1},b_{1}),\ldots ,(e_{k},b_{k})\}}$ and an uncountable family ${\displaystyle W_{k}}$ of incompatible conditions of size ${\displaystyle n-k}$ such that every ${\displaystyle e}$ is in ${\displaystyle \operatorname {Dom} (p)}$ for at most countable many ${\displaystyle p\in W_{k}}$. Now, pick an arbitrary ${\displaystyle p\in W_{k}}$, and pick from ${\displaystyle W_{k}}$ any ${\displaystyle q}$ that is not one of the countably many members that have a domain member in common with ${\displaystyle p}$. Then ${\displaystyle p\cup \{(e_{1},b_{1}),\ldots ,(e_{k},b_{k})\}}$ and ${\displaystyle q\cup \{(e_{1},b_{1}),\ldots ,(e_{k},b_{k})\}}$ are compatible, so ${\displaystyle W}$ is not an antichain. In other words, ${\displaystyle \operatorname {Fin} (E,2)}$-antichains are countable.

The importance of antichains in forcing is that for most purposes, dense sets and maximal antichains are equivalent. A maximal antichain ${\displaystyle A}$ is one that cannot be extended to a larger antichain. This means that every element ${\displaystyle p\in \mathbb {P} }$ is compatible with some member of ${\displaystyle A}$. The existence of a maximal antichain follows from Zorn’s Lemma. Given a maximal antichain ${\displaystyle A}$, let ${\displaystyle D=\{p\in \mathbb {P} \mid (\exists q\in A)(p\leq q)}$. Then ${\displaystyle D}$ is dense, and ${\displaystyle G\cap D\neq \varnothing }$ if and only if ${\displaystyle G\cap A\neq \varnothing }$. Conversely, given a dense set ${\displaystyle D}$, Zorn’s Lemma shows that there exists a maximal antichain ${\displaystyle A\subseteq D}$, and then ${\displaystyle G\cap D\neq \varnothing }$ if and only if ${\displaystyle G\cap A\neq \varnothing }$.

Assume that ${\displaystyle \mathbb {P} }$ is c.c.c. Given ${\displaystyle x,y\in V}$, with ${\displaystyle f:x\to y}$ a function in ${\displaystyle V[G]}$, one can approximate ${\displaystyle f}$ inside ${\displaystyle V}$ as follows. Let ${\displaystyle u}$ be a name for ${\displaystyle f}$ (by the definition of ${\displaystyle V[G]}$) and let ${\displaystyle p}$ be a condition that forces ${\displaystyle u}$ to be a function from ${\displaystyle x}$ to ${\displaystyle y}$. Define a function ${\displaystyle F}$, whose domain is ${\displaystyle x}$, by ${\displaystyle F(a)~{\stackrel {\text{df}}{=}}~\{b\mid (\exists q\in \mathbb {P} )[(q\leq p)\land (q\Vdash ~u({\check {a}})={\check {b}})]\}}$. By the definability of forcing, this definition makes sense within ${\displaystyle V}$. By the coherence of forcing, different ${\displaystyle b}$’s come from incompatible ${\displaystyle p}$’s. By c.c.c., ${\displaystyle F(a)}$ is countable.

In summary, ${\displaystyle f}$ is unknown in ${\displaystyle V}$ as it depends on ${\displaystyle G}$, but it is not wildly unknown for a c.c.c.-forcing. One can identify a countable set of guesses for what the value of ${\displaystyle f}$ is at any input, independent of ${\displaystyle G}$.

This has the following very important consequence. If in ${\displaystyle V[G]}$, ${\displaystyle f:\alpha \to \beta }$ is a surjection from one infinite ordinal onto another, then there is a surjection ${\displaystyle g:\omega \times \alpha \to \beta }$ in ${\displaystyle V}$, and consequently, a surjection ${\displaystyle h:\alpha \to \beta }$ in ${\displaystyle V}$. In particular, cardinals cannot collapse. The conclusion is that ${\displaystyle 2^{\aleph _{0}}\geq \aleph _{2}}$ in ${\displaystyle V[G]}$.

## Easton Forcing

The exact value of the continuum in the above Cohen model, and variants like ${\displaystyle \operatorname {Fin} (\omega \times \kappa ,2)}$ for cardinals ${\displaystyle \kappa }$ in general, was worked out by Robert M. Solovay, who also worked out how to violate ${\displaystyle {\mathsf {GCH}}}$ (the Generalized Continuum Hypothesis), for regular cardinals only, a finite number of times. For example, in the above Cohen model, if ${\displaystyle {\mathsf {CH}}}$ holds in ${\displaystyle V}$, then ${\displaystyle 2^{\aleph _{0}}=\aleph _{2}}$ holds in ${\displaystyle V[G]}$.

W. B. Easton worked out the infinite and proper class version of violating the ${\displaystyle {\mathsf {GCH}}}$ for regular cardinals, basically showing that the known restrictions, (monotonicity, Cantor’s Theorem and König’s Theorem), were the only ${\displaystyle {\mathsf {ZFC}}}$-provable restrictions (see Easton’s Theorem).

Easton’s work was notable in that it involved forcing with a proper class of conditions. In general, the method of forcing with a proper class of conditions fails to give a model of ${\displaystyle {\mathsf {ZFC}}}$. For example, forcing with ${\displaystyle \operatorname {Fin} (\omega \times \mathbf {On} ,2)}$, where ${\displaystyle \mathbf {On} }$ is the proper class of all ordinals, makes the continuum a proper class. On the other hand, forcing with ${\displaystyle \operatorname {Fin} (\omega ,\mathbf {On} )}$ introduces a countable enumeration of the ordinals. In both cases, the resulting ${\displaystyle V[G]}$ is visibly not a model of ${\displaystyle {\mathsf {ZFC}}}$.

At one time, it was thought that more sophisticated forcing would also allow an arbitrary variation in the powers of singular cardinals. However, this has turned out to be a difficult, subtle and even surprising problem, with several more restrictions provable in ${\displaystyle {\mathsf {ZFC}}}$ and with the forcing models depending on the consistency of various large-cardinal properties. Many open problems remain.

## Random Reals

Main article: random algebra

In the Borel sets ( Bor(I), ⊆, I ) example, the generic filter converges to a real number r, called a random real. A name for the decimal expansion of r (in the sense of the canonical set of decimal intervals that converge to r) can be given by letting r = { ( Eˇ, E ) : E = [ k⋅10n, (k + 1)⋅10n ], 0 ≤ k < 10n }. This is, in some sense, just a subname of G.

To recover G from r, one takes those Borel subsets of I that "contain" r. Since the forcing poset is in V, but r is not in V, this containment is actually impossible. But there is a natural sense in which the interval [0.5, 0.6] in V "contains" a random real whose decimal expansion begins 0.5. This is formalized by the notion of "Borel code".

Every Borel set can, nonuniquely, be built up, starting from intervals with rational endpoints and applying the operations of complement and countable unions, a countable number of times. The record of such a construction is called a Borel code. Given a Borel set B in V, one recovers a Borel code, and then applies the same construction sequence in V[G], getting a Borel set B*. One can prove that one gets the same set independent of the construction of B, and that basic properties are preserved. For example, if BC, then B*⊆C*. If B has measure zero, then B* has measure zero.

So given r, a random real, one can show that G = { B (in V) : rB* (in V[G]) }. Because of the mutual interdefinability between r and G, one generally writes V[r] for V[G].

A different interpretation of reals in V[G] was provided by Dana Scott. Rational numbers in V[G] have names that correspond to countably many distinct rational values assigned to a maximal antichain of Borel sets, in other words, a certain rational-valued function on I = [0,1]. Real numbers in V[G] then correspond to Dedekind cuts of such functions, that is, measurable functions.

## Boolean-Valued Models

Main article: Boolean-valued model

Perhaps more clearly, the method can be explained in terms of Boolean-valued models. In these, any statement is assigned a truth value from some complete atomless Boolean algebra, rather than just a true/false value. Then an ultrafilter is picked in this Boolean algebra, which assigns values true/false to statements of our theory. The point is that the resulting theory has a model which contains this ultrafilter, which can be understood as a new model obtained by extending the old one with this ultrafilter. By picking a Boolean-valued model in an appropriate way, we can get a model that has the desired property. In it, only statements which must be true (are "forced" to be true) will be true, in a sense (since it has this extension/minimality property).

## Meta-Mathematical Explanation

In forcing, we usually seek to show that some sentence is consistent with ${\displaystyle {\mathsf {ZFC}}}$ (or optionally some extension of ${\displaystyle {\mathsf {ZFC}}}$). One way to interpret the argument is to assume that ${\displaystyle {\mathsf {ZFC}}}$ is consistent and then prove that ${\displaystyle {\mathsf {ZFC}}}$ combined with the new sentence is also consistent.

Each “condition” is a finite piece of information – the idea is that only finite pieces are relevant for consistency, since, by the Compactness Theorem, a theory is satisfiable if and only if every finite subset of its axioms is satisfiable. Then we can pick an infinite set of consistent conditions to extend our model. Therefore, assuming the consistency of ${\displaystyle {\mathsf {ZFC}}}$, we prove the consistency of ${\displaystyle {\mathsf {ZFC}}}$ extended by this infinite set.

## Logical Explanation

By Gödel’s Second Incompleteness Theorem, one cannot prove the consistency of any sufficiently strong formal theory, such as ${\displaystyle {\mathsf {ZFC}}}$, using only the axioms of the theory itself, unless the theory is inconsistent. Consequently, mathematicians do not attempt to prove the consistency of ${\displaystyle {\mathsf {ZFC}}}$ using only the axioms of ${\displaystyle {\mathsf {ZFC}}}$, or to prove that ${\displaystyle {\mathsf {ZFC}}+H}$ is consistent for any hypothesis ${\displaystyle H}$ using only ${\displaystyle {\mathsf {ZFC}}+H}$. For this reason, the aim of a consistency proof is to prove the consistency of ${\displaystyle {\mathsf {ZFC}}+H}$ relative to the consistency of ${\displaystyle {\mathsf {ZFC}}}$. Such problems are known as problems of relative consistency. In fact one proves

(*) ${\displaystyle {\mathsf {ZFC}}\vdash \operatorname {Con} ({\mathsf {ZFC}})\rightarrow \operatorname {Con} ({\mathsf {ZFC}}+H).}$

We will now give the general schema of relative consistency proofs. As any proof is finite, it uses only a finite number of axioms:

${\displaystyle {\mathsf {ZFC}}+\lnot \operatorname {Con} ({\mathsf {ZFC}}+H)\vdash (\exists T)(\operatorname {Fin} (T)\land T\subset {\mathsf {ZFC}}\land (T\vdash \lnot H)).}$

For any given proof, ${\displaystyle {\mathsf {ZFC}}}$ can verify the validity of this proof. This is provable by induction on the length of the proof.

${\displaystyle {\mathsf {ZFC}}\vdash (\forall T)((T\vdash \lnot H)\rightarrow ({\mathsf {ZFC}}\vdash (T\vdash \lnot H))).}$

Now, we obtain

${\displaystyle {\mathsf {ZFC}}+\lnot \operatorname {Con} ({\mathsf {ZFC}}+H)\vdash (\exists T)(\operatorname {Fin} (T)\land T\subset {\mathsf {ZFC}}\land ({\mathsf {ZFC}}\vdash (T\vdash \lnot H))).}$

If we prove the following,

(**) ${\displaystyle {\mathsf {ZFC}}\vdash (\forall T)(\operatorname {Fin} (T)\land T\subset {\mathsf {ZFC}}\rightarrow ({\mathsf {ZFC}}\vdash \operatorname {Con} (T+H)))}$,

we can conclude that

${\displaystyle {\mathsf {ZFC}}+\lnot \operatorname {Con} ({\mathsf {ZFC}}+H)\vdash (\exists T)(\operatorname {Fin} (T)\land T\subset {\mathsf {ZFC}}\land ({\mathsf {ZFC}}\vdash (T\vdash \lnot H))\land ({\mathsf {ZFC}}\vdash \operatorname {Con} (T+H)))}$,

which is equivalent to

${\displaystyle {\mathsf {ZFC}}+\lnot \operatorname {Con} ({\mathsf {ZFC}}+H)\vdash \lnot \operatorname {Con} ({\mathsf {ZFC}})}$,

which gives (*). The core of the relative consistency proof is proving (**). One has to construct a ${\displaystyle {\mathsf {ZFC}}}$ proof of ${\displaystyle \operatorname {Con} (T+H)}$ for any given finite subset ${\displaystyle T}$ of the ${\displaystyle {\mathsf {ZFC}}}$ axioms (by ${\displaystyle {\mathsf {ZFC}}}$ instruments of course). (No universal proof of ${\displaystyle \operatorname {Con} (T+H)}$ of course.)

In ${\displaystyle {\mathsf {ZFC}}}$, it is provable that for any condition ${\displaystyle p}$, the set of formulas (evaluated by names) forced by ${\displaystyle p}$ is deductively closed. Furthermore, for any ${\displaystyle {\mathsf {ZFC}}}$ axiom, ${\displaystyle {\mathsf {ZFC}}}$ proves that this axiom is forced by ${\displaystyle \mathbf {1} }$. Then it suffices to prove that there is at least one condition that forces ${\displaystyle H}$.

In the case of Boolean-valued forcing, the procedure is similar – one has to prove that the Boolean value of ${\displaystyle H}$ is not ${\displaystyle \mathbf {0} }$.

Another approach uses the Reflection Theorem. For any given finite set of ${\displaystyle {\mathsf {ZFC}}}$ axioms, there is a ${\displaystyle {\mathsf {ZFC}}}$ proof that this set of axioms has a countable transitive model. For any given finite set ${\displaystyle T}$ of ${\displaystyle {\mathsf {ZFC}}}$ axioms, there is a finite set ${\displaystyle T'}$ of ${\displaystyle {\mathsf {ZFC}}}$ axioms such that ${\displaystyle {\mathsf {ZFC}}}$ proves that if a countable transitive model ${\displaystyle M}$ satisfies ${\displaystyle T'}$, then ${\displaystyle M[G]}$ satisfies ${\displaystyle T}$. One has to prove that there is finite set ${\displaystyle T''}$ of ${\displaystyle {\mathsf {ZFC}}}$ axioms such that if a countable transitive model ${\displaystyle M}$ satisfies ${\displaystyle T''}$, then ${\displaystyle M[G]}$ satisfies the hypothesis ${\displaystyle H}$. Then, for any given finite set ${\displaystyle T}$ of ${\displaystyle {\mathsf {ZFC}}}$ axioms, ${\displaystyle {\mathsf {ZFC}}}$ proves ${\displaystyle \operatorname {Con} (T+H)}$.

Sometimes in (**), a stronger theory ${\displaystyle S}$ than ${\displaystyle {\mathsf {ZFC}}}$ is used for proving ${\displaystyle \operatorname {Con} (T+H)}$. Then we have proof of the consistency of ${\displaystyle {\mathsf {ZFC}}+H}$ relative to the consistency of ${\displaystyle S}$. Note that ${\displaystyle {\mathsf {ZFC}}\vdash \operatorname {Con} ({\mathsf {ZFC}})\leftrightarrow \operatorname {Con} ({\mathsf {ZFL}})}$, where ${\displaystyle {\mathsf {ZFL}}}$ is ${\displaystyle {\mathsf {ZF}}+V=L}$ (the Axiom of Constructibility).