2003/2/22
JASMIN02秋報告資料からの抜粋
1
Prologによる論理プログラミング
• 論理プログラミング言語Prologの特色を以下にまとめる。
l 述語論理学におけるホーン節をプログラムの単位とする。
l その動作は導出原理と単一化アルゴリズム(Robinson,1965)に基づく自動定理証明。
l 論理的知識表現と、AIで普及したリスト処理(2進木操作)を融合 。
l バックトラッキング(後戻り処理)で可能解を探索・枚挙 。
l こうして、宣言的意味と手続き的意味の両面性を獲得。
• Prologは1990年代前半までに入門書が数多く出版された [8,10] 。国際規格(ISO IEC13211-1)や制約処理への拡張版もある。
• 以下に述語 member /2 と実行例を示す。なお /2 は引数の数(アリティ)を表す。
 member(A, [A|B]).
 member(A, [B|C]) :-
 member(A, C).
?-member(X,[‘経営’, ‘情報’]).
X = ‘経営’;
X = ‘情報’ ;
No