% sums flat list of integers, not invertible
% false if a list member is not an integer

sum([],0). % Base case: sum
sum([N|T],R):-integer(N),sum(T,R_tail),R is R_tail + N.

