「リスティング」を管理していた人がいるかどうかは疑問でした。 JPLのPrologナレッジベースの内容を調べるコマンドですか? JPLではクエリを作成する必要があり、クエリで設定した変数に基づいてソリューションを返します。例(Java)の場合:jplでリスティング機能を呼び出す
Query q = new Query("holdsAt((X,Y) = true, 3)");
while (q.hasMoreSolutions()){
Hashtable s = q.nextSolution();
System.out.println(s.get("X")+", "+s.get("Y"));
}
私は、これは/ 0をリスト、あるいはインスタンス化された入力を必要とする/ 1をリストアップするためにどのように動作するかを見ることができません。しかし、それは十分ではありません
L = myFunction(_G403,_G404),
X = myFunction,
Z = 2
:
myFunction:-
myGoal1,
myGoal2.
答え:現時点では私は、ナレッジベース内の既存の機能のために返す形
predicate_property(L,interpreted),
\+ predicate_property(L, built_in),
\+ predicate_property(L,imported_from(_)),
current_predicate(X, L), current_predicate(X/Z).
のコードで遊んでいますいずれの目標も返されないため、私が必要とするもの(リスティング関数がJPLを使用して呼び出すことができない場合)は、満足しなければならない関連する目標のリストと共に述語の頭部を変数として返す関数です。残念ながら、私はリスティング関数の内部に精通していないので、これを行う方法についてはわかりません。事前に
おかげ
フォローアップ:findallが過剰であることが判明しました。 – Huguenot