3 bitor(B, [0|T]) :- bitor(B, T).
7 bitand(B, [1|T]) :- bitand(B, T).
10 bitcomposition(N, [H|T]) :-
13 bitcomposition(Shift, T).
16 inc(N, NPlusOne) :- add(NPlusOne, N, 1).
18 add(Z, X, Y) :- var(X), X is Z - Y.
19 add(Z, X, Y) :- var(Y), Y is Z - X.
20 add(Z, X, Y) :- Z is X + Y.