『論理学入門』
執筆日時:
- 作者: 丹治信春
- 出版社/メーカー: 筑摩書房
- 発売日: 2014/05/08
- メディア: 文庫
- この商品を含むブログ (1件) を見る
“タブロー”という証明方法を使った入門書。
タブローの方法(英 tableau method)とは、真理の木(truth tree)あるいは意味論的タブロー(semantic tableau)または分析タブロー(analytic tableau)と呼ばれるものを用いて、論証の妥当性や、論理式が矛盾しているかやトートロジーであるかを機械的に調べる判定手続き(decision procedure)の一種である。ヤーッコ・ヒンティッカらのモデル集合という考え方を応用して作られ、レイモンド・スマリヤンによって広められた。
複雑な論理式をバラバラにして、末端に残った矛盾をツブしていく感じ。
たとえば、 が true ならば、A = True と B = True バラせる。
けれど、 が true ならば、A = True, B = False という組み合わせと、A = False, B = True という組み合わせの二つにバラせる(枝分かれ)。
そんな感じに全部バラバラにしていって、最初の true と枝先があってるかをみればよい……という仕組みのようだ。
たとえば、 という論理式の場合、これ全体を False と仮定し、
……(1)
まず、最後にある をバラす。 ならば A:True、B:False なので(その逆もアリじゃない? って自分は思ったんだけど。後述)、
……(2)
……(3)
このようにバラせる。(3) はバラしきったので、次は (2) をバラす。論理和で繋がれた式が真ならば、両方真のはず。
……(4)
……(5)
あれ、ちょっとわかんなくなってきた。やっぱり、p.58 の“タブローの一般的な規則”を頭に叩き込んで、機械的な手続きでバラせるように訓練しなきゃいけないみたい。
- が真であれば、 は偽である
- が偽であれば、 は真である
- が真であれば、 は真、 も真である
- が偽であれば、 が偽であるか が偽である
- が真であれば、 が真であるか が真である
- が偽であれば、 は偽、 も偽である
- が真であれば、 が偽であるか が真である
- が偽であれば、 は真、 は偽である
最初 の部分があまり納得いかなかったが、「~ならば」と考えるのがだめであって、C# でいえば
return A ? (B ? true : false) : false;
だと考えれば至極もっともだった。「“A ならば B”が真だったら、“A が真、B が偽”っていう組み合わせとその逆があるだろ」というわけじゃない。“A が偽”だった時点で評価は終わり、論理式自体が 偽 になる。
よって、(4) と (5) はバラすときに分岐が発生する。先に (4) をバラす。
後ろの分岐は (3) と矛盾するから閉じる。
……(6)
次に (5) をバラす。
さっきと同様、後ろの分岐は (3) と矛盾するから閉じる。
……(7)
これは
……(7)
にバラせるが、(6) と矛盾するので閉じる。
よって、すべてが矛盾で閉じられたので、 は常に偽、つまり は常に真(トートロジー)。
おぉ……ちょっとだけわかった気がする。論理記号が、または・かつ・ならば・でない じゃなくて、単なる論理操作を表すモノに見えるまで訓練しないとだめだなぁ。