Anne is cold. Anne is furry. Anne is young. Dave is blue. Dave is furry. Dave is quiet. Fiona is blue. Fiona is cold. Fiona is furry. Fiona is green. Fiona is red. Gary is blue. Gary is cold. Gary is furry. Gary is quiet. Gary is young. All blue people are cold. Furry, cold people are green. If Dave is green and Dave is blue then Dave is young. All green, red people are quiet. If someone is blue then they are quiet. All blue, green people are red.
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is young.
("Anne" "is" "young" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is young.
("Gary" "is" "young" "+")
All blue people are cold.
((("someone" "is" "blue" "+")) -> ("someone" "is" "cold" "+"))
Furry, cold people are green.
((("someone" "is" "furry" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "green" "+"))
If Dave is green and Dave is blue then Dave is young.
((("Dave" "is" "green" "+") ("Dave" "is" "blue" "+")) -> ("Dave" "is" "young" "+"))
All green, red people are quiet.
((("someone" "is" "green" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "quiet" "+"))
If someone is blue then they are quiet.
((("someone" "is" "blue" "+")) -> ("someone" "is" "quiet" "+"))
All blue, green people are red.
((("someone" "is" "blue" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "red" "+"))
Fiona is furry.
True
1
proof
[(triple9)]
("Fiona" "is" "furry" "+")
triple9
Gary is not furry.
False
1
inv-proof
[(triple14)]
("Gary" "is" "furry" "-")
triple14
Anne is green.
True
3
proof
[(((triple2 triple1) -> rule2))]
("Anne" "is" "green" "+")
((triple2 triple1) -> (rule2 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is not green.
False
3
inv-proof
[(((triple2 triple1) -> rule2))]
("Anne" "is" "green" "-")
((triple2 triple1) -> (rule2 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Dave is green.
True
4
proof
[(((triple5 ((triple4) -> rule1)) -> rule2))]
("Dave" "is" "green" "+")
((triple5 ((triple4) -> (rule1 % int2))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is not green.
False
4
inv-proof
[(((triple5 ((triple4) -> rule1)) -> rule2))]
("Dave" "is" "green" "-")
((triple5 ((triple4) -> (rule1 % int2))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Dave is young.
True
6
proof
[(((((triple5 ((triple4) -> rule1)) -> rule2) triple4) -> rule3))]
("Dave" "is" "young" "+")
((((triple5 ((triple4) -> (rule1 % int3))) -> (rule2 % int2)) triple4) -> (rule3 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
int3
Dave is not young.
False
6
inv-proof
[(((((triple5 ((triple4) -> rule1)) -> rule2) triple4) -> rule3))]
("Dave" "is" "young" "-")
((((triple5 ((triple4) -> (rule1 % int3))) -> (rule2 % int2)) triple4) -> (rule3 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
int3
Anne is not red.
Unknown
inv-rconc
[@1: Anne is red.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Anne" "is" "red" "-")
Anne is quiet.
Unknown
rconc
[@2: Anne is quiet.[CWA. Example of deepest failure = (rule4 <- rule6 <- FAIL)]]
("Anne" "is" "quiet" "+")
Anne is not blue.
Unknown
inv-random
[@0: Anne is blue.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "blue" "-")
Fiona is young.
Unknown
random
[@0: Fiona is young.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "young" "+")
@0: Anne is cold.[(triple1)] Anne is furry.[(triple2)] Anne is young.[(triple3)] Dave is blue.[(triple4)] Dave is furry.[(triple5)] Dave is quiet.[(triple6 OR ((triple4) -> rule5) OR ((((triple5 ((triple4) -> rule1)) -> rule2) ((triple4 ((triple5 ((triple4) -> rule1)) -> rule2)) -> rule6)) -> rule4))] Fiona is blue.[(triple7)] Fiona is cold.[(triple8 OR ((triple7) -> rule1))] Fiona is furry.[(triple9)] Fiona is green.[(triple10 OR ((triple9 triple8) -> rule2) OR ((triple9 ((triple7) -> rule1)) -> rule2))] Fiona is red.[(triple11 OR ((triple7 triple10) -> rule6) OR ((triple7 ((triple9 triple8) -> rule2)) -> rule6) OR ((triple7 ((triple9 ((triple7) -> rule1)) -> rule2)) -> rule6))] Gary is blue.[(triple12)] Gary is cold.[(triple13 OR ((triple12) -> rule1))] Gary is furry.[(triple14)] Gary is quiet.[(triple15 OR ((triple12) -> rule5) OR ((((triple14 triple13) -> rule2) ((triple12 ((triple14 triple13) -> rule2)) -> rule6)) -> rule4) OR ((((triple14 ((triple12) -> rule1)) -> rule2) ((triple12 ((triple14 triple13) -> rule2)) -> rule6)) -> rule4) OR ((((triple14 triple13) -> rule2) ((triple12 ((triple14 ((triple12) -> rule1)) -> rule2)) -> rule6)) -> rule4) OR ((((triple14 ((triple12) -> rule1)) -> rule2) ((triple12 ((triple14 ((triple12) -> rule1)) -> rule2)) -> rule6)) -> rule4))] Gary is young.[(triple16)] @1: Anne is green.[(((triple2 triple1) -> rule2))] Dave is cold.[(((triple4) -> rule1))] Fiona is quiet.[(((triple7) -> rule5) OR ((triple10 triple11) -> rule4) OR ((triple10 ((triple7 triple10) -> rule6)) -> rule4) OR ((((triple9 triple8) -> rule2) triple11) -> rule4) OR ((((triple9 triple8) -> rule2) ((triple7 triple10) -> rule6)) -> rule4) OR ((triple10 ((triple7 ((triple9 triple8) -> rule2)) -> rule6)) -> rule4) OR ((((triple9 ((triple7) -> rule1)) -> rule2) triple11) -> rule4) OR ((((triple9 triple8) -> rule2) ((triple7 ((triple9 triple8) -> rule2)) -> rule6)) -> rule4) OR ((((triple9 ((triple7) -> rule1)) -> rule2) ((triple7 triple10) -> rule6)) -> rule4) OR ((((triple9 ((triple7) -> rule1)) -> rule2) ((triple7 ((triple9 triple8) -> rule2)) -> rule6)) -> rule4) OR ((triple10 ((triple7 ((triple9 ((triple7) -> rule1)) -> rule2)) -> rule6)) -> rule4) OR ((((triple9 triple8) -> rule2) ((triple7 ((triple9 ((triple7) -> rule1)) -> rule2)) -> rule6)) -> rule4) OR ((((triple9 ((triple7) -> rule1)) -> rule2) ((triple7 ((triple9 ((triple7) -> rule1)) -> rule2)) -> rule6)) -> rule4))] Gary is green.[(((triple14 triple13) -> rule2) OR ((triple14 ((triple12) -> rule1)) -> rule2))] @2: Dave is green.[(((triple5 ((triple4) -> rule1)) -> rule2))] Gary is red.[(((triple12 ((triple14 triple13) -> rule2)) -> rule6) OR ((triple12 ((triple14 ((triple12) -> rule1)) -> rule2)) -> rule6))] @3: Dave is red.[(((triple4 ((triple5 ((triple4) -> rule1)) -> rule2)) -> rule6))] Dave is young.[(((((triple5 ((triple4) -> rule1)) -> rule2) triple4) -> rule3))]
Anne is cold.
("Anne" "is" "cold" "+")
triple1
Anne is furry.
("Anne" "is" "furry" "+")
triple2
Anne is young.
("Anne" "is" "young" "+")
triple3
Dave is blue.
("Dave" "is" "blue" "+")
triple4
Dave is furry.
("Dave" "is" "furry" "+")
triple5
Dave is quiet.
("Dave" "is" "quiet" "+")
triple6
((triple4) -> (rule5 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
((((triple5 ((triple4) -> (rule1 % int4))) -> (rule2 % int3)) ((triple4 ((triple5 ((triple4) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Dave is cold.
("Dave" "is" "cold" "+")
int4
Fiona is blue.
("Fiona" "is" "blue" "+")
triple7
Fiona is cold.
("Fiona" "is" "cold" "+")
triple8
((triple7) -> (rule1 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
triple9
Fiona is green.
("Fiona" "is" "green" "+")
triple10
((triple9 triple8) -> (rule2 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
((triple9 ((triple7) -> (rule1 % int2))) -> (rule2 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
int2
Fiona is red.
("Fiona" "is" "red" "+")
triple11
((triple7 triple10) -> (rule6 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
((triple7 ((triple9 triple8) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
((triple7 ((triple9 ((triple7) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is red.
("Fiona" "is" "red" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
triple12
Gary is cold.
("Gary" "is" "cold" "+")
triple13
((triple12) -> (rule1 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
triple14
Gary is quiet.
("Gary" "is" "quiet" "+")
triple15
((triple12) -> (rule5 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
((((triple14 triple13) -> (rule2 % int3)) ((triple12 ((triple14 triple13) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
((((triple14 ((triple12) -> (rule1 % int4))) -> (rule2 % int3)) ((triple12 ((triple14 triple13) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is cold.
("Gary" "is" "cold" "+")
int4
((((triple14 triple13) -> (rule2 % int4)) ((triple12 ((triple14 ((triple12) -> (rule1 % int3))) -> (rule2 % int4))) -> (rule6 % int2))) -> (rule4 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
((((triple14 ((triple12) -> (rule1 % int4))) -> (rule2 % int3)) ((triple12 ((triple14 ((triple12) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is red.
("Gary" "is" "red" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is cold.
("Gary" "is" "cold" "+")
int4
Gary is young.
("Gary" "is" "young" "+")
triple16
Anne is green.
("Anne" "is" "green" "+")
((triple2 triple1) -> (rule2 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
((triple4) -> (rule1 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((triple7) -> (rule5 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((triple10 triple11) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
((triple10 ((triple7 triple10) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
((((triple9 triple8) -> (rule2 % int2)) triple11) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
((((triple9 triple8) -> (rule2 % int3)) ((triple7 triple10) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
((triple10 ((triple7 ((triple9 triple8) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
((((triple9 ((triple7) -> (rule1 % int3))) -> (rule2 % int2)) triple11) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
((((triple9 triple8) -> (rule2 % int3)) ((triple7 ((triple9 triple8) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
((((triple9 ((triple7) -> (rule1 % int4))) -> (rule2 % int3)) ((triple7 triple10) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is cold.
("Fiona" "is" "cold" "+")
int4
((((triple9 ((triple7) -> (rule1 % int4))) -> (rule2 % int3)) ((triple7 ((triple9 triple8) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is cold.
("Fiona" "is" "cold" "+")
int4
((triple10 ((triple7 ((triple9 ((triple7) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is cold.
("Fiona" "is" "cold" "+")
int4
((((triple9 triple8) -> (rule2 % int4)) ((triple7 ((triple9 ((triple7) -> (rule1 % int3))) -> (rule2 % int4))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is cold.
("Fiona" "is" "cold" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
((((triple9 ((triple7) -> (rule1 % int4))) -> (rule2 % int3)) ((triple7 ((triple9 ((triple7) -> (rule1 % int4))) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule4 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is red.
("Fiona" "is" "red" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is cold.
("Fiona" "is" "cold" "+")
int4
Gary is green.
("Gary" "is" "green" "+")
((triple14 triple13) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
((triple14 ((triple12) -> (rule1 % int2))) -> (rule2 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
((triple5 ((triple4) -> (rule1 % int2))) -> (rule2 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is cold.
("Dave" "is" "cold" "+")
int2
Gary is red.
("Gary" "is" "red" "+")
((triple12 ((triple14 triple13) -> (rule2 % int2))) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
((triple12 ((triple14 ((triple12) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Gary is red.
("Gary" "is" "red" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Dave is red.
("Dave" "is" "red" "+")
((triple4 ((triple5 ((triple4) -> (rule1 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
int3
Dave is young.
("Dave" "is" "young" "+")
((((triple5 ((triple4) -> (rule1 % int3))) -> (rule2 % int2)) triple4) -> (rule3 % int1))
Dave is young.
("Dave" "is" "young" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is cold.
("Dave" "is" "cold" "+")
int3