Logo

Nola's Backyard

一階述語論理の意味論

一階述語論理の論理式に、具体的な世界についての意味と真偽を与える方法。

Info

使用できる記号を定めるシグネチャについては一階述語論理#シグネチャを参照。このノートでは、与えられたシグネチャをどのように解釈するかを扱う。

シグネチャ+対象領域+記号の解釈=構造 \boxed{ \text{シグネチャ} +\text{対象領域} +\text{記号の解釈} =\text{構造} }

# 対象領域

対象領域 DD は、その構造において変数が指し得る対象全体。
標準的な一階述語論理では、対象領域は空でない集合とする。

例えば、

D=Z D=\mathbb Z

なら、量化子 ∀x\forall x や ∃x\exists x の xx は整数全体を動く。

Caution

対象領域はシグネチャだけからは決まらない。
同じシグネチャを、異なる対象領域上で解釈できる。

例えば L={<}L=\{<\} という同じシグネチャから、次のような異なる構造を作れる。

  • (N,<)(\mathbb N,<)
  • (Z,<)(\mathbb Z,<)
  • (Q,<)(\mathbb Q,<)
  • (R,<)(\mathbb R,<)

# 構造

シグネチャ LL に対する構造 M\mathcal M は、次のものからなる。

  1. 対象領域 DD
  2. LL に含まれる各記号の解釈

対象領域を DD とすると、各記号は次のように解釈される。

  • 定数記号 cc
    • DD の一要素 cM∈Dc^{\mathcal M}\in D
  • nn 引数の関数記号 ff
    • 関数 fM:Dn→Df^{\mathcal M}:D^n\to D
  • nn 引数の述語記号 PP
    • 関係 PM⊆DnP^{\mathcal M}\subseteq D^n

例えば L={0,+,Even}L=\{0,+,\mathrm{Even}\} を整数上で解釈する構造は、

M=(Z,0M,+M,EvenM) \mathcal M= (\mathbb Z,0^{\mathcal M},+^{\mathcal M}, \mathrm{Even}^{\mathcal M})

と表せる。

  • 0M0^{\mathcal M}:整数の 00
  • +M+^{\mathcal M}:通常の整数の加算
  • EvenM\mathrm{Even}^{\mathcal M}:偶数全体の集合

# 変数割り当て

変数割り当て ss は、各変数に対象領域の要素を対応させるもの。

s:Var→D s:\mathrm{Var}\to D

例えば、

s(x)=2 s(x)=2

なら、論理式 Even(x)\mathrm{Even}(x) の xx を整数 22 として評価する。

自由変数を含む式の真偽は、構造 M\mathcal M だけでなく変数割り当て ss にも依存する。

# 項の解釈

項 tt がどの対象を指すかを、

[[t]]M,s t_{\mathcal M,s}

と表す。

例えば、s(x)=2s(x)=2 なら、整数の構造において、

[[x+0]]M,s=2 x+0_{\mathcal M,s}=2

となる。

# 充足関係

構造 M\mathcal M と変数割り当て ss のもとで論理式 φ\varphi が真であることを、

M,s⊨φ \mathcal M,s\models\varphi

と書き、「M,s\mathcal M,s は φ\varphi を満たす」という。

# 述語

M,s⊨P(t1,…,tn) \mathcal M,s\models P(t_1,\ldots,t_n)

であるのは、項が指す対象の組が、PP の解釈する関係に属するとき。

([[t1]]M,s,…,[[tn]]M,s)∈PM (t_1_{\mathcal M,s},\ldots, t_n_{\mathcal M,s}) \in P^{\mathcal M}

# 等号

M,s⊨t1=t2 \mathcal M,s\models t_1=t_2

であるのは、t1t_1 と t2t_2 が対象領域内の同じ要素を指すとき。

[[t1]]M,s=[[t2]]M,s t_1_{\mathcal M,s} = t_2_{\mathcal M,s}

したがって等号は、対象領域 DD 上の対角関係として解釈される。

(=)M={(d,d)∣d∈D} (=)^{\mathcal M}=\{(d,d)\mid d\in D\}

これはシグネチャ内の述語の解釈には依存しない。

# 量化子

全称量化は、対象領域のすべての要素について式が成り立つことを表す。

M,s⊨∀x φ(x) \mathcal M,s\models\forall x\,\varphi(x)

であるのは、すべての d∈Dd\in D について、xx に dd を割り当てたときに φ(x)\varphi(x) が真になる場合。

存在量化は、式を満たす対象が少なくとも1つ存在することを表す。

M,s⊨∃x φ(x) \mathcal M,s\models\exists x\,\varphi(x)

であるのは、ある d∈Dd\in D について、xx に dd を割り当てたときに φ(x)\varphi(x) が真になる場合。

# 文とモデル

自由変数を持たない論理式を文という。文の真偽は変数割り当てに依存しないため、

M⊨φ \mathcal M\models\varphi

と書ける。

論理式の集合を理論 TT とする。構造 M\mathcal M が TT に含まれるすべての文を満たすとき、

M⊨T \mathcal M\models T

と書き、M\mathcal M を TT のモデルという。

Hint

「構造」と「モデル」は同じ意味で使われることもあるが、厳密には、構造がある理論を満たしているときに「その理論のモデル」と呼ぶ。

# 構文と意味論

  • 構文
    • シグネチャを使って、どのような項・論理式を書けるかを定める
  • 意味論
    • 構造と変数割り当てを使って、各記号が何を指し、論理式がいつ真になるかを定める

シグネチャだけでは論理式の真偽は決まらない。同じ論理式でも、解釈する構造が変われば真偽が変わり得る。

このように、形式言語とその解釈の関係を研究する分野がモデル理論である。