У меня есть набор правил и набор фактов с тем же предикатомСкладывание только правило, а не факты одного и того же предиката в Прологе
p(1).
p(2).
g(1,1).
h(3,2).
p(X):- g(X,Y).
p(X):- h(X,Y).
Я хотел бы сделать retractall, как предикат и удалить только правила, а не факты. Так что-то вроде:
retractRules(p(X)).
Как это сделать в Prolog?
Вы собираетесь получить «несмежный предикат» предупреждение с этим кодом, так как определения положений для 'р/1' разделены определений другой предикат. Это означает, что кластеры p (X) 'вообще не распознаются. – lurker