我正在使用 cligo 来解决洪水问题。我使用谓词frontier([CELL], [COLOR], [TIMESTEP])
来跟踪作为洪水邻居的所有单元格。边界集可能如下所示:
frontier(c(1,3),2,3) frontier(c(2,1),2,3) frontier(c(2,2),3,3) frontier(c(2,3),3,3) frontier(c(3,1),3,3) frontier(c(3,2),3,3) frontier(c(4,1),3,3)
我们可以将这个集合分成两个子集。每个颜色值分别为 2 或 3 的一种。我需要的基本上是两件事:
- 确定哪个子集更大,即颜色值为 2 或 3 的单元格是否更多(顺便说一句,颜色的数量不固定,因此解决方案必须是通用的)
- 获取最大集合成员的颜色值
如何比较谓词逻辑中 n (n>=2) 集的基数?
先感谢您!