summaryrefslogtreecommitdiff
path: root/prolog/problems/family_relations/cousin_2/common.py
diff options
context:
space:
mode:
Diffstat (limited to 'prolog/problems/family_relations/cousin_2/common.py')
-rw-r--r--prolog/problems/family_relations/cousin_2/common.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/prolog/problems/family_relations/cousin_2/common.py b/prolog/problems/family_relations/cousin_2/common.py
new file mode 100644
index 0000000..9285a80
--- /dev/null
+++ b/prolog/problems/family_relations/cousin_2/common.py
@@ -0,0 +1,26 @@
+id = 99
+group = 'family_relations'
+number = 6
+visible = True
+facts = 'family_relations'
+
+solution = '''\
+sister99(X, Y) :-
+ parent(P, X),
+ parent(P, Y),
+ female(X),
+ X \== Y.
+
+brother99(X, Y) :-
+ parent(P, X),
+ parent(P, Y),
+ male(X),
+ X \== Y.
+
+cousin(X, Y) :-
+ parent(PX, X),
+ parent(PY, Y),
+ ( brother99(PX, PY)
+ ;
+ sister99(PX, PY) ).
+'''