我从SICStus Prolog开始,我想定义一个变量,比如说StartingTimes
,以便有一个由列表[1, 5, 10]
定义的域
如何在SICStus Prolog中完成?
我会做类似的事情:
domain(StartingTimes, 1, 10)
StartingTimes #= 1 #\/ StartingTimes #= 5 #\/ StartingTimes #= 10
但这太可怕了。必须有一个简单的方法来做到这一点。也许fd_sets
?
注意:我试图找出它是如何在手册中完成的,但是prolog使用了常用词,并且很难使用谷歌。
答案 0 :(得分:8)
?- use_module(library(clpfd)).
?- StartingTimes in {1,5,10}.