1subset(S1, S2) :- 2 forall(X, contained(X, S1, S2)). 3 4contained(X, S1, S2) :- 5 member(X, S1), member(X, S2). 6contained(X, S1, S2) :- 7 member(X, S2), not member(X, S1). 8 9member(X1, [X2|_]) :- X1 #= X2. 10member(X, [_|R]) :- member(X, R). 11 12?- subset([1], [1,3]).