1

我有一个优化问题,我想最小化我尚未构建的列表的长度。这里的语言是 Prolog,使用 swipl 的 clpfd 库。

类似的东西pred(L), length(L,N), labeling([min(N)],[....]).

问题是:length/2 已经设置了长度,即使 L 是一个变量,所以这不是 CLP 优化之后。那么,我可以在不实例化 N 的情况下以某种方式将 L 的长度限制为 N 吗?如果我知道 N 的上限(我知道),也许可以使用具体化 - 但这听起来非常复杂?TBH 我有类似的问题,我的 pred/1 事情停止了,以承诺特定的列表长度,但我主要是对那个长度的事情感到好奇。

4

0 回答 0