一階述語論理の論理式に、具体的な世界についての意味と真偽を与える方法。
Info
使用できる記号を定めるシグネチャについては一階述語論理#シグネチャを参照。このノートでは、与えられたシグネチャをどのように解釈するかを扱う。
シグネチャ+対象領域+記号の解釈=構造 対象領域
対象領域 D は、その構造において変数が指し得る対象全体。
標準的な一階述語論理では、対象領域は空でない集合とする。
例えば、
なら、量化子 ∀x や ∃x の x は整数全体を動く。
Caution
対象領域はシグネチャだけからは決まらない。
同じシグネチャを、異なる対象領域上で解釈できる。
例えば L={<} という同じシグネチャから、次のような異なる構造を作れる。
- (N,<)
- (Z,<)
- (Q,<)
- (R,<)
構造
シグネチャ L に対する構造 M は、次のものからなる。
- 対象領域 D
- L に含まれる各記号の解釈
対象領域を D とすると、各記号は次のように解釈される。
- 定数記号 c
- D の一要素 cM∈D
- n 引数の関数記号 f
- 関数 fM:Dn→D
- n 引数の述語記号 P
- 関係 PM⊆Dn
例えば L={0,+,Even} を整数上で解釈する構造は、
M=(Z,0M,+M,EvenM)と表せる。
- 0M:整数の 0
- +M:通常の整数の加算
- EvenM:偶数全体の集合
変数割り当て
変数割り当て s は、各変数に対象領域の要素を対応させるもの。
s:Var→D例えば、
なら、論理式 Even(x) の x を整数 2 として評価する。
自由変数を含む式の真偽は、構造 M だけでなく変数割り当て s にも依存する。
項の解釈
項 t がどの対象を指すかを、
[[t]]M,sと表す。
例えば、s(x)=2 なら、整数の構造において、
[[x+0]]M,s=2となる。
充足関係
構造 M と変数割り当て s のもとで論理式 φ が真であることを、
M,s⊨φと書き、「M,s は φ を満たす」という。
述語
M,s⊨P(t1,…,tn)であるのは、項が指す対象の組が、P の解釈する関係に属するとき。
([[t1]]M,s,…,[[tn]]M,s)∈PM 等号
M,s⊨t1=t2であるのは、t1 と t2 が対象領域内の同じ要素を指すとき。
[[t1]]M,s=[[t2]]M,sしたがって等号は、対象領域 D 上の対角関係として解釈される。
(=)M={(d,d)∣d∈D}これはシグネチャ内の述語の解釈には依存しない。
量化子
全称量化は、対象領域のすべての要素について式が成り立つことを表す。
M,s⊨∀xφ(x)であるのは、すべての d∈D について、x に d を割り当てたときに φ(x) が真になる場合。
存在量化は、式を満たす対象が少なくとも1つ存在することを表す。
M,s⊨∃xφ(x)であるのは、ある d∈D について、x に d を割り当てたときに φ(x) が真になる場合。
文とモデル
自由変数を持たない論理式を文という。文の真偽は変数割り当てに依存しないため、
M⊨φと書ける。
論理式の集合を理論 T とする。構造 M が T に含まれるすべての文を満たすとき、
M⊨Tと書き、M を T のモデルという。
Hint
「構造」と「モデル」は同じ意味で使われることもあるが、厳密には、構造がある理論を満たしているときに「その理論のモデル」と呼ぶ。
構文と意味論
- 構文
- シグネチャを使って、どのような項・論理式を書けるかを定める
- 意味論
- 構造と変数割り当てを使って、各記号が何を指し、論理式がいつ真になるかを定める
シグネチャだけでは論理式の真偽は決まらない。同じ論理式でも、解釈する構造が変われば真偽が変わり得る。
このように、形式言語とその解釈の関係を研究する分野がモデル理論である。