%% binary numbers

% inc(+std, -std), inc(-std,+std).

inc(e,b1(e)).
inc(b0(b0(M)),b1(b0(M))).
inc(b0(b1(M)),b1(b1(M))).
inc(b1(M),b0(N)) :- inc(M,N).

std(e).
std(b1(N)) :- std(N).
% no case for std(b0(e))
std(b0(b0(N))) :- std(b0(N)).
std(b0(b1(N))) :- std(b1(N)).
