IF/Prologインタプリタは、すでにあなたのシステムにインストールしてありますね。手始めにPrologのサンプルプログラムを編集してみることにしましょう。...
移動
次へ 前へ
上へ 最上
詳細
IF/Prologの起動
データの読み込み
データベースのリスティング
データの削除
構文エラー
質問と命令
入力/出力
IF/Prologの終了
制御の流れ
参考
IF/Prologとは...
Prologの概念、言語、アプリケーションの範囲
初めてのPrologのセッションのための準備
IF/Prologコンパイラの使用
モジュールの使用
デバッギング
レファレンス
イフコンピュータ > IF/Prolog > マニュアル > IF/Prolog V4.1 マニュアル > ユーザーズ・ガイド > 初めてのPrologのセッションのための準備

初めてのPrologのセッションのための準備

MINERVA superseeded IF/Prolog. Please see http://www.ifcomputer.co.jp/MINERVA for details.

We discontinued to sell IF/Prolog Dec 31. 2003. For current customers, we continue to provide professional support for IF/Prolog until Dec 31, 2008.

IF/Prologインタプリタは、すでにあなたのシステムにインストールしてありますね。手始めにPrologのサンプルプログラムを編集してみることにしましょう。

colleague.proというファイルでエディタを呼び出してください。以下のようなPrologプログラムを打ち込みセーブしたら、エディタから抜け出て下さい。Prologでは、"%"から行の終わりまで、あるいは、"/*"と"*/"で囲まれた部分はプログラムのコメントです。

/* operators : define both functors as infix operators */

:- op(100,xfy,reports_to). :- op(100,xfy,is_subordinate_to).

/* rules : this procedure consists of two clauses */

C1 is_subordinate_to C2 :- /* 1 */ C1 reports_to C2.

C1 is_subordinate_to C2 :- /* 2 */ C1 reports_to C3, C3 is_subordinate_to C2.

/* facts : each fact has two arguments */

'White' reports_to 'Jones'. 'McDonald' reorts_to 'Jones'. 'Hill' reports_to 'Smith'. 'Newman' reports_to 'Smith'. 'Nixon' reports_to 'Smith'. 'Smith' reports_to 'New'. 'Jones' reports_to 'New'.

ここでは関数子を中置演算子として定義しておいたので、構文チェッカにひっかかることなく、2つの項の間に演算子を書くことができます。

中置演算子を定義していない場合は、関数子が先にきて、その後に()で囲まれた引数がくる通常のIF/Prologの述語の構文に従ってください。この場合、上のプログラムと同じ意味のPrologプログラムは以下のようになります。

/* rules : this procedure consists of two clauses */

is_subordinate_to(C1,C2) :- /* 1 */ reports_to(C1,C2).

is_subordinate_to(C1,C2) :- /* 2 */ reports_to(C1,C3), is_subordinate_to(C3,C2).

/* facts : each fact has two arguments */ reports_to('White', 'Jones'). reports_to('McDonald', 'Jones'). reports_to('Hill', 'Smith'). reports_to('Newman', 'Smith'). reports_to('Nixon', 'Smith'). reports_to('Smith', 'New'). reports_to('Jones', 'New').

続く..
IF/Prologの起動
Prologのサンプルプログラム"colleague"の準備ができましたので、IF/Prologを起動してみましょう。...
データの読み込み
これまで、ファィル"colleague.pro"を編集し、IF/Prolog を起動してみました。"colleague.pro"は、現在作業中のディレクトリの中にあります。...
データベースのリスティング
これまでいくつかの節をコンサルトし、新しい節を直接追加しました。ここで現在のデータベースを見てみることにしましょう。...
データの削除
ここで、プログラムの修正をしてみましょう。 この場合に、Prologから抜け出たり、すべての必要なファイルをもう一度読み込むようなことはせずにプログラムを修正する簡単な方法でやってみましょう。...
構文エラー
特に、完全にPrologの構文に慣れていない場合には、 構文チェッカ−は構文エラーを見つけるために役立ちます。...
質問と命令
ひとたび事実を入力すれば、その事実について質問することができます。...
入力/出力
IF/Prologの終了
インタプリタのレベルでは、以下のように入力すればインタプリタから抜け出ることができます。...
制御の流れ
Prologの制御の流れについては、W.F.ClocksinとC.S.Mellishのテキスト /ClocMel/で説明されています。...
IF/Prolog by Siemens
言語
English
Japanese
German
サーバー
USA
Japan
サイトマップ
索引
目次
全体目次
全体索引
印刷向き
imode
PDA
探索
document: http://www.ifcomputer.co.jp/IFProlog/Manuals/v4.1/user_guide/prepare/home_jp.html
published 2008/9/1 update 1995/11/7 (c) 1996-2006 IF Computer Japan
IF Computer 〒113-0022 Tel 03-5814-3352 start (AT) ifcomputer.com
Customer Support 東京都文京区千駄木5-28-2   http://www.ifcomputer.co.jp
冒頭へ managed with ubiCMS