見出し画像

#108 命題論理

 哲学を専攻するとどんな勉強をするか、ご存知ですか?

哲学の歴史を学んだり、ソクラテスとかアリストテレスとか、有名な哲学家の思想を紐解いたり、いろいろと研究分野はあります。ただ、哲学で最も基礎的な分野は、論理学だと言って差し支えないでしょう。


論理学とは

 論理学とは、簡単に言えば、「論理的に正しい」とされる文章にどのような法則があるのかを探る学問です。例えば、以下は有名な三段論法です。

猫はかわいい。
ハナは猫である。
→ ハナはかわいい。

ハナはかわいい

上の例は、正しい推理に思えます。逆に、

ハナはかわいい。
ハナは猫である。
→猫はかわいい。

これは直観的に正しいとは思えません。ハナがかわいいからと言って、あらゆる猫がかわいいとは限らないからです。

記号論理

 そして、この推理は、「ハナ」「猫」「かわいい」を記号に置き換えても成り立ちます。

AはBである。
BはCである。
ならば、AはCである。

記号化することで、文章の内容ではなく論理関係に着目することができます。また論理学では、真偽を判定できる文章を「命題」と呼び、命題間の関係性がいくつか定義されています。

A ∧ B (AかつB)
A ∨ B (AまたはB)
A ⇒ B (AならばB)
¬ A    (Aでない)

各命題の真偽によって、文全体の真偽が定まります。例えば、A∧Bは、Aが真かつBが真のとき、真となり、それ以外は偽となります。

このように、文章の内容ではなく命題の真偽に着目して論理を探求する分野を命題論理と言います。

以上、論理学の基礎についての簡単な説明でした。


真理値表生成プログラム

 命題論理の論理式から、真理値表を生成するプログラムを作りました。

$ ./logic 'A && B'
AB : A && B
00 : 0
10 : 0
01 : 0
11 : 1

$ ./logic '(A -> !B) -> (B->!A)'
AB : (A -> !B) -> (B->!A)
00 : 1
10 : 1
01 : 1
11 : 1

議論でどうしても勝ちたいときに、使ってみてください!


EOF


この記事が気に入ったらサポートをしてみませんか?