論理学入門

論理学入門
金曜(4)15:00–; 321 教室 (5)16:45–;321 教室
http://abelard.flet.keio.ac.jp/person/takemura/class2.html
述語論理
1
1.1
命題論理の難点:まとめ
• 命題論理は、文(平叙文)を基本単位として、文を結びつける接続詞および否定詞
(∧, ∨, →, ¬)を分析する。
• 以下の推論は妥当でないが、命題論理に当てはめると証明図が構成できてしまう。
前提 1 ある港区民は料理人である。
前提 1 M ∧ C
前提 2 ある料理人は神奈川県民である。
前提 2 C ∧ K
結論 それゆえ、ある港区民は神奈川県民である。 結論 M ∧ K
• 上の例では何が問題なのか?
– 上のような記号化は、命題論理の考え方を逸脱している。
「人間」や「哺乳類」、「動物」は文ではない!
命題論理で A や B と記号化されるものは、真理値をもつ(真偽が問える)文
であった。(「タロウは人間である」は真である、ということができる。)これ
に対して、
「人間」や「哺乳類」という語は、それだけでは真理値を持たない。
– 「すべて」や「ある」という語がちゃんと表現できていない。
「すべての人間は哺乳類である」の「すべて」や「ある港区民は料理人である」
の「ある」を適切に表現するためにはどうしたらよいか?
• 以下の推論も上と同じように命題論理風に記号化してみると、以下のようになる。
前提 1 デカルトは哲学者である。
前提 1 D → P
前提 2 デカルトは数学者である。
前提 2 D → M
結論 それゆえ、哲学者であり、なおかつ
数学者である人が存在する。
結論 P ∧ M
この 2 つの前提からは、D → (P ∧ M ) という論理式の証明図は構成することができ
るが、結論はデカルトについての言明ではなく、より一般的な(抽象的な)言明と
なっているため、この論理式は結論を正しく表現しているとは言えない。
1
• この推論の記号化においても以下のような同様の問題がある。
– 「デカルト」は具体的な個体(個人)を表す固有名であり真理値を持たない。
これに対して、「デカルトは哲学者である」は、真理値をもつ文である。
名詞や数詞、固有名は真理値を持たない。文のみが真理値を持つ。
– 結論の「哲学者であり、なおかつ数学者である人が存在する」を命題論理に基
づいて記号化しようとすると、
「存在する」という語が適切に記号化できない。
• 次の例はさらに複雑である。この推論は妥当な推論だろうか?
前提 1 誰もが誰かを愛している。
結論 それゆえ、誰かが誰かを愛している。
よく考えてみれば分かるように、この推論は直観的には妥当な推論であることが分
かる。しかしこれまでの方針ではこの推論は記号化することが困難である。
– 「誰も」
「誰か」といった語が推論の正しさに本質的に関わっているが、それが
表現できない。
– 「愛している」という語は人間(太郎や花子など)の間の関係を表す語だが、
それが適切に表現できない。
– オイラー図やヴェン図を描くのも困難!
• まとめると、以下が今後の課題となる。
1. 「すべて」という語をどう表現するか?
2. 「人間」や「哺乳類」という性質を表す語をどう表現するか?
3. 「デカルト」などの固有名をどう表現するか?
4. 「存在する」という語をどう表現するか?
5. 「愛している」などの人間の間の関係を表す語をどう表現するか?
1.2
個体指示表現と述語
まずは以下の問題に対する述語論理での解決策を見ていく。
1. 「デカルト」などの固有名をどう表現するか?
2. 「人間」や「哺乳類」という性質を表す語をどう表現するか?
3. 「愛している」などの人間の間の関係を表す語をどう表現するか?
命題論理では、「デカルトは哲学者である」のような文は接続詞を含まない原始文と呼
ばれ、その内部構造については分析せずに、記号化するときも文全体を A などの記号で表
現してきた。述語論理では、原始文をさらに分解する。述語論理では原始文は、
2
• 主語となる「個体指示表現」(固有名など)と
• それ以外の部分である「述語(または関係)」に分解される。
例 1 たとえば「デカルトは哲学者である」という文は、以下のように分解される。
• 個体指示表現「デカルト」
• それ以外の部分(述語)「∗ は哲学者である。」
同様に「タロウはハナコを愛している」という原始文は、以下のように分解される。
• 個体指示表現「タロウ」および「ハナコ」
• それ以外の部分(述語(関係))「∗1 は ∗2 を愛している」
「個体指示表現」とは上記の固有名詞のようなもので、何らかの個体を指示する表現で
ある。一般には(1)固有名(デカルト、タロウ、ハナコ、など)、(2)確定記述(日本
で一番長い川、太陽系第 3 惑星、など)、(3)指示詞(これ、それ、わたし、など)とさ
らに分類されるが、以下では簡単のために、おもに「固有名」に限って話を進める。
• 固有名の形式的(記号)表現は、個体定項と呼ばれる。
• 原始文において固有名以外の部分、つまり固有名と組み合わせて原始文ができ
る部分は一般に「述語」と呼ばれ、その形式的表現は述語記号と呼ばれる。
またより細かく、以下のように区別される。
– 空欄を 1 つもつ述語(たとえば「∗ は哲学者である」のように、1 つの個体
の性質を表現する語)を 1 項述語と呼ぶ。
– 空欄を 2 つもつ述語(たとえば「∗1 は ∗2 を愛している」のように、2 つの
個体の間の関係を表現する語)を 2 項述語と呼ぶ。
– 一般に、n 個の空欄をもつ述語(n 個の個体の間の関係を表現する語)を
n 項述語と呼ぶ。
この「述語」が、述語論理の「述語」である。
ここで、これらの固有名と述語の記号による表し方を導入しておく。
例 2 たとえば「デカルトは哲学者である」という文は、
• 固有名「デカルト」と 1 項述語「∗ は哲学者である」に分解することができ、
• 固有名「デカルト」をアルファベットの小文字 d で表し、1 項述語「∗ は哲学者であ
る」をアルファベットの大文字 P (∗) で表す。
• これにより、「デカルトは哲学者である」という文は以下のように記号化される。
P (d)
3
• よりわかりやすくするために、英語を用いて、固有名「デカルト」を「descartes」、
1 項述語「∗ は哲学者である」を「P hil(∗)」で表し、以下のように表現してもよい。
P hil(descartes)
• またさらに日本語を用いて、固有名「デカルト」を「デカルト」、1 項述語「∗ は哲
学者である」を「哲学者 (∗)」で表し、以下のように表現してもよい。
哲学者 (デカルト)
命題論理でも原子論理式を P で表すか Q で表すかなどは、翻訳者の自由であったのと
同様に、述語や固有名にどのような記号を用いるかは自由である。重要なことは、問題の
述語や固有名をどのような記号で表現するかを前もって必ず宣言しておかなければならな
い、ということである。
例 3 同様に、「タロウはハナコを愛している」という文は、
• 固有名「タロウ」および「ハナコ」と、2 項述語「∗1 は ∗2 を愛している」に分解す
ることができ、
• 「タロウ」を a、
「ハナコ」を b で表し、
「∗1 は ∗2 を愛している」を L(∗1 , ∗2 ) で表し、
• 「タロウはハナコを愛している」という文を以下のように表す。
L(a, b)
• 先ほどと同様に、「タロウ」を T aro、「ハナコ」を Hanako で表し、「∗1 は ∗2 を愛
している」を Love(∗1 , ∗2 ) で表し、以下のように表現してもよい。
Love(T aro, Hanako)
• また「タロウ」を タロウ、「ハナコ」を ハナコ で表し、「∗1 は ∗2 を愛している」を
愛している (∗1 , ∗2 ) で表し、以下のように表現してもよい。
愛している (タロウ, ハナコ)
日常言語表現
形式的表現
記号
固有名
n 項述語
原始文
個体定項
n 項述語記号
原子論理式
a, b, c, . . .
P (∗1 , . . . , ∗n )
P (a1 , . . . , an )
4
練習問題 1 以下の文を(アルファベット、英語、日本語を用いてそれぞれ)記号化してく
ださい。
1. デカルトは数学者である。
2. 7 は素数である。
3. タロウはジロウを憎んでいる。
4. デカルトは数学者であり、なおかつ哲学者である。
5. デカルトは数学者であるが、カントは数学者ではない。
6. 4 は偶数であり、5 は奇数である。
7. タロウとジロウが兄弟ならば、タロウとサブロウも兄弟である。
8. タロウとハナコとジロウは家族ではない。
1.3
量化子
次に、以下の問題に対する述語論理の解決策を見ていく。
1. 「すべて」という語をどう表現するか?
2. 「存在する」という語をどう表現するか?
述語論理では、
「すべての」
「どの」
「どんな」
「誰も」などを表すために、以下のような
普遍記号と呼ばれる新しい記号を導入する。
∀
また「ある」
「存在する」
「誰か」などを表すために、以下のような存在記号と呼ばれる新
しい記号を導入する。
∃
これら「普遍記号」と「存在記号」はあわせて、量化記号と呼ばれる。
例 4 「すべての港区民は東京都民である」をどのように表現するか?
• 「港区民」や「東京都民」は文ではなく、真理値をもたないが、「タロウは港区民で
ある」や「タロウは東京都民である」は文で、真理値をもつ。
• すなわち「港区民」や「東京都民」は、「哲学者である」などと同じく述語である。
したがって、
「∗ は港区民である」を M (∗)、
「∗ は東京都民である」を T (∗) と記号化
することができる。
5
• 「すべての港区民は東京都民である」という文は言い換えれば、
「どんな a さんにつ
いても、a さんが港区民ならば、a さんは東京都民である」となり、以下のように部
分的に記号化することができる。
どんな a さんについても、
M (a) → T (a)
• さらに普遍記号を用いて「すべての港区民は東京都民である」は以下のように記号
化される。
∀a(M (a) → T (a))
例 5 「誰もが誰かを愛している」という文をどのように表現するか?
• 上の文は「どの人もある人を愛している」と言い換えることができる。
• またさらに「どの a さんも、ある b さんを愛している」と言い換えることができる。
• すると、以下のように記号化することができる。
どの a さんも、ある b さんについて、
L(a, b)
• さらに存在記号と普遍記号を用いて、以下のように記号化することができる。
∀a∃b(L(a, b))
1.4
個体変項
上の例で、デカルトやタロウ、ハナコは固有名であるのに対して、
「どんな a さんについ
ても、M (a) → T (a)」というときの「a さん」は特定の個体を指示する固有名ではなく、
人間の集まり(集合)を動くいわば変数である。
• 特定の個体を指示する固有名に対する記号表現を個体定項と呼び、通常アルファベッ
トの小文字の最初の方 a, b, c などで表す。(必要があれば a1 , a2 , . . . のように下に添
え字を付ける。)
• また個体定項ではなく変数に対応するものを個体変項と呼び、通常アルファベット
の小文字の後ろの方 x, y, z などで表す。
(必要があれば x1 , x2 , . . . のように下に添え
字をつける。)
個体変項に対応するものは、日常表現には明示的に現れることはなく、
「すべての ∼」や
「誰も」、
「誰か」などの表現の内に隠れている。したがって、これまでに見てきたように、
一般に「すべての」や「ある」などを含む日常文を翻訳するときには、「誰もが誰かを愛
している」を「どの a さんも、ある b さんを愛している」と言い換えたように、個体変項
に対応するものを見つけ出す作業が必要となる。
6
またすぐに分かるように、普遍記号 ∀ と存在記号 ∃ は、∀x · · · や ∃y · · · のように常に個
体変項とともに用いられる。∀x という表現は普遍量化子、∃x という表現は存在量化子と
呼ばれることもある。またそれらをあわせて量化子とも呼ばれる。
日常言語表現
形式的表現
記号
固有名
個体定項
個体変項
n 項述語記号
原子論理式
量化記号
a, b, c, . . .
x, y, z, . . .
P (∗1 , . . . , ∗n )
P (a1 , . . . , an )
∀, ∃
n 項述語
原始文
量化
練習問題 2 以下の文を記号化してください。
1. すべての人間は哺乳類である。
2. どの東京都民も神奈川県民ではない。
3. ある港区民は料理人である。
4. 誰かが誰かを愛している。
5. ある人は東京都民であり、またある人は神奈川県民である。
6. ある人は東京都民であり、なおかつ料理人でもある。
7. あるネコはペットであり、またあるネコはペットではない。
前原昭二,
「記号論理入門」
論理記号を用いて表された命題を日常語で読む読み方が一意的でないのと同じ
く、日常語によって表された命題を論理記号を使って表現する方法も一定して
いるわけではありません。
このことは、欧文和訳・和文欧訳におけるのとまったく同様です。欧文を日本
語に翻訳するにも、その訳し方はひと通りしかないわけではありません。しか
も、その欧文の表現形式にのみ心をうばわれていたのでは正しい翻訳はできま
せん。まず第 1 に、その欧文の意味することを正確に理解すること。そして、
第 2 に、その目的に応じて適切な日本語に移しかえるのであります。そのとき
には、もちろん、日本語の使用法を知っていなければなりません。
7
1.5
翻訳練習
練習問題 3 以下の文を述語論理の論理式に翻訳して下さい。
1. ローランサンは画家である。
2. ローランサンはフランス人の女性画家である。
3. ローランサンは未婚である。
4. 画家は芸術家である。
5. どんな画家も不健康である。
6. 未婚の男性はみんな不健康である。
7. ある画家はローランサンを愛している。
8. 不健康な既婚女性もいる。
9. 男性嫌いな女性画家がいる。
10. どんなフランス人も好戦的ではない。
11. フランス人がみな好戦的であるというわけではない。
12. ワカメは結婚していない。
13. 全ての親は自分の子よりも年上である。
14. どんな兄弟も夫婦ではない。
練習問題 4 S(∗) は「∗ は学生である」、M (∗) は「∗ は数学が好きである」を表すとする。
このとき、次の論理式はどのような文を表現しているか?
1. ∀x(S(x) → ¬M (x))
2. ¬∀x(S(x) → M (x))
3. ∀x¬(S(x) → M (x))
練習問題 5 以下の文を述語論理の論理式に翻訳して下さい。
1. 全ての哲学者は人間である。
2. ある人間は哲学者である。
3. アリストテレスを尊敬しない論理学者がいる。
4. 全ての人が 80 歳以下であるとは限らない。
5. 全ての人が 80 歳以下ではない。
6. 80 歳以下でない人がいる。
7. 80 歳以下の人間は存在しない。
8. すべての人間は死ぬ。
9. 全ての人間は植物でない。
8
10. ある人間は死ぬ。
11. ある人間は植物でない。
12. 全ての鳥は黒いとは限らない。
13. 全ての兄弟は互いに似ている。
練習問題 6 次の英文を論理式に翻訳せよ。ただし、
• G(∗) : ∗ wears glasses
• S(∗) : ∗ wears sneakers
• J(∗) : ∗ wears jeans
• A(∗) : ∗ is an artist
とする。
1. Everyone wears sneakers.
2. Everyone wears jeans and sneakers.
3. Every artist wears jeans.
4. Everyone who wears jeans wears sneakers.
5. All the artist wearing glasses wear sneakers.
6. If one wears jeans, then he wears glasses.
7. If an artist wears glasses, then he wears jeans.
8. Nobody wears sneakers.
9. Everyone doesn’t wear sneakers.
10. No artist wears sneakers.
11. It is not the case that every artist wears sneakers.
12. Someone wears sneakers.
13. There are someone who wears jeans and sneakers.
14. Some artist wears jeans.
15. Someone is an artist wearing jeans.
16. There is someone who is an artist and wears jeans.
17. Someone doesn’t wear sneakers.
9
練習問題 7 次の日本語を論理式に書き換えよ。ただし、変項の指す範囲は料理に限って
よい。また、「M (∗) : ∗ は肉料理である」「F (∗) : ∗ は私の好物である」とする。
1. 私には好物の肉料理はない。
2. 肉料理じゃない私の好物もある。
3. 肉料理には私の好物はない。
4. 肉料理がみんな私の好物というわけではございません。
5. 私の好きなのは肉料理だけだ。
6. 私が好きなのは肉料理以外のものに限られます。
7. 肉料理は何でも好きです。
8. 肉料理以外には好きなんものはありません。
9. 肉料理以外なら何でも好きです。
10. 肉料理にもそれ以外の料理にも好きなものがあります。
練習問題 8 次の論理式を日本語文に翻訳し、日本語文は論理式に翻訳してください。
「S(∗):
∗ は学生である」「T (∗):∗ は教師である」「L(∗):∗ は怠け者である」「Q(∗1 , ∗2 ):∗1 は ∗2
が好きだ」とする。
1. ∃x(S(x) ∧ ∀y(T (y) → (Q(x, y))))
2. ∀x(L(x) → ∀y(T (y) → ¬Q(x, y)))
練習問題 9 次の論理式を日本語に翻訳せよ。ただし、
「J(∗) : ∗ は日本人である」
「P (∗) :
∗ は平和主義者である」「I(∗) : ∗ は個人主義者である」とする。
1. ∃x(J(x) ∧ ¬P (x))
2. ∀x(P (x) → J(x))
3. ∀x(I(x) → ¬J(x))
4. ∃x(J(x) ∧ ¬(P (x) ∨ I(x)))
5. ∀x(J(x) → (P (x) ∨ I(x)))
6. ¬∃x(J(x) ∧ P (x))
7. ¬∀x(J(x) → P (x))
8. ¬∀x(J(x) → ¬P (x))
9. ¬∃x(J(x) ∧ (P (x) ∧ I(x)))
10. ¬∃x(J(x) ∧ ¬(P (x) ∨ I(x)))
10
練習問題 10 次の文を記号化して下さい。
1. ムササビは鳥ではない。
2. 飛ばない鳥もいる。
3. 強くなければ男じゃない。
4. 必ずしも強くなければ男じゃないというわけではない。
5. 誰もがタロウのことを好きだ。
6. タロウには誰か好きな人がいる。
7. 誰にでも、誰か好きではない人がいる。
8. 誰からも好かれる人はいない。
9. もしハナコがタロウを好きではないのならば、タロウは誰からも好かれていないこ
とになる。(変項は人間に限定してよい。)
10. 人間以外の動物は笑わない。
11. 両親がともにA型でも、必ずしも子供もA型とは限らない。
12. 誰からも好意をもたれ、しかも誰に対しても好意をもつような人はいない。
(変項は
人間に限定してよい。)
13. 前提 1 毒のあるものは食べられない。
前提 2 あるキノコには毒がある。
結論 それゆえ、あるキノコは食べられない。
14. 前提 1 誰かがツキヨタケを食べてしまった。
前提 2 ツキヨタケを食べると下痢をする。
結論 それゆえ、誰かが下痢をしている。
11
練習問題 11 述語記号 A, U, L, B は以下を意味するものとする。
• A(x): x is from Alpha Centauri.
• U (x): x is a UFO.
• L(x): x is an alien.
• B(x): x abducts people. (abduct:誘拐する)
このとき、以下の英文を論理式に翻訳してください。
1. There exists an alien.
2. Some aliens are from Alpha Centauri.
3. No UFO comes from Alpha Centauri.
4. Every alien abducts people.
5. Only aliens from Alpha Centauri abduct people.
6. Some UFO’s are not from Alpha Centauri.
7. Some aliens do not abduct people.
8. Not every UFO comes from Alpha Centauri.
9. Aliens come only from Alpha Centauri.
12
練習問題 12 以下の推論を形式化せよ。
1. 前提 1 オーゥ!東洋の人みんなカンフーできマース。
前提 2 日本の人は東洋の人ね。
結論 ダカラ日本の人みんなカンフーできるはずヨ。
2. 前提 1 真のフォースを知る者は争いを好まぬものじゃ。
前提 2 しかるに人間はみな争いが好きなものじゃ。
結論 じゃによって人間どもはみな真のフォースを知る者ではない。
3. 前提 1 この子は肉料理しか食べない。
前提 2 肉料理は体に悪い。
結論 この子の食べるものは体に悪いものばかりだ。
4. 前提 1 この家にいる動物は猫だけである。
前提 2 月を眺めることが好きな動物はみんなペットに向いている。
前提 3 私は嫌いな動物を避ける。
前提 4 夜散歩しない動物はみな肉食ではない。
前提 5 猫はみな必ずねずみを殺す。
前提 6 この家にいない動物はみな私を好きにならない。
前提 7 カンガルーはペットに適さない。
前提 8 肉食動物でないものはすべてねずみを殺さない。
前提 9 私は私のことを好きにならない動物は嫌いだ。
前提 10 夜散歩する動物はつねに月を眺めることを好む。
結論 私はカンガルーを避ける。
13
練習問題 13 以下の文を述語論理の論理式に翻訳して下さい。
• 「∗1 と ∗2 は等しい」を ∗1 = ∗2
• 「∗1 は ∗2 よりも大きい」を ∗1 > ∗2 (< も同様。)
• 「∗ は自然数である」を N (∗)
• 「∗ の次の数」を ∗′
1. 0 は自然数である。
2. ある数が自然数ならば、その次の数がひとつだけ存在し、その数もまた自然数である。
3. x の次の数と y の次の数が等しいならば、x と y も等しい。
4. その次の数が 0 となるような自然数は存在しない。
5. 最大の自然数は存在しない。
6. 「∗ は P である」を P (∗) とする。
前提 1 0 は P である。
前提 2 任意の自然数について、その自然数が P であるとすると、次の自然数も P
である。
結論 すべての自然数が P である。
14