Prolog语言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