一階論理の証明体系

同義語:一階述語論理の証明体系証明体系演繹体系形式的証明proof system for first-order logicproof systemdeductive system

概要

一階論理の証明体系(proof system for first-order logic)とは、あらかじめ定めた論理公理と推論規則だけを使い、前提の集合 $\Gamma$ から論理式 $\varphi$ への導出(有限の記号列の有限列)があることを $\Gamma\vdash\varphi$ と定める仕組みである。導出が正しいかどうかは意味を考えずに機械的に検査できる。代表的な Hilbert 流の体系は、公理図式の実例の全称化を公理とし、前件肯定だけを規則とする。$\Gamma\vdash\varphi$ なら $\Gamma\models\varphi$(健全性)、文については逆も成り立つ(Gödel の完全性定理)。自然演繹やシーケント計算など流儀は違っても、文の間の証明可能性は同じになる。

$$\newcommand{C}[0]{\mathbb{C}} \newcommand{div}[0]{\mathbin{÷}} \newcommand{N}[0]{\mathbb{N}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{R}[0]{\mathbb{R}} \newcommand{Z}[0]{\mathbb{Z}} $$

前提知識: 一階述語論理, 論理式, 命題論理

一階述語論理で「$\varphi$ が前提 $\Gamma$ から正しく導かれる」ことには、2 つの定め方がある。1 つは意味による定め方で、$\Gamma$ を満たすどの構造とどの割り当てのもとでも $\varphi$ が成り立つことをいい、$\Gamma\models\varphi$ と書く。これを確かめるには、原理的にはすべての構造を調べなければならない。もう 1 つは記号の操作による定め方で、あらかじめ決めた 公理 から出発し、決まった 推論規則 で記号列を書き換えていって、有限の手順で $\varphi$ に到達できることをいい、$\Gamma\vdash\varphi$ と書く。こちらは、与えられた記号列の並びが正しい導出になっているかどうかを、意味を一切考えずに機械的に検査できる。この 2 つ目の仕組みが 証明体系 である。
証明体系には、公理を多くして推論規則を前件肯定(modus ponens)だけにした Hilbert 流の体系、仮定を置いてあとで外す規則を並べた自然演繹、シーケントという形の式を操作するシーケント計算などがあり、見た目は大きく異なる。どれも $\Gamma\vdash\varphi$ から $\Gamma\models\varphi$ が従い(健全性)、逆も成り立つ(完全性。Gödelの完全性定理)ように作られている。本記事では、証明体系の一般的な定義を与えたうえで、代表として Hilbert 流の体系 $\mathbf H$ を 1 つ固定し、導出の例、導出可能性の基本性質、演繹定理と汎化定理、健全性定理を証明する。最後に、ほかの流儀の体系と比べる。

定義

言語と意味

一階言語 $L$ の項・論理式・自由変数・代入 $\varphi[t/x]$・代入可能性は 論理式 の記事の定義「論理式」「自由変数と文」「代入と代入可能性」による。ただし本記事では、結合子は $\lnot,\to$、量化記号は $\forall$ だけを使い、ほかは略記とする。
$$ \varphi\land\psi:=\lnot(\varphi\to\lnot\psi),\qquad\varphi\lor\psi:=(\lnot\varphi\to\psi),\qquad\exists x\,\varphi:=\lnot\forall x\,\lnot\varphi. $$
等号 $=$ は論理記号として $L$ に含める。構造 $\mathcal M$、割り当て $s$、充足関係 $\mathcal M\models\varphi[s]$ は 一階述語論理 の記事の定義「構造」「充足関係」による。上の略記は、そこでの $\land,\lor,\exists$ と同じ充足条件をもつ。

論理的帰結と妥当性(論理式の場合)

$\Gamma$ を論理式の集合、$\varphi$ を論理式とする。すべての $L$ 構造 $\mathcal M$ とすべての割り当て $s$ について、「$\Gamma$ のすべての元 $\gamma$ で $\mathcal M\models\gamma[s]$ ならば $\mathcal M\models\varphi[s]$」が成り立つとき、$\Gamma\models\varphi$ と書き、$\varphi$ は $\Gamma$ の 論理的帰結 であるという。$\emptyset\models\varphi$、すなわちすべての $\mathcal M,s$ で $\mathcal M\models\varphi[s]$ となる論理式を 妥当 であるといい、$\models\varphi$ と書く。

$\Gamma$ と $\varphi$ がすべて文のときは、文の真偽が割り当てによらないので(一階述語論理 の記事の系「文の真偽は割り当てによらない」)、これは同記事の定義「モデル・妥当性・論理的帰結」の $\Gamma\models\varphi$($\Gamma$ のどのモデルでも $\varphi$ が真)と一致する。自由変数をもつ論理式では、割り当てごとに比べるこの定義のほうが強い条件である。

証明体系

証明体系・導出・証明可能性

一階言語 $L$ の(公理と推論規則による)証明体系 とは、次の 2 つの組である。

  1. 論理公理 とよぶ論理式の集合 $\Lambda$。
  2. 有限個の 推論規則。各推論規則は、論理式の有限列 $(\psi_1,\dots,\psi_k)$(前提)と論理式 $\chi$(結論)の組の集合である。
    さらに、与えられた論理式が論理公理であるかどうか、与えられた組が推論規則に属するかどうかは、機械的な手順で判定できるものとする。
    論理式の集合 $\Gamma$ からの 導出(derivation、形式的証明)とは、論理式の有限列 $\varphi_1,\dots,\varphi_n$ で、各 $\varphi_i$ が次のいずれかを満たすものをいう。
  • $\varphi_i\in\Lambda$ である。
  • $\varphi_i\in\Gamma$ である(このとき $\varphi_i$ を 前提 という)。
  • ある推論規則について、$\varphi_i$ はそれ以前の行 $\varphi_{j_1},\dots,\varphi_{j_k}$($j_1,\dots,j_k< i$)を前提とする結論である。
    最後の行が $\varphi$ である $\Gamma$ からの導出があるとき、$\varphi$ は $\Gamma$ から 証明可能(導出可能)であるといい、$\Gamma\vdash\varphi$ と書く。$\emptyset\vdash\varphi$ を $\vdash\varphi$ と書き、$\varphi$ をこの体系の 定理 という。
健全性と完全性

証明体系が 健全 であるとは、論理式の集合 $\Gamma$ と論理式 $\varphi$ について、$\Gamma\vdash\varphi$ ならばつねに $\Gamma\models\varphi$ であることをいう。完全 であるとは、文の集合 $\Gamma$ と文 $\varphi$ について、$\Gamma\models\varphi$ ならばつねに $\Gamma\vdash\varphi$ であることをいう。

導出は有限の記号列の有限列であり、上の判定可能性の条件から、与えられた列が導出かどうかは各行を順に調べれば判定できる。意味の側の $\Gamma\models\varphi$ にはこのような検査方法がない。証明体系は、意味の関係 $\models$ を、有限で検査可能な対象 $\vdash$ で捉えようとするものである。自然演繹やシーケント計算では、導出は列ではなく論理式やシーケントの木であるが、「決まった形の出発点から決まった規則で有限回」という構造は同じである(「流儀の比較」の節)。

Hilbert 流の体系 $\mathbf H$

以下で主に扱う体系を定める。論理式 $\varphi$ と変数 $x_1,\dots,x_n$($n\ge0$)について、$\forall x_1\cdots\forall x_n\,\varphi$ を $\varphi$ の 全称化 という($n=0$ なら $\varphi$ 自身)。

体系 H

次の (A1)〜(A8) の形の論理式を 公理図式の実例 という。$\alpha,\beta,\gamma$ は任意の論理式、$x,y$ は任意の変数、$t$ は任意の項である。

  • (A1) $\alpha\to(\beta\to\alpha)$
  • (A2) $(\alpha\to(\beta\to\gamma))\to((\alpha\to\beta)\to(\alpha\to\gamma))$
  • (A3) $(\lnot\beta\to\lnot\alpha)\to((\lnot\beta\to\alpha)\to\beta)$
  • (A4) $\forall x\,\alpha\to\alpha[t/x]$。ただし $t$ は $\alpha$ の $x$ に代入可能とする。
  • (A5) $\forall x\,(\alpha\to\beta)\to(\forall x\,\alpha\to\forall x\,\beta)$
  • (A6) $\alpha\to\forall x\,\alpha$。ただし $x\notin\operatorname{FV}(\alpha)$ とする。
  • (A7) $x=x$
  • (A8) $x=y\to(\alpha\to\beta)$。ただし $\alpha$ は原子論理式で、$\beta$ は $\alpha$ の中の $x$ の出現のいくつか(すべてでも、1 つもなくてもよい)を $y$ に置き換えたものとする。
    体系 $\mathbf H$ の論理公理 $\Lambda$ は、公理図式の実例の全称化の全体である。推論規則は次の 1 つだけである。
  • 前件肯定(modus ponens、MP):$\psi$ と $\psi\to\chi$ から $\chi$ を導く。

この体系は Bil03 の Definition 7.3〜7.6(pp. 42–43)の体系と同じであり、同書の言語も $\lnot,\to,\forall,=$ を基本記号とする(Definition 5.1、p. 24)。(A1)〜(A3) は命題論理の部分、(A4)〜(A6) は量化記号、(A7)・(A8) は等号を扱う。「$x$ について一般化してよい」という推論は規則としては置かず、公理を全称化で閉じることと (A5)・(A6) で代用している。その代わり、一般化は定理として得られる(thm-first-order-proof-systems-generalization)。与えられた論理式が論理公理かどうかは、先頭の $\forall$ をはがしながら (A1)〜(A8) の形と照合すれば判定できる。

直感

証明体系は、推論の正しさを「規則に従っているか」という形の検査に置き換える装置である。数学者の書く証明は、読み手が行間を補えることを前提にしているが、証明体系の導出には行間がない。各行は公理か前提であるか、前の行から規則 1 回で得られるかのどちらかで、機械が確かめられる。その代償として、導出は長くなり、見つけるのも難しい。そこで、「導出が存在する」ことを導出を書かずに示す道具が要る。演繹定理(「$\alpha$ を仮定して $\beta$ を導けば $\alpha\to\beta$ が導ける」)と汎化定理(「前提に現れない変数については一般化してよい」)がその代表である。健全性定理は、この機械的な検査を通った結論が意味の上でも正しいことを保証する。

例と反例

導出は、各行に「どの公理図式の実例か」「どの行から MP で得たか」を添えて書く。

恒等式の導出

任意の論理式 $\varphi$ について $\vdash\varphi\to\varphi$ である。

5 行の導出

次の列は $\mathbf H$ の導出である。

  1. $\varphi\to((\varphi\to\varphi)\to\varphi)$ ——(A1) で $\alpha:=\varphi$、$\beta:=\varphi\to\varphi$
  2. $(\varphi\to((\varphi\to\varphi)\to\varphi))\to((\varphi\to(\varphi\to\varphi))\to(\varphi\to\varphi))$ ——(A2) で $\alpha:=\varphi$、$\beta:=\varphi\to\varphi$、$\gamma:=\varphi$
  3. $(\varphi\to(\varphi\to\varphi))\to(\varphi\to\varphi)$ ——1、2 から MP
  4. $\varphi\to(\varphi\to\varphi)$ ——(A1) で $\alpha:=\varphi$、$\beta:=\varphi$
  5. $\varphi\to\varphi$ ——4、3 から MP
    各行は公理か、それより前の 2 行から MP で得られるので、定義の条件を満たす。$\square$

$\varphi\to\varphi$ という自明に見える式にも 5 行かかる。この導出は OLT26 の Example 22.10(pp. 337–338)と同じである(同書の体系は公理が多いが、(A1)・(A2) にあたる公理図式 (22.7)・(22.8) をもつ)。

等号の対称性

$\vdash x=y\to y=x$ である。次の列が導出である。

  1. $x=y\to(x=x\to y=x)$ ——(A8) で $\alpha:=(x=x)$、$\beta$ は $\alpha$ の最初の $x$ を $y$ に置き換えた $y=x$
  2. $(x=y\to(x=x\to y=x))\to((x=y\to x=x)\to(x=y\to y=x))$ ——(A2)
  3. $(x=y\to x=x)\to(x=y\to y=x)$ ——1、2 から MP
  4. $x=x$ ——(A7)
  5. $x=x\to(x=y\to x=x)$ ——(A1)
  6. $x=y\to x=x$ ——4、5 から MP
  7. $x=y\to y=x$ ——6、3 から MP
    後の thm-first-order-proof-systems-generalization を前提の集合 $\emptyset$ に 2 回使うと、$\vdash\forall x\,\forall y\,(x=y\to y=x)$ も得られる。
束縛変数の付け替え

$P$ を 1 項関係記号とする。$\forall x\,P(x)\to P(y)$ は (A4) の実例である($y$ は $P(x)$ の $x$ に代入可能で、$P(x)[y/x]=P(y)$)。前提 $\forall x\,P(x)$ とこの公理から MP で、$\{\forall x\,P(x)\}\vdash P(y)$ を得る。前提 $\forall x\,P(x)$ には $y$ が自由に現れないので、thm-first-order-proof-systems-generalization により $\{\forall x\,P(x)\}\vdash\forall y\,P(y)$ である。

体系 $\mathbf H$ の公理図式に付いた条件は、健全性を保つために必要である。条件を 1 つ外すと何が起きるかを表にまとめる。

外す条件反例成り立たなくなること
(A4) の $t$ が代入可能$\forall x\,\exists y\,\lnot(x=y)\to\exists y\,\lnot(y=y)$論理公理が妥当であること(健全性)
(A6) の $x\notin\operatorname{FV}(\alpha)$$P(x)\to\forall x\,P(x)$論理公理が妥当であること(健全性)
(A8) の $\alpha$ が原子論理式$x=y\to(\exists y\,\lnot(x=y)\to\exists y\,\lnot(y=y))$論理公理が妥当であること(健全性)
一般化を推論規則にしない$\mathbf H$ に一般化規則を加えた体系での $\{P(x)\}\vdash\forall x\,P(x)$制限のない演繹定理、割り当てごとの帰結についての健全性
公理と規則が十分にある公理も規則もない体系完全性
反例:公理図式の条件を外す

いずれも、条件を外した形の論理式が妥当でないことを、構造 $\mathcal M$ として台集合 $\{0,1\}$ のものをとって示す。

  1. $\alpha:=\exists y\,\lnot(x=y)$、$t:=y$ とする。$x\in\operatorname{FV}(\alpha)$ で $y$ は $\alpha$ の束縛変数なので、$y$ は $\alpha$ の $x$ に代入可能でない(論理式 の記事の例「反例:代入可能でない代入」)。形の上で (A4) を当てはめると $\forall x\,\alpha\to\alpha[y/x]$、すなわち $\forall x\,\exists y\,\lnot(x=y)\to\exists y\,\lnot(y=y)$ になる。$\mathcal M$ では、どの $a$ にも異なる元があるので前件は真、$\exists y\,\lnot(y=y)$ は偽であり、この論理式はどの割り当てでも偽である。
  2. $\mathcal M$ で $P$ を $\{0\}$ と解釈し、$s(x)=0$ とする。$P(x)$ は $s$ のもとで真、$\forall x\,P(x)$ は偽なので、$P(x)\to\forall x\,P(x)$ は $s$ のもとで偽である。この式は $x\in\operatorname{FV}(P(x))$ なので (A6) の実例ではない。
  3. $\alpha:=\exists y\,\lnot(x=y)$ は原子論理式でない。$x$ の出現を $y$ に置き換えると $\exists y\,\lnot(y=y)$ になる。$s(x)=s(y)=0$ とすると、$x=y$ は真、$\exists y\,\lnot(x=y)$ は($y$ に $1$ を割り当てれば)真、$\exists y\,\lnot(y=y)$ は偽なので、$x=y\to(\exists y\,\lnot(x=y)\to\exists y\,\lnot(y=y))$ は $s$ のもとで偽である。
    どの場合も、この論理式を論理公理に加えた体系は、それ自身を 1 行で導出するので、妥当でない定理をもつ。後の thm-first-order-proof-systems-soundness の証明で、各条件がどこで使われるかが分かる。表の 4 行目は ex-first-order-proof-systems-gen-rule で、5 行目は Gödelの完全性定理 の記事の演習「健全だが完全でない証明体系」で確かめる。5 行目の体系では $\Gamma\vdash\varphi$ となるのは $\varphi\in\Gamma$ のときだけ(前提なしでは何も導出しない)なので健全だが、妥当な文 $\forall x\,(x=x)$ を導出できない。

性質

導出可能性の基本性質

次の性質は、導出が「前の行だけを参照する有限列」であることだけから従い、公理や規則の中身によらない。

導出可能性の基本性質

公理と推論規則による任意の証明体系で、論理式の集合 $\Gamma,\Delta$ と論理式 $\varphi,\psi$ について次が成り立つ。

  1. (反射性)$\varphi\in\Gamma$ または $\varphi\in\Lambda$ ならば $\Gamma\vdash\varphi$。
  2. (単調性)$\Gamma\subset\Delta$ かつ $\Gamma\vdash\varphi$ ならば $\Delta\vdash\varphi$。
  3. (有限性)$\Gamma\vdash\varphi$ ならば、有限部分集合 $\Gamma_0\subset\Gamma$ で $\Gamma_0\vdash\varphi$ となるものがある。
  4. (推移性)$\Delta$ のすべての元 $\delta$ について $\Gamma\vdash\delta$ であり、かつ $\Delta\vdash\psi$ ならば、$\Gamma\vdash\psi$。
導出の列を切り貼りする

1:1 行の列 $\varphi$ が導出である。
2:$\Gamma$ からの導出の各行は、論理公理か、$\Gamma$ の元か、規則の結論である。$\Gamma\subset\Delta$ なので $\Gamma$ の元は $\Delta$ の元でもあり、ほかの条件は前提の集合によらない。よって同じ列が $\Delta$ からの導出である。
3:$\Gamma$ からの $\varphi$ の導出 $\varphi_1,\dots,\varphi_n$ をとり、$\Gamma_0:=\{\varphi_i\mid\varphi_i\in\Gamma\}$ とおく。$\Gamma_0$ は $n$ 個以下の元からなる有限集合で、前提として使った行はすべて $\Gamma_0$ に属するので、同じ列が $\Gamma_0$ からの導出である。
4:$\Delta$ からの $\psi$ の導出 $\psi_1,\dots,\psi_m$ をとる。その中で前提として使われた $\Delta$ の元は有限個 $\delta_1,\dots,\delta_k$ である。各 $\delta_j$ について $\Gamma$ からの導出 $D_j$ をとり、列 $D_1,\dots,D_k,\psi_1,\dots,\psi_m$ を作る。$\psi_l$ のうち前提 $\delta_j$ として正当化されていた行は、$D_j$ の最後の行の後にあり、$D_j$ で導出済みの式と同じ式なので、同じ式を繰り返し書いた行とみなせる(前の行と同じ式の行は、その前の行の正当化をそのまま使える)。ほかの行の正当化は変わらない。よってこの列は $\Gamma$ からの $\psi$ の導出である。$\square$

4 の最後の点を正確に言うと、ある式が導出の中ですでに現れているなら、その式をもう一度書いた行は、最初に現れた行と同じ理由(公理、前提、または同じ前提の行からの規則)で正当化される。3 の有限性は、無限に多くの前提があっても 1 つの導出は有限個しか使わないことを言っており、Gödelの完全性定理 の記事の補題「証明の有限性」と同じ内容である。完全性定理と合わせると、ここから意味の側のコンパクト性定理が従う(同記事の系「コンパクト性定理」)。

演繹定理

一階論理の演繹定理

体系 $\mathbf H$ で、論理式の集合 $\Gamma$ と論理式 $\alpha,\beta$ について
$$ \Gamma\cup\{\alpha\}\vdash\beta\iff\Gamma\vdash\alpha\to\beta. $$

導出の各行に「α→」を付ける

$\Leftarrow$:$\Gamma\vdash\alpha\to\beta$ なら、単調性により $\Gamma\cup\{\alpha\}\vdash\alpha\to\beta$ であり、$\Gamma\cup\{\alpha\}\vdash\alpha$ と合わせ、2 つの導出をつないで MP を 1 回使えば $\Gamma\cup\{\alpha\}\vdash\beta$ である。
$\Rightarrow$:$\Gamma\cup\{\alpha\}$ からの導出 $\beta_1,\dots,\beta_n=\beta$ をとり、$i$ に関する帰納法で、すべての $i$ について $\Gamma\vdash\alpha\to\beta_i$ を示す。

  • $\beta_i$ が論理公理か $\Gamma$ の元の場合:$\beta_i$、(A1) の実例 $\beta_i\to(\alpha\to\beta_i)$、MP で $\alpha\to\beta_i$ という 3 行が $\Gamma$ からの導出である。
  • $\beta_i=\alpha$ の場合:lem-first-order-proof-systems-identity により $\vdash\alpha\to\alpha$ である。
  • $\beta_i$ が $\beta_j$ と $\beta_k=(\beta_j\to\beta_i)$($j,k< i$)から MP で得られた場合:帰納法の仮定により $\Gamma\vdash\alpha\to\beta_j$ と $\Gamma\vdash\alpha\to(\beta_j\to\beta_i)$ である。(A2) の実例
    $$ (\alpha\to(\beta_j\to\beta_i))\to((\alpha\to\beta_j)\to(\alpha\to\beta_i)) $$
    と MP を 2 回使えば $\Gamma\vdash\alpha\to\beta_i$ である(導出をつなぐことは prop-first-order-proof-systems-structural の 4 で正当化される)。
    $\mathbf H$ の推論規則は MP だけなので、場合はこれで尽きる。$i=n$ として $\Gamma\vdash\alpha\to\beta$ である。$\square$

公理 (A1)・(A2) は、ちょうどこの証明が通るように選ばれている。$\mathbf H$ では演繹定理に変数についての条件が要らないことに注意する。これは、一般化を推論規則として置かず、論理公理の全称化で代用したことによる(ex-first-order-proof-systems-gen-rule)。この定理は Bil03 の Theorem 7.10(p. 44)であり、同書は証明を命題論理の場合と同じとして演習にしている。

汎化定理

汎化定理

体系 $\mathbf H$ で、$\Gamma\vdash\varphi$ であり、変数 $x$ が $\Gamma$ のどの元にも自由に現れないならば、$\Gamma\vdash\forall x\,\varphi$ である。

導出の各行に「∀x」を付ける

$\Gamma$ からの導出 $\varphi_1,\dots,\varphi_n=\varphi$ をとり、$i$ に関する帰納法で、すべての $i$ について $\Gamma\vdash\forall x\,\varphi_i$ を示す。

  • $\varphi_i$ が論理公理の場合:論理公理は公理図式の実例の全称化なので、$\forall x\,\varphi_i$ も論理公理である。
  • $\varphi_i\in\Gamma$ の場合:仮定から $x\notin\operatorname{FV}(\varphi_i)$ なので、$\varphi_i\to\forall x\,\varphi_i$ は (A6) の実例である。$\varphi_i$ とこの公理から MP で $\forall x\,\varphi_i$ を得る。
  • $\varphi_i$ が $\varphi_j$ と $\varphi_j\to\varphi_i$ から MP で得られた場合:帰納法の仮定により $\Gamma\vdash\forall x\,\varphi_j$ と $\Gamma\vdash\forall x\,(\varphi_j\to\varphi_i)$ である。(A5) の実例 $\forall x\,(\varphi_j\to\varphi_i)\to(\forall x\,\varphi_j\to\forall x\,\varphi_i)$ と MP を 2 回使えば $\Gamma\vdash\forall x\,\varphi_i$ である。
    $i=n$ として主張を得る。$\square$

この定理は Bil03 の Theorem 7.11(p. 45)である。$x$ が $\Gamma$ に自由に現れないという条件は外せない。次の例がそれを示し、あわせて表の 4 行目を確かめる。

反例:一般化を推論規則にした場合

$\{P(x)\}\vdash\forall x\,P(x)$ は $\mathbf H$ では成り立たない。成り立つとすると、後の thm-first-order-proof-systems-soundness により $\{P(x)\}\models\forall x\,P(x)$ となるが、台集合 $\{0,1\}$、$P$ の解釈 $\{0\}$、$s(x)=0$ では $P(x)$ が真で $\forall x\,P(x)$ が偽だからである。よって thm-first-order-proof-systems-generalization の条件「$x$ が $\Gamma$ に自由に現れない」は外せない。
一方、$\mathbf H$ に 一般化規則「$\psi$ から $\forall x\,\psi$ を導く」($x$ は任意)を加えた体系 $\mathbf H^{+}$ では、2 行の列 $P(x),\ \forall x\,P(x)$ が $\{P(x)\}$ からの導出になる。$\mathbf H^{+}$ でも前提なしの定理はすべて妥当である(一般化規則は妥当性を保つ。lem-first-order-proof-systems-axioms-valid の証明の最後の段落と同じ理由)。ところが、制限のない演繹定理が $\mathbf H^{+}$ で成り立つとすると $\vdash P(x)\to\forall x\,P(x)$ となり、この式は妥当でない(ex-first-order-proof-systems-conditions の 2)。よって $\mathbf H^{+}$ では演繹定理に「一般化規則を適用した変数が $\alpha$ に自由に現れない」といった制限が要る。また $\mathbf H^{+}$ は、def-first-order-proof-systems-consequence の割り当てごとの帰結については健全でない。$\mathbf H^{+}$ が保つのは、「$\Gamma$ のすべての元がある構造のすべての割り当てで真なら、$\varphi$ もその構造のすべての割り当てで真」という、構造ごとの帰結のほうである。前提と結論がすべて文なら 2 つの帰結は一致するので、文だけを扱う限りこの違いは表に出ない。

健全性定理

論理公理は妥当である

体系 $\mathbf H$ の論理公理はすべて妥当である。

公理図式ごとに充足の定義を確かめる

構造 $\mathcal M$ と割り当て $s$ を任意にとり、各公理図式の実例が $s$ のもとで真であることを示す。以下「真」は $\mathcal M$、$s$ のもとで真であることをいう。
(A1)〜(A3):$\to$ と $\lnot$ の充足条件は真理値表と同じなので、$\alpha,\beta,\gamma$ の真偽の組み合わせを調べればよい。(A1) が偽になるには $\alpha$ が真で $\beta\to\alpha$ が偽でなければならないが、$\alpha$ が真なら $\beta\to\alpha$ は真である。(A2) が偽になるには、$\alpha\to(\beta\to\gamma)$ と $\alpha\to\beta$ が真で $\alpha\to\gamma$ が偽、すなわち $\alpha$ が真で $\gamma$ が偽でなければならない。そのとき $\alpha\to\beta$ から $\beta$ が真、$\alpha\to(\beta\to\gamma)$ から $\gamma$ が真となり矛盾する。(A3) が偽になるには、$\lnot\beta\to\lnot\alpha$ と $\lnot\beta\to\alpha$ が真で $\beta$ が偽でなければならない。そのとき $\lnot\beta$ が真なので $\lnot\alpha$ と $\alpha$ がともに真となり矛盾する。
(A4):$\forall x\,\alpha$ が真とし、$b:=t^{\mathcal M}[s]$ とおく。充足の定義から $\mathcal M\models\alpha[s_x^b]$ である。$t$ は $\alpha$ の $x$ に代入可能なので、一階述語論理 の記事の補題「代入補題」の 2 により $\mathcal M\models\alpha[t/x][s]$ である。
(A5):$\forall x\,(\alpha\to\beta)$ と $\forall x\,\alpha$ が真とする。各 $a\in M$ について $\alpha\to\beta$ と $\alpha$ が $s_x^a$ のもとで真なので、$\beta$ も $s_x^a$ のもとで真である。よって $\forall x\,\beta$ は真である。
(A6):$\alpha$ が真とする。$x\notin\operatorname{FV}(\alpha)$ なので、各 $a\in M$ について $s$ と $s_x^a$ は $\operatorname{FV}(\alpha)$ の上で一致し、一階述語論理 の記事の補題「一致補題」により $\alpha$ は $s_x^a$ のもとでも真である。よって $\forall x\,\alpha$ は真である。
(A7):$x^{\mathcal M}[s]=x^{\mathcal M}[s]$ なので真である。
(A8):$x=y$ が真、すなわち $s(x)=s(y)$ とする。まず、項 $u$ の中の $x$ の出現のいくつかを $y$ に置き換えた項を $u'$ とすると $u'^{\mathcal M}[s]=u^{\mathcal M}[s]$ であることを、項に関する帰納法で示す。$u$ が変数 $x$ なら $u'$ は $x$ か $y$ で、どちらの値も $s(x)$ である。$u$ がほかの変数か定数記号なら $u'=u$ である。$u=f(u_1,\dots,u_n)$ なら $u'=f(u_1',\dots,u_n')$(各 $u_i'$ は $u_i$ の出現のいくつかを置き換えたもの)なので、帰納法の仮定から値は等しい。原子論理式 $\alpha$ は $u_1=u_2$ か $R(u_1,\dots,u_n)$ の形で、$\beta$ はそれぞれ $u_1'=u_2'$、$R(u_1',\dots,u_n')$ の形である。各項の値が変わらないので、$\alpha$ が真なら $\beta$ も真である。
全称化:論理式 $\theta$ が妥当なら $\forall x\,\theta$ も妥当である。実際、任意の $\mathcal M$、$s$、$a\in M$ について $\theta$ は $s_x^a$ のもとで真なので、$\forall x\,\theta$ は $s$ のもとで真である。公理図式の実例はいま示したとおり妥当なので、その全称化も(全称記号の個数に関する帰納法で)妥当である。$\square$

健全性定理

体系 $\mathbf H$ で $\Gamma\vdash\varphi$ ならば $\Gamma\models\varphi$ である(def-first-order-proof-systems-consequence の、割り当てごとの意味で)。とくに、$\mathbf H$ の定理はすべて妥当である。

導出の長さに関する帰納法

構造 $\mathcal M$ と割り当て $s$ で、$\Gamma$ のすべての元が $s$ のもとで真であるものをとる。$\Gamma$ からの導出 $\varphi_1,\dots,\varphi_n=\varphi$ の各行が $s$ のもとで真であることを、$i$ に関する帰納法で示す。$\varphi_i$ が論理公理なら lem-first-order-proof-systems-axioms-valid により真である。$\varphi_i\in\Gamma$ なら $s$ の選び方から真である。$\varphi_i$ が $\varphi_j$ と $\varphi_j\to\varphi_i$ から MP で得られたなら、帰納法の仮定によりこの 2 つは真であり、$\to$ の充足条件から $\varphi_i$ も真である。よって $\varphi=\varphi_n$ は $s$ のもとで真である。$\mathcal M,s$ は任意だったので $\Gamma\models\varphi$ である。$\square$

この定理は、文についての形で Bil03 の Theorem 8.1(p. 47)にある(同書の証明は演習)。健全性の対偶から、導出できないことを示すには、前提を真にして結論を偽にする構造と割り当てを 1 つ見つければよい。ex-first-order-proof-systems-gen-rule はこの使い方の例である。とくに、充足可能な集合 $\Gamma$ からは $\varphi$ と $\lnot\varphi$ の両方を導出することはできない。

完全性とその帰結

体系 $\mathbf H$ は完全でもある。すなわち、文の集合 $\Gamma$ と文 $\varphi$ について $\Gamma\models\varphi$ ならば $\Gamma\vdash\varphi$ である。これは Gödelの完全性定理 であり、この記事では証明しない。$\mathbf H$ について可算言語の場合の主張は Bil03 の Theorem 8.17(p. 50。第 8 章は可算な言語を仮定する、p. 47)にある。健全性と合わせると、文の間では $\vdash$ と $\models$ が一致する。

導出の列挙と決定不能性

可算な言語では、記号列の有限列を 1 つずつ並べていき、それぞれが導出かどうかを検査していけば、定理を 1 つずつ漏れなく書き出す機械的な手順が得られる。完全性定理と合わせると、妥当な文を 1 つずつ書き出す手順があることになる。すなわち、文が妥当なら有限時間で「妥当である」と答え、妥当でなければ止まらない手順がある(Zac25 Theorem 15.18、p. 330)。一方、任意の文が妥当かどうかを常に有限時間で正しく判定する手順は存在しない(決定問題の否定的解決。Zac25 Theorem 15.16、p. 329。Church と Turing が独立に示したことは同書 §15.1、p. 308)。この記事ではどちらも証明しない。証明体系は「導出の検査は機械的だが、導出の探索は一般には終わらない」という性格をもつ。

流儀の比較

体系 $\mathbf H$ のように公理を多くして推論規則を少なくした体系を Hilbert 流(公理的な体系)という。ほかによく使われる流儀を、導出の形と規則の置き方で比べる。

Hilbert 流自然演繹シーケント計算タブロー
導出の形論理式の列論理式の木シーケント $\Gamma\Rightarrow\Delta$ の木真偽の印を付けた論理式の木
公理多い(公理図式)ほとんどない始シーケント $A\Rightarrow A$ などなし(仮定から始める)
規則少ない(MP など)結合子ごとに導入規則と除去規則結合子ごとに左規則と右規則、構造規則印の付いた論理式を部分論理式に分解する
仮定の扱い前提として並べる。演繹定理は定理仮定を置き、規則で外す左辺に置く$\Gamma\vdash A$ は $\mathrm F\,A$ と、$\Gamma$ の有限個の元 $B$ の $\mathrm T\,B$ から始めて全枝を閉じる
向いていること体系についての定理を示す実際の証明の筋をなぞる導出の構造を調べる導出や反例を機械的に探す

表の内容は Zac25 §9.2〜9.5(pp. 154–161)の説明による。同書によれば、Hilbert 流の体系は導出が単純な列で規則も 1、2 個なので体系についての定理を示しやすいが、実際に導出を見つけるのは難しい(pp. 160–161)。シーケント計算は Gentzen が 1930 年代に導入し(p. 155)、自然演繹は Gentzen と Jaśkowski が 1930 年代に展開した(p. 157)。命題論理に限ったシーケント計算の例は、命題論理 の記事の定義「シーケント計算」と定理「健全性と完全性」にある。そこでは、規則を下から上へ逆にたどる手続きがそのまま完全性の証明になっている。
流儀が違っても、一階論理の標準的な体系はどれも健全かつ完全である。Zac25 はシーケント計算の健全性(Theorem 10.28、p. 183)、自然演繹の健全性(Theorem 11.27、p. 216)と、両者に共通の完全性定理(Theorem 12.20、p. 245)を証明している。健全かつ完全な 2 つの体系では、文 $\Gamma,\varphi$ について「$\Gamma\vdash\varphi$」がどちらも「$\Gamma\models\varphi$」と同値になるので、証明可能性の関係は体系によらずに一致する。この意味で「一階論理の証明体系」は、見た目の違う体系をまとめた 1 つの概念として扱える。ただし、自由変数をもつ論理式の扱い(ex-first-order-proof-systems-gen-rule)や、導出の長さ・形は体系ごとに異なる。

関連項目

参考文献

Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する