私はPrologを初めて使用し、学習しようとしています。
私のプログラムでは、「の型」である文字列のペアをユーザーに提供してもらいたいと考えています。
たとえば、ユーザーはコマンド ラインで文字列「john」と「man」を指定します。これらのアトムは、等しくなるように作成されます。つまり、john(man) です。
次のプロンプトで、ユーザーが「man」と「tall」を入力すると、プログラムはこれらが有効であると断言します (man(tall))。
次に、ユーザーはプログラムにクエリを実行して、「ジョンは背が高いですか?」と尋ねることができます。または Prolog では: john(tall) は推移的なプロパティによって true になります。
ユーザーの入力から文字列を解析し、それらを変数に割り当てることができましSubject
たObject
.
私は句を試しました(SubjectとObjectは異なる文字列です):
attribute(Subject, Object) :-
assert(term_to_atom(_ , Subject),
term_to_atom(_ , Object)).
Subject と Object が有効なペアであるという事実を主張したいと思います。ユーザーがそれを主張すると、それらは一緒に属します。このペアの同等性を強制するにはどうすればよいですか?
これについて最善の方法は何ですか?