人工知能特論2009
No.6(前半部分は前回と同じ)
東京工科大学大学院
亀田弘之
まずは、復習から。
2
論理体系構築の手順(復習)
字母の決定
(論理式を記述するための記号群を決める)
Syntax
(記号の意味ある並びを決める。論理式であ
るための条件、論理式の表現規則を決める)
Semantics
(論理式の意味の取り扱いを決める)
その後、推論へと話を進める。
3
確認
字母
定数:
変数:
関数記号:
述語記号:
結合子:
限量記号:
補助記号:
a, b, c, d, …
x, y, z, w, …
f, g, h, …
P, Q, R,
~, ∧, ∨, →, ↔
∃, ∀
( ) ,
4
定義4.2 項(Term)
1.
2.
3.
定数は項である。
変数は項である。
もし f が arity n (n変数)の関数記号であ
り、t1, t2,… tn が項であるならば、
f( t1, t2, … , tn )
は項である。
5
定義4.3 ( well-formed ) 論理式
1.
2.
3.
4.
Pはn変数の述語記号であり、 t1, t2,… tn
が項であるならば、P(t1, t2,… tn ) は論理式
である。アトムあるいは原始式と呼ぶ。
φが論理式ならば、~φは論理式。
φとψが論理式ならば、
(φ∧ψ), (φ∨ψ), (φ→ψ), (φ↔ψ)
は論理式。
φが論理式、xが変数ならば、
∃x φ , ∀x φ
は論理式。
6
定義4.8 pre-interpretation J
1.
2.
3.
集合D:解釈のための領域(非空集合)
定数記号に対して、Dの要素を割り当てる。
関数記号f (n変数関数)に対して、Dnから
Dへの写像を割り当てる。
つまり、集合Dに基づいて、定数記号や
関数記号の意味(実体)を決める。これが、
pre-interpretation。
7
定義4.9 変数割り当てV
変数記号に領域Dの要素を割り当てる。
(variable assignment)
V: 変数記号の集合∋x → d∈D
8
定義4.10 項割り当て
定数記号に対して、pre-interpretation Jに
基づいてDの要素を割り当てる。
変数記号に対して、変数割り当てVに基づ
いてDの要素を割り当てる。
t1, t2, …,tn がd1, d2, … ,dn に割り当てられ
るとき、f(t1, t2, …,tn )は、
Jf(d1, d2, … ,dn )に割り当てられる。
9
定義4.11 解釈I
Pre-interpretation J が定められているとき、
述語記号Pに対して、Dnから{ T, F } への
写像を割り当てることを解釈という。
10
11
述語論理言語L1
字母
定数:
変数:
関数記号:
述語記号:
結合子:
限量記号:
補助記号:
a, b, c, d, …
x, y, z, w, …
f, g, h, …
P(arity=2), Q, R,
~, ∧, ∨, →, ↔
∃, ∀
( ) ,
論理式を表記する記号群
12
論理式を表記するための記号群
記号の並べ方の規則(Syntactic Rules)
Well-formed な論理式
Pre-interpretation
定数記号と関数記号に意味を与える。
項の割り当て、変数の割り当て
解釈
述語に意味を与える。
論理式の真偽が決まる
13
例:
論理式
P( x, a ) → Q( x )
これの真偽は?
(解釈Iを決めれば決まる)
・ 定数 a
・ 変数 x
・ 述語PとQ
14
解釈の例
P( x, a ) → Q( x )
解釈の領域
D = { 赤い箱R, 白い箱W, 青い円錐B }
Pre-interpretation
定数 a = R
関数記号 なし
変数の割り当て
V(x) = W
解釈I P(x,y): x が y の上に載っている。
Q(x): x は青い円錐である。
真偽: P( x, a ) → Q( x ) は__
15
Prenex Conjunctive Normal Form
Literal
Clause
PCNF
16
Leteral
Literalの定義:
1.
2.
アトムはリテラル (例: P(x), Q(3,5,8) )
アトムの否定もリテラル (例: ~P(x), ~Q(3,5,8))
上記の1を正リテラル(positive literal)、
2を負リテラル(negative literal) という。
(例: P(f(x)) は正リテラル, ~P(f(x)) は
負リテラル)
17
Clause
Clauseの定義:
ゼロ個以上かつ有限個のリテラルからなる選
言のこと。
例:
1.
2.
P(a) v Q(x,b,f(s))
~Q(x,y) <=1個のリテラルの選言!
18
Clauseの集合による表記法
1.
2.
P(a) v Q(x,b,f(s))
{P(a) , Q(x,b,f(s))}
~Q(x,y) {~Q(x,y) }
19
Prenex Conjunctive Normal Form
q1x1 qn xn (C1 Cm )
qiはかであり、 x1, x2 ,, xnはすべて論理式に現れる変数
20
Prenex Conjunctive Normal Form
Clause
q1x1 qn xn (C1 Cm )
Prenex
Matrix
qiはかであり、 x1, x2 ,, xnはすべて論理式に現れる変数
21
PCNFの例
xy ((P ( x) ~ Q ( x, y )) (~ R (a, b) ~ P (a )))
xyz ( S ( x, y, z ) P ( y, z ))
x((P (a ) P (b)) ~ Q (a, x) P ( x) (~ P (b) Q ( x, x)))
x ~ y ( P ( y ) Q ( y, a ))
x( P ( x) Q ( x, a ))
~ y (Q ( y, a ))
22
PCNFへの変形
任意の述語論理式はPCNFに変形すること
ができる。その際、その論理式の真理値は
保存される。
例: xP( x) xQ( x)
~ xP( x ) xQ( x )
~ xP( x ) yQ( y )
x ~ P ( x ) yQ( y )
x (~ P ( x ) yQ( y ))
xy (~ P ( x ) Q ( y ))
23
定理
任意の論理式φに対して、φと真理値が等
価な論理式ψでかつPCNFのものが1つ
存在する。
24
変形の手順(その1)
1.
論理式φの中の→と↔を次の規則を用いて
取り除く。
1.
2.
2.
(A→B) を (~A v B) に置き換える。
(A↔B) を (~A v B)^(A v ~B) に置き換える。
分離された変数がそれぞれ異なるように変
数名を書き換える。
25
変形の手順(その2)
3.
すべての~がアトムの直前に来るように次
の規則を用いて変形する。
1.
2.
3.
4.
5.
~∀x ψ を ∃x~ψ に置き換える。
~∃ x ψ を ∀x~ψ に置き換える。
~( φ ∨ ψ ) を ( ~φ ∧ ~ψ ) に置き換える。
~( φ ∧ ψ ) を ( ~φ ∨ ~ψ ) に置き換える。
~~φ を φ に置き換える。
26
変形の手順(その3)
4.
すべての限量子∀と∃を論理式の先頭部分
へ移動させる。
1.
2.
3.
4.
5.
6.
7.
8.
∃x φ∨ψ
φ∨∃x ψ
∀x φ∨ψ
φ∨ ∀x ψ
∃x φ∧ψ
φ∧∃x ψ
∀x φ∧ψ
φ∧∀x ψ
=>
=>
=>
=>
=>
=>
=>
=>
∃x (φ∨ψ)
∃x (φ∨ψ)
∀x (φ∨ψ)
∀x (φ∨ψ)
∃x (φ∧ψ)
∃x (φ∧ψ)
∀x (φ∧ψ)
∀x (φ∧ψ)
27
変形の手順(その4)
5.
Matrix部分をCNF形式に変形する。
1.
2.
((A∧B)∨C) を ((A∨C) ∧(B ∨C)) に
((A∨B)∧C) を ((A∧C) ∨(B ∧C)) に
28
PCNF導出の例(練習問題)
x( P( x) P( f ( x))) ~ x(Q( x) R( x, a))
x(~ P( x) P( f ( x))) ~ x(Q( x) R( x, a ))
x(~ P( x) P( f ( x))) ~ y (Q( y ) R( y, a))
x(~ P( x) P( f ( x))) y ~ (Q( y ) R( y, a))
x(~ P( x) P( f ( x))) y (~ Q( y ) ~ R( y, a ))
x((~ P( x) P( f ( x))) y (~ Q( y ) ~ R( y, a )))
xy ((~ P( x) P( f ( x))) (~ Q( y ) ~ R( y, a)))
xy ((~ P( x) P( f ( x)) ~ Q( y )) ((~ P( x) P( f ( x)) ~ R( y, a )))
29
PCNFの曖昧性
1つの論理式から得られるPCNFは1つと
は限らない。
例: xyP( x, y ) xQ(a, x)
xyz ( P( x, y) Q(a, z ))
xy( P( x, y) Q(a, x))
(注)ΑとβはともにΦのPCNF!
30
確認問題
次の置き換えは、真理値を保存することを
確かめよ。
D {a, b, c}
I {P(a, c), P(c, b), Q(a, a), Q(a, c), Q(b, a)}
xyP( x, y ) xQ(a, x)
xyz ( P( x, y ) Q(a, z ))
xy ( P( x, y ) Q(a, x))
31
確認問題
次の置き換えは、真理値を保存することを
確かめよ。
D {a, b, c}
I {P(a), P(c), P(c)}
xP( x) yP( y)
xy( P( x) P( y ))
32
Skolem Standard Form
33
Skolem Standard Form
Clause
q1x1 qn xn (C1 Cm )
Prenex
Matrix
qiはだけであり、 x1, x2 ,, xnはすべて論理式に現れる変数
34
PCNF => SSF への書き換え
限量記号(存在記号)∃を除去しなければな
らない。そのために、スコーレム定数やス
コーレム関数を導入する。
例:
xyP( x, y) xP( x, f ( x))
yxP( x, y) xP( x, a)
35
大切な注意事項(その1)
任意の論理式はPCNFに変形可能
任意のPCNFはSSFに変形可能
任意の論理式とそれから導かれるSSFとは
論理的に等価であるとは限らない(真理値
は必ずしも保存されない!)。
36
大切な注意事項(その2)
BUT
充足不可能な論理式は充足不可能なSSF
に変形される。
元の論理式がモデルを持つための必要十
分条件は、SSFがモデルを持つことである。
(これは重要な定理の1つ)
37
Herbrand Models
次に、フランスの論理学者Jacques Herbrand
が考案した解釈(interpretation)を導入する。
この解釈を特に、Herbrand interpretation とよ
び、この解釈に基づくモデルを Herbrand
model と呼ぶ。
38
Herbrand universe U
Herbrand base B
Herbrand pre-interpretation J
Herbrand interpretation I
Herbrand model M
以下、例で説明する。
39
例:
{P(a), Q(a, f (b)),x( P( x) Q( x, x))}
40
Herbrand Universe
U {a, b, f (a), f (b), f ( f (a)), f ( f (b)),}
41
Herbrand Base
B {P(a), P(b), Q(a, a),Q(b, b), P( f (a)), P( f (b)),}
42
Herbrand pre-interpretation
43
Herbrand interpretation
44
© Copyright 2026 ExpyDoc