In GNU prolog, with constraints:
I have a list, which, for N = 5 (for instance), it is like this:
[3*(1-_#0(0..1)),2*(1-_#18(0..1)),1*(1-_#36(0..1)),4*(1-_#54(0..1)),2*(1-_#72(0..1))]
I am working on a finite domain constraint environment and I tried this max_list(MaxFilter, M0),
and I got this error (since the variable does not have a value at this moment) uncaught exception: error(type_error(evaluable,_#4195373(0..1)),(=<)/2)
In Eclipse, I would use eval and in SWI, I used this predicate
lmax([H|T], X):-
foldl(max_, T, H, Exp),
X #= Exp.
max_(E, X, max(E, X)).
but I did not find any equiivalent of foldl in GNU.
What should I do? Any ideas? I am stuck and I have been searching the whole internet for days...
What I actually want is to find the max of this list, when the labelling of the List of solution occurs (at the very end of my main predicate). When this happens, the variables of the list I am trying to find the max, will have a value (they are the same variables, for the example above, I have Sol=[_#0(0..1), _#18(0..1), ...]). But the code never reaches this point, since it throws an error when I try to find the max.