2

Prolog では、グラウンド ファクトを次のように記述できます。

lost(jen).

根拠のない事実を次のように書くこともできます。

lost(X).

これは意味がありますか?根拠のない事実が使用されている実用的/実際の例を教えていただけますか?

ありがとう、

4

2 に答える 2

3

リストを避ける別のケースは、ほとんどのケースが「真」であり、偽であるいくつかのケースを除外したい場合です。したがって、これらのケースを意図的に失敗させてから、他のすべてを通過させます。

その後、あなたは言うことができます...

inhabited(antarctica) :- !, fail.

% all the other continents are inhabited
inhabited(_).
于 2009-11-12T23:08:34.370 に答える
2

ええと、ファクトにはアトム以外のものを含めることができます。たとえば、リストを含めることができます。それができたら、1 要素リストについて知りたいと思うかもしれません。

oneelement([X]).

同様に、リストの最後の要素を比較したいとします。

lastelement([X],X).
lastelement([_|Remainder],X) :- lastelement(Remainder,X).

非常に便利なmember述語は次のように定義されます。

member([X|_],X).
member([_|Remainder],X) :- member(Remainder,X).

これらのそれぞれは、根拠のない事実を基本ケースとして使用します。lost(X)

于 2009-11-12T21:15:51.180 に答える