推論の妥当性を示すために、前提を出発点として推論規則を用いて結論を次々に導出し、最終的に当初の推論式の結論を導出する手法を証明や演繹などと呼びます。

2019年6月3日:公開

証明

前提\(A_{1},\cdots ,A_{n}\)と結論\(B\)に関する推論の妥当性を示すためには様々な方法があります。1 つ目は、すべての前提\(A_{1},\cdots ,A_{n}\)の値が\(1\)であるような任意の解釈のもとで結論\(B\)が\(1\)になることを示すというものです。2 つ目は、恒真式\(\bigwedge_{i=1}^{n}A_{i}\Rightarrow B\)が成り立つことを示すというものです。3 つ目は、前提\(A_{1},\cdots ,A_{n}\)を出発点として、推論規則を用いて結論を次々に導出し、最終的に当初の推論式の結論\(B\)を導出するというものです。最後の手法を証明(proof)や演繹(deduction)などと呼びます。

推論の妥当性について復習する

証明の簡単な例を紹介します。論理式\(A,B\)に関する以下の推論\begin{equation*}
A\rightarrow \left( A\rightarrow B\right) ,\ A\ \therefore \ B
\end{equation*}が妥当であることを証明します。つまり、\(A\rightarrow \left( A\rightarrow B\right) \)と\(A\)がともに真であるような任意の解釈のもとでは\(B\)もまた必ず真であることを示します。以下の論理式の列
\begin{array}{lll}
\left( 1\right) & A\rightarrow \left( A\rightarrow B\right) & 前提 \\
\left( 2\right) & A & 前提 \\
\left( 3\right) & A\rightarrow B & \left( 1\right) ,\left( 2\right) と\rightarrow 除去 \\
\left( 4\right) & B & \left( 2\right) ,\left( 3\right) と\rightarrow 除去
\end{array}について考えます。\(\left( 1\right) \)と\(\left( 2\right) \)は推論の前提です。\(\left( 3\right) \)は\(\left( 1\right) \)と\(\left( 2\right) \)に推論規則(含意除去)を適用して得られる論理式ですから、\(\left( 1\right) \)と\(\left( 2\right) \)がともに真であるような任意の解釈において\(\left( 3\right) \)は真です。\(\left( 4\right) \)は推論の結論に相当しますが、これは\(\left( 2\right) \)と\(\left( 3\right) \)に推論法則(含意除去)を適用して得られる論理式ですから、\(\left( 2\right) \)と\(\left( 3\right) \)が真であるような任意の解釈において\(\left( 4\right) \)は真です。以上より、\(\left( 1\right) \)と\(\left( 2\right) \)が真であるような任意の解釈のもとで\(\left( 4\right) \)は必ず真ですから、推論式が妥当であることが示されました。

含意除去について復習する

 

証明の定式化

議論を一般化しましょう。前提\(A_{1},\cdots ,A_{n}\)と結論\(B\)に関する推論に対して、以下の条件を満たす論理式の有限な列\(\alpha _{1},\cdots ,\alpha _{m}\)が存在する場合には、これを前提\(A_{1},\cdots ,A_{n}\)から結論\(B\)への証明(proof)や演繹(deduction)などと呼びます。

  1. 最後の論理式\(\alpha _{m}\)は推論の結論\(B\)と一致する。つまり、\(\alpha _{m}=B\)が成り立つ。
  2. それぞれの\(i\ (1\leq i\leq m)\)について以下のどちらかが成り立つ:
    1. 論理式\(\alpha _{i}\)は前提\(A_{1},\cdots ,A_{n}\)の中のいずれかである。
    2. 論理式\(\alpha _{i}\)はそれより前にある論理式に推論規則を適用して得られるものである。

前提\(A_{1},\cdots ,A_{n}\)から結論\(B\)への証明が存在する場合には、\(A_{1},\cdots ,A_{n}\)から\(B\)が証明可能(provable)であると言います。\(A_{1},\cdots ,A_{n}\)から\(B\)が証明可能である場合には、証明の定義より、\(A_{1},\cdots ,A_{n}\)がいずれも真であるような任意の解釈において\(B\)もまた必ず真になります。すなわち、推論は妥当ですから、推論規則\begin{equation*}
A_{1},\cdots ,A_{n}\ \models \ B
\end{equation*}が成り立ちます。特に、推論に前提が存在しない場合には、結論\(B\)は証明可能であると言い、このことを、\begin{equation*}
\models \ B
\end{equation*}で表します。これは\(B\)が恒等式であることに他なりません。

推論の証明を見つけられないからといって、証明が存在しないことにはなりません。推論の証明を見つけられないことは、その推論が妥当でないことを意味しません。推論が妥当でないことを示すためには、前提がすべて真だが結論が偽になるような場合を反例として具体的に提示したり、証明が存在しないことを具体的に示す必要があります。

証明\(\alpha _{1},\cdots ,\alpha _{m}\)を構成する個々の論理式の番号を明示的に表現する場合には、

\begin{array}{ll}
\left( 1 \right) & \alpha _{1} \\
\cdots & \cdots \\
\left( m \right) & \alpha _{m}
\end{array}と記述します。

例(証明)
以下の推論\begin{equation*}
\text{全員が幸せならば、誰かが幸せである。}
\end{equation*}について考えます。変数\(x\)の定義域\(X\)はすべての人間からなる集合であるものとし、命題関数\(P\)を、\begin{equation*}
P\left( x\right) :x\text{は幸せである}
\end{equation*}と定めると、与えられた推論は、\begin{equation*}
\forall x\in X\ P\left( x\right) \ \therefore \ \exists x\in X\ P\left( x\right)
\end{equation*}と定式化されます。この推論が妥当であることは以下の証明から証明可能です。
\begin{array}{lll}
\left( 1\right) & \forall x\ P\left( x\right) & 前提 \\
\left( 2\right) & P\left( \overline{x}\right) ,\ \overline{x}\in X & \left( 1\right) と\forall 除去 \\
\left( 3\right) & \exists x\ P\left( x\right) & \left( 2\right) と\exists 導入
\end{array}
例(証明)
以下の推論\begin{eqnarray*}
&&\text{ガレージにある車の中には故障車がある} \\
&&\text{ガレージにある車をすべて売った} \\
&&\text{したがって、売った車の中には故障車がある}
\end{eqnarray*}について考えます。変数\(x\)の定義域\(X\)はすべての車からなる集合であるものとし、命題関数\(P,Q,R\)を、\begin{eqnarray*}
P\left( x\right) &:&x\text{はガレージの中にある} \\
Q\left( x\right) &:&x\text{は故障車である} \\
R\left( x\right) &:&x\text{を売った}
\end{eqnarray*}と定めると、与えられた推論は、\begin{equation*}
\exists x\in X\ \left[ P\left( x\right) \wedge Q\left( x\right) \right] ,\forall x\in X\ \left[ P\left( x\right) \rightarrow R\left( x\right) \right] \therefore \ \exists x\in X\ \left[ Q\left( x\right) \wedge R\left( x\right) \right] \end{equation*}と定式化されます。この推論が妥当であることは以下の証明から証明可能です。
\begin{array}{lll}
\left( 1\right) & \exists x\in X\ \left[ P\left( x\right) \wedge Q\left( x\right) \right] & 前提 \\
\left( 2\right) & P\left( c\right) \wedge Q\left( c\right) & \left( 1\right) と\exists 除去 \\
\left( 3\right) & P\left( c\right) & \left( 2\right) と\wedge 除去 \\
\left( 4\right) & \forall x\in X\ \left[ P\left( x\right) \rightarrow R\left( x\right) \right] & 前提 \\
\left( 5\right) & P\left( c\right) \rightarrow R\left( c\right) & \left( 4\right) と\forall 除去 \\
\left( 6\right) & R\left( c\right) & \left( 3\right) ,\left( 5\right) と\rightarrow 除去 \\
\left( 7\right) & Q\left( c\right) & \left( 2\right) と\wedge 除去 \\
\left( 8\right) & Q\left( c\right) \wedge Q\left( c\right) & \left( 6\right) ,\left( 7\right) と\wedge 導入 \\
\left( 9\right) & \exists x\in X\ \left[ Q\left( x\right) \wedge R\left( x\right) \right] & \left( 8\right) と\exists 導入\end{array}

次回は条件付き証明について学びます。

次へ進む 演習問題(プレミアム会員限定)