Replies: 2 comments 3 replies
-
What is your intended meaning of this? |
Beta Was this translation helpful? Give feedback.
-
An interesting example, thank you for sharing this! Personally, I find the solution quite acceptable. One additional observation: Reified disjunction ?- A in 1..3, B in 2..5, X #= A #\/ X #= B. clpz:(A in 1..3), clpz:(X#=A#<==>_A), clpz:(X#=B#<==>_B), clpz:(B in 2..5), clpz:(_B in 0..1), clpz:(_A#\/_B#<==>1), clpz:(_A in 0..1). Note that the domain of This is an interesting trade-off: Reified disjunction could be extended with reasoning that takes such situations into account, at the cost of slowing down cases that do not need this. In addition, it is not clear what guarantees then still hold. For example, what if I post, instead of Note that it already works in very specific situations: ?- A #= 3 #\/ 5 #= A. clpz:(A in 3\/5). |
Beta Was this translation helpful? Give feedback.
-
If I have variables
X
,Y
,Z
, is there a nice way to makeZ
's domain be the union ofX
andY
's? Right now, I'm just doingbut it feels clunky.
Beta Was this translation helpful? Give feedback.
All reactions