View source with raw comments or as raw
    1s(0).
    2s(s(X)) :-
    3    s(X).
    4
    5sum(s(0), X, s(X)).
    6sum(X, s(0), s(X)).
    7sum(s(X), Y, s(Z)) :-
    8    X \= 0,
    9    sum(X, Y, Z).
   10
   11sumlist([X | T], [Y | T2], [Z | T3]) :-
   12    sum(X, Y, Z),
   13    sumlist(T, T2, T3).
   14sumlist([], [], []).
   15
   16?- sumlist([s(s(0)), s(s(s(0)))], [s(s(s(0))), s(s(s(0)))], X).