/* from Warren's paper in Machine Intelligence 10 */

drinks(david, beer).
drinks(david, milk).
drinks(jane, water).
drinks(ben, milk).

size([], 0).
size([X|L], N1) :- size(L, N), N1 is N + 1.

drunk_by(D, N) :- setof(X, drinks(X, D), S), size(S, N).
