logo

プロローグ |はじめに


導入 :

プロローグは、 ロジックプログラミング 言語。人工知能において重要な役割を果たします。他の多くのプログラミング言語とは異なり、Prolog は主に宣言型プログラミング言語として意図されています。プロローグでは、ロジックは関係 (事実と規則と呼ばれます) として表現されます。 prolog の中心となるのは、 論理 適用されています。定式化または計算は、これらの関係に対してクエリを実行することによって実行されます。



Linux でのインストール:

タイプスクリプトの日付

ターミナルを開く (Ctrl+Alt+T) そして次のように入力します:

 sudo apt-get install swi-prolog>

構文と基本フィールド:



プロローグでは、いくつかの事実を宣言します。これらの事実は、システムの知識ベースを構成します。ナレッジベースに対してクエリを実行できます。クエリがすでにナレッジ ベースに存在するか、ナレッジ ベースによって暗示されている場合は肯定的な出力が得られ、それ以外の場合は否定的な出力が得られます。したがって、ナレッジ ベースはデータベースと同様に考えることができ、クエリを実行できます。プロローグの事実は明確なパターンで表現されます。ファクトにはエンティティとその関係が含まれます。括弧内はコンマ(,)で区切って記述します。それらの関係は先頭と括弧の外側に示されています。すべての事実/ルールはドット (.) で終わります。したがって、典型的なプロローグの事実は次のようになります。

 Format : relation(entity1, entity2, ....k'th entity). Example : friends(raju, mahesh). singer(sonu). odd_number(5). Explanation : These facts can be interpreted as : raju and mahesh are friends. sonu is a singer. 5 is an odd number.>

主な特徴:
1. 統一: 基本的な考え方は、与えられた用語が同じ構造を表すようにできるかどうかです。
2. バックトラッキング: タスクが失敗すると、prolog は逆方向にトレースして、前のタスクを満たそうとします。
3. 再帰 : 再帰はプログラム内のあらゆる検索の基礎となります。

プロローグとは何ですか

クエリの実行:
典型的なプロローグ クエリは次のように尋ねることができます。



 Query 1 : ?- singer(sonu). Output : Yes. Explanation : As our knowledge base contains the above fact, so output was 'Yes', otherwise it would have been 'No'. Query 2 : ?- odd_number(7). Output : No. Explanation : As our knowledge base does not contain the above fact, so output was 'No'.>

利点:
1. データベースを簡単に構築できます。プログラミングに多くの労力を費やす必要はありません。
2. 柄合わせも簡単です。検索は再帰ベースです。
3. リスト処理が組み込まれています。リストを含むアルゴリズムを簡単に操作できるようになります。

短所:
1. LISP (別の論理プログラミング言語) は、I/O 機能に関して prolog よりも優れています。
2. インプットとアウトプットが簡単ではない場合もあります。

ラドヤード・キプリングによる一行ごとの説明の場合

アプリケーション:

Prolog は人工知能 (AI) でよく使用されます。 Prolog は、自然言語解析ツリーのパターン マッチングにも使用されます。

参考1: https://en.wikipedia.org/wiki/プロローグ

参考2: http://www.swi-prolog.org/