ordering(A, B, C) :-
integer(A),
integer(B),
integer(C),
A > B,
B > C,
A > 0,
10 > C.
is satisfied by ordering(3,2,1).. But when I leave one or more as variables ordering(3,X,1). it evaluates to false.
What am I missing?
Update: thanks for all the extensive answers. I’ve learned something from all of them.