:- use_module(library(chr)). handler leq_handler. constraints leq/2. :- op(500, xfx, leq). X leq Y , Y leq Z ==> X leq Z. X leq Y , Y leq X <=> X=Y. X leq X <=> true. X leq Y \ X leq Y <=> true.