Anne is big. Anne is red. Anne is white. Bob is blue. Bob is cold. Bob is furry. Fiona is green. Fiona is white. Gary is big. Gary is blue. Gary is cold. Gary is furry. Gary is green. Gary is red. Gary is white. Furry, red things are cold. Big, cold things are blue. If something is white then it is furry.
Anne is big.
("Anne" "is" "big" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is white.
("Anne" "is" "white" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is furry.
("Bob" "is" "furry" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is white.
("Fiona" "is" "white" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is white.
("Gary" "is" "white" "+")
Furry, red things are cold.
((("something" "is" "furry" "+") ("something" "is" "red" "+")) -> ("something" "is" "cold" "+"))
Big, cold things are blue.
((("something" "is" "big" "+") ("something" "is" "cold" "+")) -> ("something" "is" "blue" "+"))
If something is white then it is furry.
((("something" "is" "white" "+")) -> ("something" "is" "furry" "+"))
Anne is white.
True
1
proof
[(triple3)]
("Anne" "is" "white" "+")
triple3
Fiona is not green.
False
1
inv-proof
[(triple7)]
("Fiona" "is" "green" "-")
triple7
Fiona is furry.
True
2
proof
[(((triple8) -> rule3))]
("Fiona" "is" "furry" "+")
((triple8) -> (rule3 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Anne is not furry.
False
2
inv-proof
[(((triple3) -> rule3))]
("Anne" "is" "furry" "-")
((triple3) -> (rule3 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is cold.
True
4
proof
[(((((triple3) -> rule3) triple2) -> rule1))]
("Anne" "is" "cold" "+")
((((triple3) -> (rule3 % int2)) triple2) -> (rule1 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is not cold.
False
4
inv-proof
[(((((triple3) -> rule3) triple2) -> rule1))]
("Anne" "is" "cold" "-")
((((triple3) -> (rule3 % int2)) triple2) -> (rule1 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is blue.
True
6
proof
[(((triple1 ((((triple3) -> rule3) triple2) -> rule1)) -> rule2))]
("Anne" "is" "blue" "+")
((triple1 ((((triple3) -> (rule3 % int3)) triple2) -> (rule1 % int2))) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
Anne is not blue.
False
6
inv-proof
[(((triple1 ((((triple3) -> rule3) triple2) -> rule1)) -> rule2))]
("Anne" "is" "blue" "-")
((triple1 ((((triple3) -> (rule3 % int3)) triple2) -> (rule1 % int2))) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3
Fiona is not cold.
Unknown
inv-rconc
[@1: Fiona is cold.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Fiona" "is" "cold" "-")
Fiona is blue.
Unknown
rconc
[@1: Fiona is blue.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Fiona" "is" "blue" "+")
Bob is not big.
Unknown
inv-random
[@0: Bob is big.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "big" "-")
Fiona is red.
Unknown
random
[@0: Fiona is red.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "red" "+")
Bob is not red.
Unknown
inv-random
[@0: Bob is red.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "red" "-")
Fiona is big.
Unknown
random
[@0: Fiona is big.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "big" "+")
Bob is not green.
Unknown
inv-random
[@0: Bob is green.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "green" "-")
Anne is green.
Unknown
random
[@0: Anne is green.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "green" "+")
@0: Anne is big.[(triple1)] Anne is red.[(triple2)] Anne is white.[(triple3)] Bob is blue.[(triple4)] Bob is cold.[(triple5)] Bob is furry.[(triple6)] Fiona is green.[(triple7)] Fiona is white.[(triple8)] Gary is big.[(triple9)] Gary is blue.[(triple10 OR ((triple9 triple11) -> rule2) OR ((triple9 ((triple12 triple14) -> rule1)) -> rule2) OR ((triple9 ((((triple15) -> rule3) triple14) -> rule1)) -> rule2))] Gary is cold.[(triple11 OR ((triple12 triple14) -> rule1) OR ((((triple15) -> rule3) triple14) -> rule1))] Gary is furry.[(triple12 OR ((triple15) -> rule3))] Gary is green.[(triple13)] Gary is red.[(triple14)] Gary is white.[(triple15)] @1: Anne is furry.[(((triple3) -> rule3))] Fiona is furry.[(((triple8) -> rule3))] @2: Anne is cold.[(((((triple3) -> rule3) triple2) -> rule1))] @3: Anne is blue.[(((triple1 ((((triple3) -> rule3) triple2) -> rule1)) -> rule2))]
Anne is big.
("Anne" "is" "big" "+")
triple1
Anne is red.
("Anne" "is" "red" "+")
triple2
Anne is white.
("Anne" "is" "white" "+")
triple3
Bob is blue.
("Bob" "is" "blue" "+")
triple4
Bob is cold.
("Bob" "is" "cold" "+")
triple5
Bob is furry.
("Bob" "is" "furry" "+")
triple6
Fiona is green.
("Fiona" "is" "green" "+")
triple7
Fiona is white.
("Fiona" "is" "white" "+")
triple8
Gary is big.
("Gary" "is" "big" "+")
triple9
Gary is blue.
("Gary" "is" "blue" "+")
triple10
((triple9 triple11) -> (rule2 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
((triple9 ((triple12 triple14) -> (rule1 % int2))) -> (rule2 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((triple9 ((((triple15) -> (rule3 % int3)) triple14) -> (rule1 % int2))) -> (rule2 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is cold.
("Gary" "is" "cold" "+")
triple11
((triple12 triple14) -> (rule1 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((((triple15) -> (rule3 % int2)) triple14) -> (rule1 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
triple12
((triple15) -> (rule3 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
triple13
Gary is red.
("Gary" "is" "red" "+")
triple14
Gary is white.
("Gary" "is" "white" "+")
triple15
Anne is furry.
("Anne" "is" "furry" "+")
((triple3) -> (rule3 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple8) -> (rule3 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
((((triple3) -> (rule3 % int2)) triple2) -> (rule1 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
((triple1 ((((triple3) -> (rule3 % int3)) triple2) -> (rule1 % int2))) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
int2
Anne is furry.
("Anne" "is" "furry" "+")
int3