バックグラウンド
リストを調べて、P の 1 つの要素を除くすべてがゼロかどうかを判断する関係 power(P) を作成する必要があります。
ここに私が持っているものがあります:
%I have a relation called zero(P) which decides if every element is zero.
power([H|T]) :- H is not zero, %The current element is non zero, the tail is all zero.
zero(T).
power([0|T]) :- power(T). %The current element is zero,
%but the tail has a non zero element in it.
一部のリソースは、バックトラッキングを制御するカット演算子 (!) の使用を提案していますが、それは私が探しているものではないと思います。
また、結果を交換するように見える証明不可能な演算子(\ +)に出くわしました(証明可能ではありません)、それも私が望んでいるものではないと思います。
Prolog Dictionaryは見つかりましたが、「not」の意味や使い方がわかりません (ご想像のとおり、Ctrl+F は「not」の多くのインスタンスを見つけます)。
質問
プロローグで「H はゼロではない」と言うにはどうすればよいですか?
EDITリストは整数のリストです。