show(unit).
show(list(X)) :- show(X).
show(pair(X,Y)) :- show(X), show(Y).
eq(X) :- ord(X).
eq(nat).
ord(nat).