数理論理学 例題・演習

数理論理学 例題・演習
文章から論理式への翻訳 1
文章から論理式への翻訳 2
証明法
自然演繹の証明 (直観主義論理)
自然演繹の証明 (古典論理)
論理式の意味付け
導出原理
山田 俊行
http://www.cs.info.mie-u.ac.jp/~toshi/lectures/mathlogic/
2017 年 1 月
1
数理論理学 配布資料 (山田)
文章から論理式への翻訳 1
(例題・演習)
数に関する数学的な主張を,論理式で表す.
2 つ書かれた論理式のうち,上段が正式な (略さない) 表記,下段が略記である.
●数に関する定義
x の絶対値は y (x が非負なら y は x に等しく,負なら −x に等しい)
(x ≥ 0 ⇒ y = x) ∧ (x < 0 ⇒ y = −x)
(x ≥ 0 ⇒ y = x), (x < 0 ⇒ y = −x)
x は y と z の最大値 (x は,y や z 以上で,y と z の少なくとも一方に等しい)
x ≥ y ∧ x ≥ z ∧ (x = y ∨ x = z)
x ≥ y, x ≥ z, (x = y ∨ x = z)
x は偶数 (x は 2 の倍数)
∃k (k ∈ Z ∧ x = 2k)
∃k ∈ Z x = 2k
x は y と z の公約数 (x は y の約数であり z の約数でもある)
∃i (i ∈ Z ∧ ix = y) ∧ ∃j (j ∈ Z ∧ jx = z)
∃i ∈ Z ix = y, ∃j ∈ Z jx = z
n は 素数 (n は 2 以上で約数は 1 と n だけ)
n ≥ 2 ∧ ∀k ∀m (m ∈ N ∧ k ∈ N ∧ n = km ⇒ k = 1 ∨ k = n)
n ≥ 2 ∧ ∀k, m ∈ N (n = km ⇒ k = 1 ∨ k = n)
実数の集合は稠密 (異なる 2 つの実数の間には別の実数がある)
∀x ∀y
x ∈ R ∧ y ∈ R ∧ x < y ⇒ ∃z (z ∈ R ∧ x < z ∧ z < y)
∀x, y ∈ R (x < y ⇒ ∃z ∈ R x < z < y)
●数に関する性質
y は 0 以上 1 未満の実数
y∈R ∧ 0≤y ∧ y<1
y ∈ R, 0 ≤ y < 1
整数の加法は交換法則を満たす
∀x ∀y (x ∈ Z ∧ y ∈ Z ⇒ x + y = y + x)
∀x, y ∈ Z x + y = y + x
(x + y)2 = x2 + 2xy + y 2 は,実数 x, y に関する恒等式である
∀x ∀y (x ∈ R ∧ y ∈ R ⇒ (x + y)2 = x2 + 2xy + y 2 )
∀x, y ∈ R (x + y)2 = x2 + 2xy + y 2
2
すべての自然数 m, n について,m2 = n2 ならば m = n
∀m ∀n (m ∈ N ∧ n ∈ N ∧ m2 = n2 ⇒ m = n)
∀m, n ∈ N (m2 = n2 ⇒ m = n)
方程式 x2 + 4x + 1 = 0 には実数解がある
∃x (x ∈ R ∧ x2 + 4x + 1 = 0)
∃x ∈ R x2 + 4x + 1 = 0
負の偶数がある
∃x ∃k (x ∈ Z ∧ x < 0 ∧ k ∈ Z ∧ x = 2k)
∃x, k ∈ Z (x < 0, x = 2k)
k は 自然数 m, n を使って 2m + 3n の形に書ける
∃m ∃n (m ∈ N ∧ n ∈ N ∧ k = 2m + 3n)
∃m, n ∈ N k = 2m + 3n
任意の整数 x, y に対して,y を足すと x になる整数がただ 1 つある
∀x ∀y x ∈ Z ∧ y ∈ Z ⇒
∃z (z ∈ Z ∧ x = y + z) ∧
∀z1 ∀z2 (z1 ∈ Z ∧ x = y + z1 ∧ z2 ∈ Z ∧ x = y + z2 ⇒ z1 = z2 )
∀x, y ∈ Z ∃ ! z ∈ Z x = y + z
(∃ ! は一意存在の略記法)
実数関数 exp(x) は単調増加関数である.
∀x ∀y x ∈ R ∧ y ∈ R ∧ x < y ⇒ exp(x) < exp(y)
∀x, y ∈ R x < y ⇒ exp(x) < exp(y)
●演習問題
次の文章を論理式で表せ.明示されていない場合,対象領域は整数全体であると考える.論理式が複雑
な場合には,補助的な述語を定義して使ってもよい.
(1) n は 0 以上 10 未満の自然数である.
(2) x と y の積が 0 なら,少なくとも一方は 0 である.
(3) x は正の奇数である.
(4) 不等式 x2 + 4x + 4 ≤ 3 には自然数の解がない.
(5) z の立方は 2 つの整数の立方の和として表せる.
(6) x と y は異なる約数をもつ.
(7) ある整数は,全ての正整数の約数である.
(8) x は 2 つの整数 y と z の最大公約数である.
(9) 最大の偶数は存在しない.
3
数理論理学 配布資料 (山田)
文章から論理式への翻訳 2
(例題・演習)
集合論 (集合・関係・写像・順序) の主な定義を論理式で表す.
2 つ書かれた論理式の上段が正式な (略さない) 表記,下段が略記である.
●集合に関する定義
(集合に関する基本的な定義は資料集 1 の「集合と論理」に書かれている.)
集合 A は集合 B の真部分集合である.
∀x (x ∈ A ⇒ x ∈ B) ∧ ¬ ∀x (x ∈ A ⇔ x ∈ B)
∀x ∈ A x ∈ B ∧ ∃x ∈ B x ∈
/A
A ⊆ B ∧ A 6= B
集合 C1 , · · · , Cn は集合 C の直和分割である.
x ∈ C ⇔ ∃i (i ∈ {1, · · · , n} ∧ x ∈ Ci ) ∧
∀i ∀j i ∈ {1, · · · , n} ∧ j ∈ {1, · · · , n} ∧ ¬ i = j ⇒ ¬ ∃x (x ∈ Ci ∧ x ∈ Cj )
n
[
Ci , ∀i, j ∈ {1, · · · , n} (i 6= j ⇒ Ci ∩ Cj = ∅)
C=
∀x
i=1
● 2 項関係に関する定義
集合 A 上の 2 項関係 R は反射律を満たす.
∀x (x ∈ A ⇒ xRx)
∀x ∈ A xRx
集合 A 上の 2 項関係 R は推移律を満たす.
∀x ∀y ∀z (x ∈ A ∧ y ∈ A ∧ z ∈ A ∧ xRy ∧ yRz ⇒ xRz)
∀x, y, z ∈ A (xRy, yRz ⇒ xRz)
集合 A 上の 2 項関係 R は反対称律を満たす.
∀x ∀y (x ∈ A ∧ y ∈ A ∧ xRy ∧ yRx ⇒ x = y)
∀x, y ∈ A (xRy, yRx ⇒ x = y)
●写像に関する定義
集合 A から集合 B への関係 f は写像である.
∀x (x ∈ A ⇒ ∃y (y ∈ B ∧ xf y)) ∧ ∀x ∀y ∀y ′ (xf y ∧ xf y ′ ⇒ y = y ′ )
∀x ∈ A ∃y ∈ B xf y, ∀x, y, y ′ (xf y, xf y ′ ⇒ y = y ′ )
∀x ∈ A ∃ ! y ∈ B xf y
集合 A から集合 B への写像 f は単射である.
∀x ∀x′ (x ∈ A ∧ x′ ∈ A ∧ ¬ x = x′ ⇒ ¬ f (x) = f (x′ ))
∀x, x′ ∈ A (x 6= x′ ⇒ f (x) 6= f (x′ ))
4
集合 A 上の 2 項演算 ∗ は交換律を満たす.
∀x ∀y (x ∈ A ∧ y ∈ A ⇒ x ∗ y = y ∗ x)
∀x, y ∈ A x ∗ y = y ∗ x
●半順序に関する定義
半順序集合 (A, ) の要素 a と b は比較不能である.
¬ab ∧ ¬ba
a b, b a
半順序集合 (A, ) の要素 a は A の部分集合 X の最大元である.
a ∈ X ∧ ∀x (x ∈ X ⇒ x a)
a ∈ X, ∀x ∈ X x a
●演習問題
次の性質の定義を論理式で表せ.離散数学の教科書にある定義を参考にするとよい.
(1) 集合 A 上の 2 項関係 R は空関係である. (R = ∅)
(2) 対 (x, y) は集合 A 上の 2 項関係 R と S の合成関係を満たす. (x R ◦ S y)
(3) 集合 A 上の 2 項関係 R は対称律を満たす.
(4) 集合 A から集合 B への写像 f と g は等しい. (f = g)
(5) 集合 A から集合 B への写像 f は全射である.
(6) 集合 A 上の 2 項演算 ∗ は結合律を満たす.
(7) 半順序集合 (A, ) の順序関係 は線形な関係である.
(8) 半順序集合 (A, ) の要素 a は A の部分集合 X の極大元である.
(9) 半順序集合 (A, ) 上の写像 f は単調 (増加) 写像である.
5
数理論理学 配布資料 (山田)
証明法
(例題・演習)
証明法をふまえて,集合論(集合・関係・写像・順序)に関する性質を証明する.
●集合に関する性質の証明
問 1 (集合の共通部分と補集合との関係)
任意の集合 A, B について,A ∩ B = ∅
答1
⇔
A ⊆ B c という性質が成り立つことを証明
せよ.
(⇒) A ∩ B = ∅ を仮定する.部分集合の定義を使って A ⊆ B c を証明するために,x ∈ A を
仮定して x ∈ B c を示す.x ∈ B c を示すには,補集合の定義から,x ∈ B を仮定して矛盾が
生じることを示せばよい.2 つの仮定 x ∈ A と x ∈ B と共通部分の定義から,x ∈ A ∩ B .
これと仮定 A ∩ B = ∅ より x ∈ ∅ であるが,これは空集合の定義に矛盾する.
(⇐) A ⊆ B c を仮定する.A ∩ B = ∅ を証明するため,空集合の定義を使って,x ∈ A ∩ B
を満たす x があると仮定して矛盾が生じることを示す.仮定 x ∈ A ∩ B と共通部分の定義
より x ∈ A かつ x ∈ B である.x ∈ A と仮定 A ⊆ B c と部分集合の定義から,x ∈ B c .補
集合の定義より,これは x ∈ B に矛盾する.
問 2 (集合の包含関係と差の性質)
任意の集合 A, X, Y について,X ⊆ Y ならば A − Y ⊆ A − X ,という性質が成り立つこ
答2
とを証明せよ.
X ⊆ Y を仮定する.さらに,部分集合の定義を使って,x ∈ A − Y と x ∈
/ A − X を満た
す要素 x があると仮定して矛盾を導く.x ∈ A − Y だから,差の定義から,x ∈ A かつ
x∈
/ Y である.一方,x ∈
/ A − X だから,差の定義から,(1) x ∈
/ A または (2) x ∈ X ,
である.(1) と (2) のどちらの場合にも矛盾が生じることを示す. (1) は x ∈ A に矛盾す
る.(2) と仮定 X ⊆ Y と部分集合の定義より導かれる x ∈ Y は,x ∈
/ Y に矛盾する.
●写像に関する性質の証明
問 3 (自然数上の演算の全射性)
自然数上の演算 f : N → N を,n が偶数のとき f (n) = n + 1,n が奇数のとき f (n) =
2 × (n div 4),と定める.ここで,div は自然数上の除算を表す.演算 f が全射であること,
答3
つまり,各自然数 m について,f (n) = m を満たす自然数 n があることを証明せよ.
任意の自然数 m について,m が偶数でも奇数でも,f (n) = m となる自然数 n が存在す
ることを示す.(1) m が偶数のときは,n = 2m + 1 とおく.偶数の定義より,m = 2m′
を満たす自然数 m′ があり,n は m′ を使って n = 2m + 1 = 4m′ + 1 と表せる.n は奇数
だから,f の定義より f (n) = 2 × ((4m′ + 1) div 4) = 2m′ = m.(2) m が奇数のときは,
n = m − 1 とおく.m ≥ 1 なので,n は自然数である.奇数の定義より,m = 2m′ + 1 を
満たす自然数 m′ があり,n は m′ を使って n = m − 1 = (2m′ + 1) − 1 = 2m′ と表せる.
n は偶数だから,f の定義より f (n) = 2m′ + 1 = m.
6
●集合と順序に関する性質の証明
問 4 (集合演算の単調性)
自然数全体のベキ集合上の演算 F : P(N) → P(N) を,N − X = ∅ のとき F (X) = X ,
N − X 6= ∅ のとき F (X) = X ∪ { min(N − X) },と定める.ここで,min X は,自然数
集合 X の最小値を表す.演算 F が集合の包含関係について単調であること,つまり,任
意の自然数集合 X, Y について,X ⊆ Y ならば F (X) ⊆ F (Y ),という性質が成り立つこ
とを証明せよ.
答4
任意の自然数集合 X, Y について,X ⊆ Y を仮定し,F (X) ⊆ F (Y ) を証明する.この包
含関係を証明するため,任意の自然数 n について,n ∈ F (X) を仮定し,n ∈ F (Y ) を示
す.仮定 n ∈ F (X) と F (X) の定義より,(1) n ∈ X であるか,または,(2) X − N 6= ∅
かつ n = min(N − X) であるから,この場合分けで,n ∈ F (Y ) を示す.(1) n ∈ X のと
き,仮定 X ⊆ Y より n ∈ Y だから,F (Y ) の定義より n ∈ F (Y ).(2) N − X 6= ∅ かつ
n = min(N − X) のとき,n ∈ Y か否かに分けて n ∈ F (Y ) を示す.(2–1) n ∈ Y のとき,
F (Y ) の定義より n ∈ F (Y ) である.(2–2) n ∈ N − Y のとき,N − Y 6= ∅ だから,F (Y )
の定義より,n = min(N − Y ) が証明できれば n ∈ F (Y ) を導ける.n ∈ N − Y のときに
n が N − Y の最小値であることを証明するため,N − Y に属する任意の自然数 m につい
て n ≤ m を示す.m ∈ N − Y のとき,仮定 X ⊆ Y と問 2 の結果より m ∈ N − X が成り
立つ.今考えている (2) の場合,n は N − X の最小値だから,m ∈ N − X より n ≤ m で
ある.
●演習問題
次の各主張の真偽を述べて,証明または反証を与えよ.
(1) 任意の集合 A, B, C について,A ∪ B ⊆ C ⇔ A ⊆ C ∧ B ⊆ C .
(2) 任意の集合 A, B, C, D について,A × B ⊆ C × D ⇒ A ⊆ C ∧ B ⊆ D.
(3) 自然数集合どうしの共通部分を求める演算 ∩ には単位元が存在する.つまり,自然数集合 A が存在
して,任意の自然数集合 B について,A ∩ B = B ∧ B ∩ A = B .
(4) 自然数上の演算 f : N → N を,n が偶数のとき f (n) = n div 2,n が奇数のとき f (n) = 2×(n div 2)+
1,と定める.ここで,div は自然数上の除算を表す.このとき,演算 f は全射である.つまり,各
自然数 m について,f (n) = m を満たす自然数 n がある.
(5) 任意の集合上に 2 項関係 R が与えられたとき,同じ集合上の 2 項関係 R′ を xR′ y ⇔ xRy ∧ ¬ yRx
により定める.このとき,R が推移的 (xRy かつ yRz なら常に xRz) ならば R′ も推移的 (xR′ y か
つ yR′ z なら常に xR′ z) である.
7
数理論理学 配布資料 (山田)
自然演繹の証明 (直観主義論理)
(例題・演習)
各種の論理法則を導く自然演繹の証明図の例を以下に示す.
●命題論理の証明
問1
以下の各論理式を導く,自然演繹による証明図を示せ.
(1) P ⇒ (Q ⇒ Q)
(2) P ∧ (P ⇒ Q) ⇒ Q
(3) P ∧ Q ⇒ ¬ (P ⇒ ¬Q)
(4) P ∨ Q ⇒ (¬P ⇒ Q)
答1
(1)
1
Q
⇒I, 1
Q⇒Q
⇒I
P ⇒ (Q ⇒ Q)
(注意 ※ 1)
(注意 ※ 2)
(※ 1) 仮定をそのまま (0 回の規則適用で) 規則の前提として使える
(※ 2) 仮定を使わなくてもよい (0 個の仮定除去)
(2)
1
1
P ∧ (P ⇒ Q)
P ∧ (P ⇒ Q)
∧E1
∧E2
P
P ⇒Q
⇒E
Q
⇒I, 1
P ∧ (P ⇒ Q) ⇒ Q
(注意 ※ 3)
(※ 3) 同じ仮定を複数使ったり同時に除去したりできる
(3)
1
P ∧Q
2
∧E1
P
P ⇒ ¬Q
⇒E
¬Q
⇒E
⊥
⇒I, 2
¬ (P ⇒ ¬Q)
⇒I, 1
P ∧ Q ⇒ ¬ (P ⇒ ¬Q)
1
P ∧Q
∧E2
Q
(※ 4) ¬Q は Q ⇒ ⊥ の略記
(※ 5) ¬ (P ⇒ ¬Q) は (P ⇒ ¬Q) ⇒ ⊥ の略記
(4)
3
P
2
¬P
⇒E
⊥
1
4
⊥
P ∨Q
Q
Q
∨E, 3, 4
Q
⇒I, 2
¬P ⇒ Q
⇒I, 1
P ∨ Q ⇒ (¬P ⇒ Q)
8
(注意 ※ 4)
(注意 ※ 5)
●述語論理の証明
問2
以下の各論理式を導く,自然演繹による証明図を示せ.
(1) ∀x P (x) ∧ Q(x) ⇒ ∀x P (x) ∧ ∀x Q(x)
(2) P ∧ ∃x Q(x) ⇒ ∃x P ∧ Q(x)
(3) ∃x ∀y R x, y ⇒ ∀y ∃x R x, y
(4) ∃x ∀y R f (x), y ⇒ ∀y ∃x R x, g(x, y)
答2
(1)
1
∀x P (x) ∧ Q(x)
1
∀x P (x) ∧ Q(x)
∀E
∀E
P (a) ∧ Q(a)
P (b) ∧ Q(b)
∧E1
∧E2
P (a)
Q(b)
∀I
∀I
∀x P (x)
∀x Q(x)
∧I
∀x P (x) ∧ ∀x Q(x)
⇒I, 1
∀x P (x) ∧ Q(x) ⇒ ∀x P (x) ∧ ∀x Q(x)
(注意 ※ 1, ※ 2)
(※ 1) 結論 ∀x P (x) や結論で有効な仮定 1 に a が現れないので ∀I が使える
(※ 2) 結論 ∀x Q(x) や結論で有効な仮定 1 に b が現れないので ∀I が使える
(2)
1
P ∧ ∃x Q(x)
2
∧E1
P
Q(a)
1
∧I
P ∧ Q(a)
P ∧ ∃x Q(x)
∧E2
∃I
∃x Q(x)
∃x (P ∧ Q(x))
∃E, 2
∃x (P ∧ Q(x))
⇒I, 1
P ∧ ∃x Q(x) ⇒ ∃x (P ∧ Q(x))
(注意 ※ 3)
(※ 3) 結論 ∃x (P ∧ Q(x)) や結論で有効な仮定 1 に a が現れないので ∃E が使える
(3)
2
∀y R(a, y)
∀E
R(a, b)
1
∃I
∃x ∀y R(x, y) ∃x R(x, b)
∃E, 2
∃x R(x, b)
∀I
∀y ∃x R(x, y)
⇒I, 1
∃x ∀y R(x, y) ⇒ ∀y ∃x R(x, y)
(注意 ※ 4)
(注意 ※ 5)
(※ 4) 結論 ∃x R(x, b) や結論で有効な仮定 1 に a が現れないので ∃E が使える
(※ 5) 結論 ∀y ∃x R(x, y) や結論で有効な仮定 1 に b が現れないので ∀I が使える
規則 ∃E と ∀I の適用順を逆にしても導出できる
9
(4)
2
∀y R(f (a), y)
∀E
R(f (a), g(f (a), b))
1
∃I
∃x R(x, g(x, b))
∃x ∀y R(f (x), y)
∃E, 2
∃x R(x, g(x, b))
∀I
∀y ∃x R(x, g(x, y))
⇒I, 1
∃x ∀y R(f (x), y) ⇒ ∀y ∃x R(x, g(x, y))
(注意
(注意
(注意
(注意
※ 6)
※ 7)
※ 8)
※ 9)
(※ 6) ∀E では,変数 y を変数でない項 g(f (a), b) にも具体化できる
(※ 7) ∃I では,変数でない項 f (a) も変数 x に置換できる
(※ 8) 結論 ∃x R(x, g(x, b)) や結論で有効な仮定 1 に a が現れないので ∃E が使える
(※ 9) 結論 ∀y ∃x R(x, g(x, y)) や結論で有効な仮定 1 に b が現れないので ∀I が使える
(3) の証明と同様に,規則 ∃E と ∀I の適用順を逆にしても証明できる
●演習問題 1
以下に示す命題論理の恒真式が自然演繹で証明可能であることを示せ.
∗
∗∗
∗
∗
∗∗
∗
∗∗
∗∗
(1)
(2)
P ∨P ⇒ P
P ∨ (Q ∨ R) ⇒ (P ∨ Q) ∨ R
(3)
(4)
P ∧Q ⇒ Q∧P
P ∨ (P ∧ Q) ⇒ P
(5)
(6)
P ∧ (Q ∨ R) ⇒ (P ∧ Q) ∨ (P ∧ R)
P ⇒ ¬¬P
(7)
(8)
¬ (P ∨ Q) ⇒ ¬ P ∧ ¬ Q
(P ∨ Q) ∧ ¬ P ⇒ Q
なお,∗ 印が多いほど難しい.余力があれば,逆方向の含意命題 や 他の恒真式 も証明せよ.
●演習問題 2
以下に示す述語論理の恒真式が自然演繹で証明可能であることを示せ.
∗
∗
∗∗
∗∗∗
∗∗
∗∗
∗∗
∗∗
(1)
(2)
∃x P ⇒ P
∀x P (x) ⇒ ∀y P (y)
(3)
(4)
P ∧ ∀x Q(x) ⇒ ∀x P ∧ Q(x)
∃x P (x) ∨ ∃x Q(x) ⇒ ∃x P (x) ∨ Q(x)
∀x P (x) ∨ ∀x Q(x) ⇒ ∀x P (x) ∨ Q(x)
∀x ∀y R(x, y) ⇒ ∀y ∀x R(x, y)
(5)
(6)
(7)
(8)
∀x ¬ P (x) ⇒ ¬ ∃x P (x)
∀x P (x) ⇒ Q(x) ⇒ ∃x P (x) ⇒ ∃x Q(x)
なお,∗ 印が多いほど難しい.余力があれば,逆方向の含意命題 や 他の恒真式 も証明せよ.
10
数理論理学 配布資料 (山田)
自然演繹の証明 (古典論理)
(例題・演習)
各種の論理法則を導く自然演繹の証明図のうち,背理法規則が必要な例を以下に示す.
●命題論理の証明
問1
以下の各論理式を導く,自然演繹による証明図を示せ.排中律 (EM) を使ってもよい.
(1) ¬ ¬ P ⇒ P
(2) (P ⇒ Q) ⇒ ¬ P ∨ Q
(3) ¬ (P ∧ Q) ⇒ ¬ P ∨ ¬ Q
(4) (P ∧ Q ⇒ R ∧ S) ⇒ (P ⇒ R) ∨ (Q ⇒ S)
答1
(1)
(2)
3
¬P
2
¬P
1
¬¬P
⇒E
⊥ ⊥ , 2
c
P
⇒I, 1
¬¬P ⇒ P
P ∨¬P
EM
2
P
P
¬¬P ⇒ P
1
¬¬P
⇒E
⊥
⊥
P ∨E, 2, 3
⇒I, 1
2
P
1
P ⇒Q
3
⇒E
Q
¬P
∨I2
∨I1
EM
P ∨ ¬P
¬P ∨ Q
¬P ∨ Q
∨E, 2, 3
¬P ∨Q
⇒I, 1
(P ⇒ Q) ⇒ ¬ P ∨ Q
2 4
P Q
∧I
P ∧Q
(3)
1
¬ (P ∧ Q)
⇒E
⊥ ⇒I, 4
3
¬Q
¬P
∨I2
∨I1
EM
P ∨ ¬P
¬P ∨ ¬Q
¬P ∨ ¬Q
∨E, 2, 3
¬P ∨¬Q
⇒I, 1
¬ (P ∧ Q) ⇒ ¬ P ∨ ¬ Q
2
P
(4)
5
Q
P ∧Q
Q ∨ ¬Q
P ∨ ¬P
EM
EM
∧I
1
P ∧Q ⇒ Q∧S
R∧S
∧E2
S
S
Q⇒S
⇒E
4
Q
6
¬Q
⇒E
⊥
⊥
S
∨E, 5, 6
⇒I, 4
(P ⇒ R) ∨ (Q ⇒ S)
∨I2
(P ⇒ R) ∨ (Q ⇒ S)
(P ∧ Q ⇒ R ∧ S) ⇒ (P ⇒ R) ∨ (Q ⇒ S)
11
3
¬P
⇒E
⊥
⊥
R
⇒I, 7
P ⇒R
∨I1
(P ⇒ R) ∨ (Q ⇒ S)
∨E, 2, 3
⇒I, 1
7
P
●述語論理の証明
問2
以下の各論理式を導く,自然演繹による証明図を示せ.
(1) ¬ ∀x ¬P (x) ⇒ ∃x P (x)
(2) P ⇒ ∃x Q(x) ⇒ ∃x P ⇒ Q(x)
答2
(1)
4
P (a)
3
∃I
∃x P (x)
¬ ∃x P (x)
⇒E
⊥
⇒I, 4
¬ P (a)
1
∀I
∀x ¬ P (x)
¬ ∀x ¬ P (x)
⇒E
⊥
2
EM
⊥
∃x P (x) ∨ ¬ ∃x P (x)
∃x P (x)
∃x P (x)
∨E, 2, 3
∃x P (x)
⇒I, 1
¬ ∀x ¬P (x) ⇒ ∃x P (x)
※ ∀I での変数条件の成立 に注意
(2)
2
P
P ∨ ¬P
EM
5
3
4
P ¬P
⇒E
Q(a)
⊥
1
⇒I
⊥
P ⇒ Q(a)
Q(b)
P ⇒ ∃x Q(x)
⇒I, 5
⇒E
∃I
∃x Q(x)
∃x (P ⇒ Q(x))
P ⇒ Q(b)
∃E, 4
∃I
∃x (P ⇒ Q(x))
∃x (P ⇒ Q(x))
∨E, 2, 3
∃x (P ⇒ Q(x))
⇒I, 1
(P ⇒ ∃x Q(x)) ⇒ ∃x (P ⇒ Q(x))
※ ⇒I での 0 個の仮定除去 (中央最上段) と ∃E での変数条件の成立 に注意
●演習問題 3
以下の論理式が自然演繹で証明可能であることを示せ.∗ 印は難度を表す.
∗∗
(1)
(¬ P ⇒ Q) ⇒ (¬ Q ⇒ P )
∗∗∗
∗∗∗∗
(2)
(3)
(P ⇒ Q ∨ R) ⇒ (P ⇒ Q) ∨ (P ⇒ R)
¬ (P ⇒ Q) ⇒ P ∧ ¬ Q
∗∗∗
(4)
∗∗∗∗∗
(5)
(6)
¬ ∃x ¬ P (x) ⇒ ∀x P (x)
∀x P (x) ⇒ Q ⇒ ∃x P (x) ⇒ Q
∀x P (x) ⇒ ∃x Q(x) ⇒ ∃x P (x) ⇒ Q(x)
∗∗∗∗∗
12
数理論理学 配布資料 (山田)
論理式の意味付け
(例題・演習)
述語論理の意味論に関する問題とその解答例を以下に示す.
●構造のもとでの論理式の真偽
問1
対象定数 c と 1 変数関数記号 f と 2 変数関数記号 g と 1 変数述語記号 P を要素として含
む言語 L を考える.この言語への意味付けのための構造 A = (U, I) を,以下の通りに定
める.対象領域を U = N と定め,各記号の解釈 I を次の通りに定める.
cI
=
0
(記号 c を自然数の 0 と解釈)
I
f (n)
g I (m, n)
=
=
n+1
m+n
(記号 f を自然数に 1 を足す関数と解釈)
(記号 g を自然数の和の関数と解釈)
PI
=
{n ∈ N | n は偶数 }
(記号 P を「偶数である」という述語と解釈)
以下の各論理式が構造 A で真 (正しい) か偽 (正しくない) かを,理由と共に答えよ.
(1) P (f (c))
(2) ∃x P (f (x))
(3) ∀x ¬P (f (g(x, x)))
答1
(1) 偽である.なぜなら,構造 A のもとで P (f (c)) は「1 は偶数である」を意味するが,
1 は偶数ではないからである.なお,自然数の部分集合として表現された上記の述語
P I を,真理値を与える写像
(
1 (n は偶数)
I
P (n) =
0 (その他)
と 同 一 視 し て ,論 理 式 P (f (c)) の 構 造 A で の 真 理 値 P (f (c))A を 計 算 す る と
P (f (c))A = P I (f I (cI )) = P I (0 + 1) = P I (1) = 0 となることからも,論理式 P (f (c))
が構造 A のもとで偽 (A 2 P (f (c))) といえる.
(2) 真である.なぜなら,構造 A のもとで ∃x P (f (x)) は「1 を足すと偶数となる自然数
が存在する」を意味し,例えば 3 に 1 を足すと 4 という偶数になるからである.なお,
構造 A のもとでの真理値を各論理記号の意味に沿って計算すると (∃x P (f (x)))A =
max{P I (f I (n)) | n ∈ N} = max{P I (n + 1) | n ∈ N} = max{0, 1} = 1 となる.
(3) 真である.なぜなら,∀x ¬P (f (g(x, x))) は「どの自然数 n についても,2n + 1 は
偶数ではない」を意味するが,n が自然数なら 2n + 1 は奇数だからである.構造 A
のもとでの真理値は (∀x ¬P (f (g(x, x))))A = min{1 − P I (f I (g I (n, n))) | n ∈ N} =
min{1 − P I (2n + 1) | n ∈ N} = min{1 − 0 | n ∈ N} = min{1} = 1 である.
13
●論理式が真となる構造
問2
論理式 ∀x (P (x) ⇒ Q(x)) が充足可能であることを示すため,この論理式が真となる構造
答2
を一つ示せ.
P と Q をそれぞれ「4 の倍数である」「偶数である」という述語に解釈すれば,与えられ
た論理式が真となる.(P I ⊆ QI が成り立つ解釈 I であれば,他の解釈でもよい.)
問3
論理式 ∀x (P (x) ∧ Q(x) ⇒ ¬R(x)) の意味付けを考える.
(1) この論理式が真となる構造を与えたい.対象領域を整数全体とし,P を「偶数である」,
Q を「3 の倍数である」,という述語と解釈するときの,R の解釈を与えよ.また,そ
の構造のもとで上記の論理式の真理値が真となる理由を,各論理記号の意味をふまえ
て説明せよ.
(2) (1) の結果から,上記の論理式について何が分かるか,意味論の用語を使ってひとこ
答3
とで答えよ.
(1) R は「1 である」という述語と解釈すればよい.なぜなら,x がどんな整数でも,x が
偶数でしかも x が 3 の倍数のとき,つまり,x が 6 の倍数のとき,x は 1 とはならない
からである.
(R の解釈は,x が 6 の倍数のとき常に R(x) が偽になれば何でもよい.
)
(2) 与えられた論理式が充足可能だと分かる.
●論理式が偽となる構造
問4
次の各論理式が恒真ではないことを示すため,真理値が偽となる構造をそれぞれ一つずつ
示せ.偽となる理由も簡潔に述べること.
(1) ∃x P (x) ⇒ ∀x P (x)
(2) ∀y ∃x R(x, y) ⇒ ∃x ∀y R(x, y)
(3) (∀x P (x) ⇒ ∀x Q(x)) ⇒ ∀x (P (x) ⇒ Q(x))
(4) (∃x P (x) ⇒ ∃x Q(x)) ⇒ ∀x (P (x) ⇒ Q(x))
答4
(1) 対象領域を自然数全体の集合とし,P を「偶数である」という性質と解釈する構造 A2
に対して,論理式の真理値が偽となる.A1 ∃x P (x) となり,A1 2 ∀x P (x) となる
からである.(P (x) が偽となる x が一つでもあれば,他の解釈でもよい.)
(2) 対象領域を自然数全体の集合とし,R を「1だけ大きい」という関係と解釈する構造 A1
に対して,論理式の真理値が偽となる.A2 ∀y ∃x R(x, y) となり,A2 2 ∃x ∀y R(x, y)
となるからである.(含意の前提 ∀y ∃x R(x, y) が真となり,結論 ∃x ∀y R(x, y) が偽と
なる構造は他にも多数ある.)
(3) 対象領域を自然数全体の集合とし,P を「偶数である」という性質と解釈し,Q を
「4 の倍数である」という性質と解釈する構造 A3 に対して,論理式の真理値が偽とな
る.A3 2 ∀x P (x) だから A3 ∀x P (x) ⇒ ∀x Q(x) となり,さらに A3 2 ∀x (P (x) ⇒
Q(x)) となるからである.
(4) (3) で使った構造 A3 に対して,論理式の真理値が偽となる. A3 ∃x P (x) と A3 ∃x Q(x) が成り立つから,A3 ∃x P (x) ⇒ ∃x Q(x) となり,A3 2 ∀x (P (x) ⇒ Q(x))
となるからである.
14
問5
問 1 と同じ言語を同じ対象領域で解釈する構造を考える.定数記号 c や関数記号 f, g の解
釈を問 1 の構造 A から変えずに,問 1 の論理式 (1),(2) が共に偽となるように,述語記号
答5
P に対する解釈を定めよ.
P を「0 である」という述語に解釈すれば,二つの論理式が偽となる.
問6
論理式 ∀x (P (x) ⇒ Q(x)) ⇒ ∃x (P (x) ∨ Q(x)) は恒真かどうかを,理由と共に説明せよ.
答6
恒真ではない.この論理式が偽になる構造があるからである.例えば,対象領域を自然数
全体の集合とし,P を「自然数ではない」という性質と解釈し,Q を「偶数である」とい
う性質と解釈する構造 A に対して,含意の前提が真 (A ∀x (P (x) ⇒ Q(x))) となり,含
意の結論が偽 (A 2 ∃x (P (x) ∧ Q(x))) となるからである.(P を常に偽の述語と解釈すれ
ば,Q の解釈は何でもよい.)
●演習問題
次の各論理式が恒真ではないことを示すため,真理値が偽となる構造をそれぞれ一つずつ示せ.
(1) ∀x f (x) = c
(2) ∀y ∃x f (x) = y
(3) ∀x ∀y f (x) = f (y) ⇒ x = y
(4) ∀x ¬ P (x) ∨ ∀x P (x)
(5) ∃x ¬ P (x) ⇒ ¬ ∀x P f (x)
(6) ∀x P (x) ⇒ Q(x) ⇒ ∃x Q(x) ∧ ¬ P (x)
15
数理論理学 配布資料 (山田)
導出原理
(例題・演習)
導出原理に関する問題とその解答例を以下に示す.
●命題論理における導出原理
問1
論理式 ¬P ∨ (P ∧ Q ∧ ¬R) ∨ (P ∧ R) ∨ (¬Q ∧ ¬R) が (古典論理で) 恒真であることを,導
答1
出原理を使って示せ.
与えられた論理式は論理和標準形なので,対応する四つの節 {¬P }, {P, Q, ¬R}, {P, R},
{¬Q, ¬R} から導出原理を使って空節 を導ければよい.以下に,その導出図 (の一例)
を示す.
{P, Q, ¬R} {¬Q, ¬R}
@
@
{P, ¬R} {P, R}
@
@
{P }
{¬P }
@
@
問2
論理式 (P ⇒ Q) ∧ (Q ⇒ R) ⇒ (P ⇒ R) について考える.
(1) 与えられた論理式を同値変形して,論理和標準形を求めよ.
(2) (1) の結果から得られる節に対して,導出原理を使って空節を導け.
答2
(3) (1) と (2) の結果から,与えられた論理式について分かる事を,(古典論理の) 意味論
の用語を使ってひとことで答えよ.
(1) 与えられた論理式からその論理和標準形への同値変形 (の一例) を以下に示す.
(P ⇒ Q) ∧ (Q ⇒ R) ⇒ (P ⇒ R)
⇐⇒ ¬ (¬P ∨ Q) ∧ (¬Q ∨ R) ∨ ¬P ∨ R
(⇒ の ¬ と ∨ による表現)
⇐⇒ ¬(¬P ∨ Q) ∨ ¬(¬Q ∨ R) ∨ ¬P ∨ R
(ド・モルガン)
⇐⇒
(P ∧ ¬Q) ∨ (Q ∧ ¬R) ∨ ¬P ∨ R
(ド・モルガン,二重否定除去)
(2) (1) の結果から得られる節は {P, ¬Q}, {Q, ¬R}, {¬P }, {R} の四つである.これらか
ら導出原理を使って空節 を導く導出図 (の一例) を以下に示す.
{P, ¬Q} {¬P } {Q, ¬R} {R}
@
@
@
@
{¬Q}
{Q}
HH
H
(3) 与えられた論理式が恒真であることが分かる.
16
●述語論理における導出原理
問3
答3
次の論理式が
(古典論理において) 恒真であることを,導出原理を使って示せ.
∃x ∃y ∃z ¬R(c, d) ∨ P (f (d)) ∨ R(x, y) ∧ ¬R(y, x) ∨ R(z, c) ∧ ¬P (f (z))
与えられた論理式はスコーレム標準形なので,対応する四つの節 {¬R(c, d)}, {P (f (d))},
{R(x, y), ¬R(y, x)}, {R(z, c), ¬P (f (z))} から代入を伴う導出原理を使って空節 を導け
ればよい.以下に,その導出図 (の一例) を示す.
{R(z, c), ¬P (f (z))}
{R(x, y), ¬R(y, x)}
[d/z]
[c/x, d/y]
{R(d, c), ¬P (f (d))}
{P (f (d))}
{R(c, d), ¬R(d, c)}
{¬R(c, d)}
P
P
PP
PP
PP
PP
{R(d, c)}
{¬R(d, c)}
P
PP
PP
PP
空節 が得られたので,与えられた論理式は恒真である
問4
(古典) 述語論理の導出原理に関する以下の設問に答えよ
(1) 三つの節 {¬P (x)}, {P (y), ¬Q(y, c)}, {P (f (z)), Q(f (z), z)} に対して,代入を伴う導
出原理を適用して空節を導く導出図を示せ.
(2) 前問の論理式は,∀ x P (x) ∧ ∃ y ∀ x (P (x) ⇒ Q(x, y)) ⇒ ∃ y ∀ x (P (x) ∧ Q(x, y)) と
いう論理式のスコーレム標準形である.この論理式から (1) の論理式への変形過程を
答4
示せ.
(1) 与えられた四つの節から空節 を導く導出図 (の一例) を以下に示す.
{P (y), ¬Q(y, c)}
[f (c)/y]
{P (f (z)), Q(f (z), z)}
[c/z]
{¬P (x)}
{P (f (c)), ¬Q(f (c), c)}
{P (f (c)), Q(f (c), c)}
H
H
HH
[f (c)/x]
HH
HH
{¬P (f (c))}
{P (f (c))}
PP
PP
PP
PP
P
(2) (2) の論理式から (1) のスコーレム標準形への変形 (の一例) を以下に示す.
∀xP (x) ∧ ∃y ∀x P (x) ⇒ Q(x, y) ⇒ ∃y ∀x P (x) ∧ Q(x, y)
∨ ∃y ∀x P (x) ∧ Q(x, y)
→ ¬ ∀x P (x) ∧ ∃y ∀x ¬P (x) ∨ Q(x, y)
→ ∃x ¬P (x) ∨ ∀y ∃x P (x) ∧ ¬Q(x, y) ∨ ∃y ∀x P (x) ∧ Q(x, y)
→ ∃x ¬P (x) ∨ ∀y ′ ∃y P (y) ∧ ¬Q(y, y ′ ) ∨ ∃z ∀z ′ P (z ′ ) ∧ Q(z ′ , z) → ∀y ′ ∃z ∀z ′ ∃x ∃y ¬P (x) ∨ P (y) ∧ ¬Q(y, y ′ ) ∨ P (z ′ ) ∧ Q(z ′ , z)
→ ∃x ∃y ∃z ¬P (x) ∨ P (y) ∧ ¬Q(y, c) ∨ P (f (z)) ∧ Q(f (z), z)
17
●演習問題 1
古典命題論理における導出原理に関する以下の設問に答えよ.
(1) 四つの節 {P, Q, R}, {¬Q}, {¬R}, {¬P, Q, R} に対して導出原理を適用して空節を導け.
(2) この四つの節からなる節集合に対応する論理和標準形の論理式を示せ.
(3) (1) の結果から (2) の論理式について何が分かるか,意味論の用語を使って 1 行で答えよ.
(4) (2) の論理式の真理値表の特徴を 1 行で説明せよ.
●演習問題 2
次の論理式が古典命題論理において恒真であることを,導出原理により確かめたい.
(P ⇒ Q) ⇒ (¬Q ⇒ ¬P )
(1) 上記の論理式をスコーレム標準形に同値変形せよ.
(2) (1) の標準形に対応する節集合に対して,導出原理を適用して空節を導け.
●演習問題 3
次のスコーレム標準形の論理式のどちらかは,古典述語論理において恒真である.
(b) ∃x R x, f (x) ∨ ¬R f (c), f (c)
(a) ∃x R x, f (x) ∨ ¬R f (c), f (f (c))
(a) か (b) のうち恒真な論理式を一つ選び,それが恒真であることを,導出原理を使って示せ.
●演習問題 4
次の論理式が古典述語論理において恒真であることを,導出原理により確かめたい.
∀x ∀y R(x, y) ⇒ R(y, x) ∧ ∀x R(x, c) ⇒ P (f (x)) ⇒ ∀y R(c, y) ⇒ P (f (y))
(1) 上記の論理式をスコーレム標準形に変形せよ.
(2) (1) の標準形に対応する節集合に対して,導出原理を適用して空節を導け.
18