━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
数理論理学 確認問題15
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
●問1

0変数の関数記号(対象定数) c,1変数の関数記号 f,1変数の述語記号 P,
2変数の述語記号 R,を記号として使う言語について考える.
この言語に対する構造を与えるため,対象領域を非負整数全体の集合Nとし,
各記号の解釈 [・] を次式で定める.

[c]      = 0
[f](n)   = n+2
[P](n)   = 1 (n は偶数),      [P](n)   = 0 (その他)
[R](m,n) = 1 (m≦n),           [R](m,n) = 0 (その他)

構造 (N, [・]) のもとでの次の各論理式の真偽を,理由と共に述べよ.
(1) P(f(c))
(2) ∀y R(f(c), y)
(3) ∀x∀y ( R(x,y) ⇒ R(f(x),f(y)) )

●問2

次の各論理式が恒真かどうかを,理由と共に述べよ.

(1) ∃x(P(x)∧Q(x))
(2) ∃y∀x R(x,y) ⇒ ∀x∃y R(x,y)

──────────────────────────────────────

●答1 (述語論理の意味論)

(1) 真(0+2 は偶数)
(2) 偽(0+2 は非負整数の最小値ではない)
(3) 真(非負整数 m,n が m≦n を満たせば,m+2≦n+2 も成立)

[解説]

問題に与えられた構造は,c を「0」という非負整数,f を「〜に2を足す」という
関数,P を「〜は偶数」という性質,R を「〜は〜以下」という関係,として
解釈している.

この構造のもとで,各論理式は次の意味をもつ.
P(f(c)) は「0+2は偶数」,∀y R(c,y) は「0+2は非負整数の最小値」,
∀x∀y ( R(x,y) ⇒ R(f(x),f(y)) ) は「関係 ≦ は両辺に2ずつ足して保たれる」.
これらの論理式の解釈から,真偽が判定できる.

構造 (U, [・]) のもとでの論理式の真理値を計算しても,真偽が判定できる.

(1) P(f(c)) の (U, [・]) での真理値

   [P]([f]([c]))
= [P]([f](0))          ([c] の定義)
= [P](2)               ([f] の定義,0+2 = 2)
= 1                    ([P] の定義,2 は偶数)

(2) ∀y R(f(c), y) の (U,I) での真理値

   min{ [R]([f(c)], n) | n∈N }
= min{ [R](2, n) | n∈N }      ([f], [c] の定義)
= min{ 0, 1 }                  ([R] の定義,[R](2, n) は n=0 で 0,n=2 で 1)
= 0

(3) ∀x∀y ( R(x,y) ⇒ R(f(x),f(y)) ) の〈U,I〉での真理値

   min{ min{ max{  1 - [R](m,n) , [R]([f](m),[f](n)) } | n∈N } | m∈N }
= min{ min{ 1 | n∈N } | m∈N }
= 1

1行目から2行目への式変形では「m≦n のとき m+2≦n+2」という性質を使う.
この性質は,[R] と [f] の定義から,「[R](m,n)=1 のとき [R]([f](m),[f](n))=1」
を意味する.

●答2 (述語論理の恒真性)

(1) 恒真ではない.なぜなら,自然数全体の集合で,P を「偶数である」,
Q を「奇数である」と解釈すると,与えられた論理式が偽となるからである.

[解説]

論理式が恒真でないことを示すには,真理値が偽となる構造を一つ示せばよい.
解答で示した構造以外にも,非空集合上で P, Q を常に偽の述語と解釈すれば,
与えられた論理式は偽となる.P, Q を解釈した述語の真理集合の共通部分に
要素が存在しなければ,どんな解釈でも良いので,真理値が偽となる構造は
多数ある.

(2) 恒真である.自然演繹による証明図を以下に示す.

                      2
                 ∀x R(x,b)
                 ─────∀E
                   R(a,b)
         1       ─────∃I
   ∃y∀x R(x,y) ∃y R(a,y)
   ────────────∃E 2
          ∃y R(a,y)
        ───────∀I
        ∀x∃y R(x,y)
───────────────⇒I 1
∃y∀x R(x,y) ⇒ ∀x∃y R(x,y)

[解説]

論理式が恒真であることを示すには,自然演繹で証明可能なことを示せばよい.
上の証明図で,∃E と ∀I の規則を使う際,変数条件が成り立つのを確かめる.
次の図は,変数条件を満たさないため,自然演繹の証明として認められない.

                       2
                  ∀x R(x,b)
          1       ─────∀E
    ∃y∀x R(x,y)   R(a,b)
    ───────────∃E 2
            R(a,b)
          ─────∃I
          ∃y R(a,y)
        ───────∀I
        ∀x∃y R(x,y)
───────────────⇒I 1
∃y∀x R(x,y) ⇒ ∀x∃y R(x,y)


∀Iの規則適用については,結論 ∀x∃y R(x,y) で有効な仮定 1 に
変数 a が現れないため変数条件を満たす.しかし,∃Eの規則適用については,
前提 R(a,b) に b が自由変数として出現するため,変数条件を満たさない.

なお,∃E と ∀I の規則を解答と逆の順に使う次の証明も可能.

                     2
                ∀x R(x,b)
                ─────∀E
                  R(a,b)
                ─────∃I
                ∃y R(a,y)
      1       ───────∀I
∃y∀x R(x,y)  ∀x∃y R(x,y)
──────────────∃E 2
        ∀x∃y R(x,y)
───────────────⇒I 1
∃y∀x R(x,y) ⇒ ∀x∃y R(x,y)

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
授業のホームページ

山田 俊行
https://www.cs.info.mie-u.ac.jp/~toshi/