// ******* utilities ******* not(p) :- p, !, fail. not(p). eq(x, x).