0
大学数学基礎解説
文献あり

『論理学をつくる』79頁の練習問題19(3)について(解答は374頁)

10
0
$$$$

私は数理論理学の初心者だが、当書籍の練習問題19(3)を自力で解くことはできなかったので解答を参照しました。
その内容が、自分にとってはあまりに天才的な解答で、発想の起点のようなものが見えなかったので、
gemini等を使って調べたことをここに補足します。
解答の(3)は、かなりテクニカルで「ひらめき」を要求する構成になっていますね。
特に「なぜいきなり矛盾式($\bot$)を作ろうとしたのか」という点が、初見では飛躍して見える原因かと思います。
この証明の「発想の起点」と、論理のつながりを整理して解説します。

1. 発想の起点:何が足りないのか?

証明の目的は「$\{\land, \underline{\lor}, \leftrightarrow\}$ を使って NAND ($A|B$) を作ること」です。
テキストにある通り、$A|B \equiv \neg(A \land B)$ です。
ここで、手持ちの道具 $\{\land, \underline{\lor}, \leftrightarrow\}$ を見渡すと、「否定 ($\neg$)」を単独で表現する手段がないことに気づきます。もし「矛盾($\bot$)」さえ作ることができれば、以下を使って否定が作れます。
$$\neg A \equiv A \leftrightarrow \bot$$
https://mathlog.info/articles/g0BcRjqSEUdwK0iAiKMM
上記参照して下さい。
つまり、「どうにかして矛盾式(常に偽になる式)を合成できないか?」というのが、この解答の戦略的な起点です。

2. なぜ $A \underline{\lor} B$$A \leftrightarrow B$ に着目したのか?

ここで解答にある「ひらめき」の部分です。
排他的論理和 ($\underline{\lor}$) と同値 ($\leftrightarrow$) の真理値表を比較してみましょう。
ちなみに、上記の発想すら思いつきはしないと思いますが、実際は問題文で与えられた結合子で様々な論理式を作って真理値表で遊んでみるという実験が大事だと思います。

$A$$B$$A \underline{\lor} B$$A \leftrightarrow B$
1101
1010
0110
0001

表を見ると、この2つは常に反対の結果を返していることがわかります。
つまり、一方が「1」のときはもう一方が必ず「0」です。
「常に一方が 0 である」という性質を利用して、「両方が同時に 1 になることはない」という式を立てれば、それは常に「0」になります。
$$(A \underline{\lor} B) \land (A \leftrightarrow B) \equiv \bot$$
これで、手持ちの記号だけで「矛盾($\bot$)」を生成することに成功しました。

3. 論理的飛躍を埋めるステップ

解答の最後の一行 $A|B \dashv\vdash (A \land B) \leftrightarrow ((A \underline{\lor} B) \land (A \leftrightarrow B))$ は、以下のステップを凝縮したものです。

  1. 矛盾式を作る: $\bot \equiv (A \underline{\lor} B) \land (A \leftrightarrow B)$
  2. 否定を定義する: $\neg P \equiv P \leftrightarrow \bot$
  3. $A|B$ に当てはめる:
    $A|B \equiv \neg(A \land B)$
    ・ここで $P$$(A \land B)$ と置き換えると、
    $A|B \equiv (A \land B) \leftrightarrow \bot$
  4. $\bot$ を代入する:
    $A|B \equiv (A \land B) \leftrightarrow ((A \underline{\lor} B) \land (A \leftrightarrow B))$

まとめ:この証明の「地図」

この解答が不親切に感じるのは、「否定を作りたい → 否定を作るには矛盾が必要 → 矛盾を作るには XOR と同値をぶつければいい」という逆算のプロセスを説明せずに、いきなり結論の式を提示しているからです。
目標: $\neg(A \land B)$ を作りたい。
課題: $\neg$ がない。
解決策: $\bot$ を使って $\neg P \equiv P \leftrightarrow \bot$ とする。
手段: $A \underline{\lor} B$$A \leftrightarrow B$ は「矛と盾」の関係なので、$\land$ で繋げば必ず $\bot$ になる。
この流れが見えると、解答の式が「ひらめき」ではなく、必然的な組み合わせであることが理解しやすくなるはずです。

参考文献

[1]
戸田山 和久, 論理学をつくる, 名古屋大学出版会, 2000, 442
投稿日:1日前
数学の力で現場を変える アルゴリズムエンジニア募集 - Mathlog served by OptHub

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。

投稿者

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中