推論
既知の事柄を前提(premise)とした上で、未知の事柄に関して結論(conclusion)を導き出すことを推論(inference)と呼びます。より正確には、推論とは任意の解釈において前提に相当する有限個の論理式\(A_{1},\cdots ,A_{n}\)が真であるような任意の解釈のもとでは結論に相当する論理式\(B\)もまた真であること示すことであり、これを、\begin{equation*}A_{1},\cdots ,A_{n}\ \therefore \ B
\end{equation*}と定式化します。これを推論式(inference formula)と呼びます。以降では推論式とそれが表す推論と区別せずに、推論式を推論と呼ぶこともあります。
前提を持たず結論\(B\)だけを持つ推論を考える際には、それを、\begin{equation*}\therefore \ B
\end{equation*}と記述します。これは論理式\(B\)が恒真式であるという主張です。
妥当な推論:推論規則
前提\(A_{1},\cdots ,A_{n}\)と結論\(B\)に関する推論に関して、任意の解釈において前提\(A_{1},\cdots ,A_{n}\)がすべて真である場合に結論\(B\)もまた真であるならば、この推論は妥当である(valid)と言い、このことを、\begin{equation*}A_{1},\cdots ,A_{n}\ \models \ B
\end{equation*}で表します。これを推論規則(inference rule)と呼びます。
前提を持たず結論\(B\)だけを持つ推論が妥当であることは、\begin{equation*}\models \ B
\end{equation*}で表します。これは論理式\(B\)が恒真式であることを意味します。
\end{equation*}について考えます。論理式\(A,B\)の解釈を任意に選び、その解釈のもとで\(A,B\)から生成される命題を同じく\(A,B\)で表します。様々な解釈のもとで\(A,B\)はそれぞれ\(0\)と\(1\)の 2 通りの値を取り得るため、起こり得る値の組み合わせについて真理値表を書くと、
$$\begin{array}{cccc}
\hline
A & B & A\vee B & A\rightarrow B \\ \hline
1 & 1 & 1 & 1 \\ \hline
1 & 0 & 1 & 0 \\ \hline
0 & 1 & 1 & 1 \\ \hline
0 & 0 & 0 & 1 \\ \hline
\end{array}$$
を得ます。真理値表の1行目と3行目より、前提\(A\vee B,\ A\rightarrow B\)がともに真の場合には結論\(B\)は常に真であるため、この推論は妥当です。
妥当ではない推論
前提\(A_{1},\cdots ,A_{n}\)と結論\(B\)に関する推論が妥当でないならば、すなわち、前提\(A_{1},\cdots ,A_{n}\)がすべて真である場合に結論\(B\)が偽になるような解釈が存在する場合には、この推論は妥当でない(invalid)と言い、このことを、\begin{equation*}A_{1},\cdots ,A_{n}\ \not\models \ B
\end{equation*}で表します。
\end{equation*}について考えます。論理式\(A,B\)の解釈を任意に選び、その解釈のもとで\(A,B\)から生成される命題を同じく\(A,B\)で表します。様々な解釈のもとで\(A,B\)はそれぞれ\(0\)と\(1\)の2通りの値を取り得るため、起こり得る値の組み合わせについて真理値表を書くと、
$$\begin{array}{ccccc}
\hline
A & B & \lnot A & \lnot B & A\rightarrow B \\ \hline
1 & 1 & 0 & 0 & 1 \\ \hline
1 & 0 & 0 & 1 & 0 \\ \hline
0 & 1 & 1 & 0 & 1 \\ \hline
0 & 0 & 1 & 1 & 1 \\ \hline
\end{array}$$
を得ます。真理値表の3行目より、前提\(\lnot A,\ A\rightarrow B\)がともに真で結論\(\lnot B\)が偽であるような解釈が存在するため、この推論は妥当ではありません。
推論規則を導く方法
推論の妥当性を示す方法はいくつか存在します。1つ目の方法は、すべての前提\(A_{1},\cdots ,A_{n}\)の値が\(1\)であるような任意の解釈のもとでは結論\(B\)もまた\(1 \)になることを示すというものです。例えば、論理式\(A,B\)に関する、\begin{equation*}A\rightarrow B,\ A\ \therefore \ B
\end{equation*}という推論について、\(A\rightarrow B\)と\(A\)の値がともに\(1\)になるような任意の解釈のもとでは、\(\rightarrow \)の定義より\(B\)の値は必ず\(1\)になります。したがって、上の推論は妥当です。
推論の妥当性を示すための2つ目の方法は、推論から以下の論理式\begin{equation}
\bigwedge\nolimits_{i=1}^{n}A_{i}\ \rightarrow \ B \quad \cdots (1)
\end{equation}を構成した上で、これが恒真式であること、すなわち、\begin{equation}
\bigwedge\nolimits_{i=1}^{n}A_{i}\ \Rightarrow \ B \quad \cdots (2)
\end{equation}が成り立つことを示すというものです。実際、解釈を任意に選んだとき、\(A_{1},\cdots ,A_{n}\)がすべて真である場合には\(\left( 2\right) \)の前件\(\bigwedge\nolimits_{i=1}^{n}A_{i}\)は真になり、したがって恒真式の定義より、この場合には\(B\)は必ず真です。ゆえに推論は妥当です。一方、論理式\(\left( 1\right) \)が恒真式でない場合には、前提\(A_{1},\cdots ,A_{n}\)がすべて真でも結論\(B\)が偽になる解釈が存在するため、この場合には推論は妥当ではありません。
\end{equation}に対応する論理式は、\begin{equation}
\left( \left( A\rightarrow B\right) \wedge \lnot B\right) \rightarrow \lnot A
\quad \cdots (2)
\end{equation}です。様々な解釈のもとで\(A,B\)はそれぞれ\(0\)または\(1\)を値として取り得るため、それぞれの場合を真理値表を用いて表現すると、
$$\begin{array}{ccccccc}
\hline
A & B & \lnot A & \lnot B & A\rightarrow B & \left( A\rightarrow B\right) \wedge \lnot B & \left[ \left( A\rightarrow B\right) \wedge \lnot B\right] \rightarrow \lnot A \\ \hline
1 & 1 & 0 & 0 & 1 & 0 & 1 \\ \hline
1 & 0 & 0 & 1 & 0 & 0 & 1 \\ \hline
0 & 1 & 1 & 0 & 1 & 0 & 1 \\ \hline
0 & 0 & 1 & 1 & 1 & 1 & 1 \\ \hline
\end{array}$$
となります。したがって、\(\left( 2\right) \)は恒真式であるため、もとの推論\(\left( 1\right) \)は妥当です。
推論の妥当性を示すための3つ目の方法は、前提\(A_{1},\cdots ,A_{n}\)を出発点にして、推論規則を用いて結論を次々に導出し、最終的に当初の推論式の結論\(B\)を導出するというものです。これは証明(proof)と呼ばれる手続きですが、証明については後ほど詳しく解説することにして、まずは証明において役に立つ推論規則を提示します。
プレミアム会員専用コンテンツです
【ログイン】【会員登録】