ProgrammingのTipなど

Prologの基本構造

Prologは論理プログラミングと呼ばれる分野の言語で
他の一般的なプログラミング言語、オブジェクト指向とも関数型言語とも構造や書き方が大きく異なっています

Prologのプログラムの構造

Prologのプログラムの構造は
事実、規則、質問の3つの部分で構成されます
Fact(事実):
AはBである、というような事実
Prologでは述語を使って
B(A).
という書き方をします
Rule(規則):
AがBであるならRである、というような推論の規則
R :- B(A).
と書きます
規則はHeadとBodyから構成されます
Head :- Body.
Bodyは複数あってよく
Bodyの各構成要素をgoalと呼びます。
Head :- Goal,Goal,Goal.
Query(クエリ・質問):
Prologインタプリタにこれは正しいのかとプログラマーが質問します
それに対してPrologは、推論結果と照らし合わせてTrueかFalseで答えます。
Rが正しいか質問したければ
?- R.
と書きます

つまりプログラマは
事実と規則をまず設定し
それをPrologに読ませ
Prologに対して質問して
その質問内容が推論結果と正しいかどうかを問うわけです
事実と規則の読み込ませ(ファイル編)
ではPrologに事実と規則を読み込ませます
まず
事実と規則を書いた
factAndrule1.pl
というファイルを作ります

そしてインタープリタを起動させると
?-
という入力プロンプトが出てくるので
?- ['factAndrule1.pl'].
と入力することで
Prologインタープリタに読み込ませます
注:シングルクォートとピリオドを忘れないでください

そうするとインタープリタはそれを元に
推論するので
プログラマーは
論理式(ホーン式)を書き込めば
それが正しいかどうかを質問したことになるので
Prologはtrueかfalseで答えます
事実と規則の読み込ませ(インタープリタ編)
事実と規則は
ファイルを用意しなくても
?- [user].
と入力することで
インタープリタ上で
直接書いて設定することもできます

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

メニュー2

開くメニュー

閉じるメニュー

  • アイテム
  • アイテム
  • アイテム
【メニュー編集】

管理人/副管理人のみ編集できます