Поиск…


CLP (FD)

Ограничения CLP (FD) ( конечные домены ) реализуют арифметику над целыми числами . Они доступны во всех серьезных реализациях Prolog.

Существуют два основных варианта ограничений CLP (FD):

  • Декларативная целочисленная арифметика
  • Решение комбинаторных задач, таких как планирование, планирование и распределение задач.

Примеры:

?- X #= 1+2.
X = 3.

?- 3 #= Y+2.
Y = 1.

Обратите внимание, что если во втором запросе необходимо использовать is/2 , произошла ошибка создания:

?- 3 is Y+2.
ERROR: is/2: Arguments are not sufficiently instantiated

CLP (Q)

CLP (Q) реализует рассуждения о рациональных числах.

Пример:

?- { 5/6 = X/2 + 1/3 }.
X = 1.

CLP (Н)

Сам Пролог можно рассматривать как CLP (H) : Программирование логики Constraint по терминам Хербранда . С этой точки зрения программа Prolog устанавливает ограничения по срокам . Например:

?- X = f(Y), Y = a.
X = f(a),
Y = a.


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow