This SWI-Prolog code against the same input does not return a correct answer. http://paste.debian.net/hidden/b4dae451/
Perhaps I am mistranslating from GNU to SWI? Anyone see what might be wrong with the SWI code? Or maybe I am misunderstanding something more fundamental about the SWI clpfd solver?
(This is related to Advent of Code 2021 Day 15 if you haven’t worked that yet and want to avoid spoilers. This is the first one I’ve really gotten stuck on. My thinking was that GNU’s implementation of fd_minimize with branch and bound would do the hard part of the traversal for me. Which it indeed does for small inputs but GNU has some internal size limitations around the number of constraints, which SWI apparently does not, which is why I switched. GNU crashes on large inputs because of this. I think SWI might work, except SWI is not giving the same solution for small test inputs.)