2013-05-06 48 views
2

我開始與SICStus Prolog的,我想定義一個變量,說StartingTimes,有通過列表[1, 5, 10]如何定義一個變量域是不連續的範圍

我該怎麼辦定義域它在SICStus Prolog中?

我會做這樣的事情:

domain(StartingTimes, 1, 10) 
StartingTimes #= 1 #\/ StartingTimes #= 5 #\/ StartingTimes #= 10 

但是,這是可怕的。必須有一個簡單的方法來做到這一點。也許fd_sets

注意:我試圖找出它是如何在手冊中完成的,但prolog使用常見的詞語,並且使用google很難。

回答

7
?- use_module(library(clpfd)). 
?- StartingTimes in {1,5,10}. 
+0

謝謝!這就是我一直在尋找的。 – 2013-05-06 12:42:53