PROLOG
読み:プロログ
外語:PROLOG: PROgramming in LOGic
1972(昭和47)年にフランスのマルセイユ大学でAlain Colmerauer(アラン カメラウラー)により開発された論理型プログラミング言語。一階述語論理に基づく計算モデルを採用しているのが特徴。人工知能(AI)の記述言語としても知られている。1977(昭和52)年にイギリスのエジンバラ大学で開発されたDEC-10 Prolog(PROLOG-10)が事実上の標準処理系で、国際標準化については現在策定中である。
記号論理学(Symboloc Logic)の概念で作られており、一階述語論理のサブセットであるホーン節(Horn Clause)を用いて導出原理を適用することで計算を行なう。導出(resolution:規則と事実から目標の証明を試みる)原理の適用は、単一化(unification:2つの論理式または項の照合を行なって変数を置き換える)機能による適用可能な節の選択と、それができない場合のバックトラック(後戻り)による次候補選択によって行なわれ、事実と推論規則による証明動作を行なう。
PROLOGのプログラムは規則(rule)・事実(fact)・目標(goal)を示すホーン節の集合によって成り立ち、前提条件とそれに対応する帰結条件という統一した形で記述される。一般的なPROLOGプログラムは複数の規則と複数の事実、そして1つの目標によって構成され、与えられた規則と事実から目標が導けるかという後ろ向き推論の原理で動作する。
1982(昭和57)年に発足した人工知能開発を目的とした日本の第五世代コンピュータープロジェクト(ICOT)でベース言語に採用され、PROLOGを元に並列論理型言語KL-1が作られた。このときの対抗規格はLispであった。世界的にも注目を浴びていたプロジェクトであったが、結果的にほとんど成果を上げることなく解散することとなった。
再検索