summaryrefslogtreecommitdiff
path: root/prolog/problems/sets/union_3/common.py
diff options
context:
space:
mode:
Diffstat (limited to 'prolog/problems/sets/union_3/common.py')
-rw-r--r--prolog/problems/sets/union_3/common.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/prolog/problems/sets/union_3/common.py b/prolog/problems/sets/union_3/common.py
new file mode 100644
index 0000000..a219673
--- /dev/null
+++ b/prolog/problems/sets/union_3/common.py
@@ -0,0 +1,19 @@
+id = 128
+group = 'sets'
+number = 35
+visible = True
+facts = None
+
+solution = '''\
+memb128(X, [X|_]).
+memb128(X, [_|T]) :-
+ memb128(X, T).
+
+union([], S2, S2).
+union([H|T], S2, [H|U]) :-
+ \+ memb128(H, S2),
+ union(T, S2, U).
+union([H|T], S2, U) :-
+ memb128(H, S2),
+ union(T, S2, U).
+'''