观念
设有完备 Boole 代数 $\mathbb B$, 以及一个赋予某种命题逻辑句子真值的映射
$$
[\![-]\!]\colon \mathrm{Sen} \to \mathbb{B},
$$
考虑元素 $p\in \mathbb B\setminus \{\bot\}$, 称为条件;
- 在偏序关系下越小的条件就越强;
- 对于 $q\leq p$, 称 $q$ 为 $p$ 的扩展;
- 最大元 $\top$ 是空条件.
对任意句子 $\varphi\in\mathrm{Sen}$, 若
$$
p \leq [\![\varphi]\!]
$$
称 $p$ 力迫 (force) $\varphi$, 记为 $p \Vdash \varphi$.
那么有如下性质:
- $p \Vdash (\varphi \land \psi)$ 当且仅当 $p \Vdash \varphi$ 且 $p \Vdash \psi$;
- $p \Vdash (\varphi \lor \psi)$ 当且仅当对任意 $q\leq p$ 存在 $r\leq q$, 使得 $r\Vdash\varphi$ 或 $r\Vdash\psi$;
- $p \Vdash (\varphi \to \psi)$ 当且仅当对任意 $q\leq p$, 都有 $q\Vdash\varphi$ 蕴涵 $q\Vdash\psi$;
- $p\Vdash\top$ 永远成立; $p\Vdash\bot$ 永远不成立.
例
Cohen 与连续统假设
连续统假设说的是在 $\aleph_0$ 与 $2^{\aleph_0}$ 之间不存在一个基数. Cohen 用力迫法构造了一个 ZFC 的模型不满足连续统假设, 从而证明连续统假设独立于 ZFC.
我们称 $2^{\omega}$ 的元素为实数.
这个构造的关键可以理解为: 构造任意多两两不同的实数.
设 $V$ 是 ZFC 的一个模型. 待定一个完备 Boole 代数 $\mathbb B$. 递归定义 $V^{\mathbb B}$ (它将是意象 $\mathsf{Sh}(\mathbb B)$ 中 ZFC 的模型):
- $V^{\mathbb B}$ 中的一个元素就是 $V^{\mathbb B}$ 的子集到 $\mathbb B$ 的一个映射.
直观上, $V^{\mathbb B}$ 的一个元素 $U\to \mathbb B$ 是一个 “每个元素在一定条件下属于 $U$” 的集合. 一个元素映射到 $\top$ 说明它确定属于这个集合; 映射到 $p$ 说明它在条件 $p$ 之下属于这个集合.
对于 $V$ 的元素 $v$ 递归定义 $\check{v}\in V^{\mathbb B}$, 从而 $V$ 典范地嵌入 $V^{\mathbb B}$:
$$
\check{v} = \{(\check{w},\top)\mid w\in v\}.
$$
这也可理解为常值层函子 $\Delta\colon \mathsf{Set} \to \mathsf{Sh}(\mathbb B)$ 对 $V$ 的作用.
我们可以定义一个赋予 ZFC 的句子在 $\mathbb B$ 中的值的映射
$$
[\![-]\!]\colon \mathrm{Sen}(\mathrm{ZFC}) \to \mathbb B,
$$
- $[\![ u\in v ]\!] := \bigvee_{w} (v(w) \land [\![ u = w ]\!])$;
- $[\![ u = v ]\!] := \bigwedge_{w} (v(w) \Rightarrow [\![ w \in u ]\!])\land ( u(w)\Rightarrow [\![ w\in v ]\!])$;
- …
令 $\mathbb P = \operatorname{Fn}(\omega,2)$ 为 $\omega$ 的有限子集到 $2=\{\bot,\top\}$ 的映射构成的集合, 直观上一个部分映射含有的信息越多, 其在偏序中越小. 令 $\mathbb B = \operatorname{RO}(2^{\omega})$, 那么有稠密嵌入
$$
\mathbb P\to \mathbb B \setminus \{\bot\},
p\mapsto (\downarrow p);
$$
换言之, $\mathbb B$ 是 $\mathbb P$ 的 Boole 完备化.
令实数
$$
c := \{(\check{n},b_n)\colon n\in\omega\}\in V^{\mathbb B},
$$
其中
$$
b_n := \{x\in 2^\omega\colon x(n) = 1\}.
$$
那么
$$
[\![ \check{n} \in c]\!] = b_n,
$$
对于 $p\in\mathbb P$,
- $p \Vdash (\check{n}\in c)$ 当且仅当 $(\downarrow p)\leq b_n$, 即 $p\in b_n$, 即 $p(n) = 1$.
- $p \Vdash (\check{n}\notin c)$ 当且仅当 $p(n) = 0$.
在上面将 $\omega$ 改成 $\kappa\times\omega$, 那么就有一族 $\kappa$ 个对象 $c_\alpha$, $b_{n,\alpha}$ ($\alpha < \kappa$). 我们发现 $c_\alpha$ 是两两不同的实数. 具体地, 对任意条件 $p$, 总可以加入更多条件得到 $q \leq p$, 使得
$$
q \Vdash c_\alpha \neq c_\beta.
$$
取 $\kappa$ 为一个巨大的基数, 例如 $\omega_2$, 就得到了巨多的实数.