#retract(?節) #retract(?頭部,?本体)
「節」や「頭部」には、述語を特定できるような形の項を与えなければなりません。retract/1,/2は、「節」あるいは「頭部:-本体」と一致するデ−タベ−ス中の最初の節を削除します。retractはバックトラック可能で、バックトラックする毎に述語の節を順次取り除きます。
バックトラックによって一度削除した節が回復することはないということに注意して下さい。
?- retract((is_sub(C1,C2) :- reports_to(C1,C2))). yes ?- retract(loves(X,Y),true). X = juliet Y = romeo ;
X = cyrano Y = roxanne
yes ?- listing(loves).
loves(pooh,honey) :- true. yes ?- _
illegal_predicate 引数に完全な値が与えられていない not_modifiable 述語が修正できない