Anne is blue. Anne is cold. Anne is furry. Anne is green. Anne is kind. Anne is quiet. Fiona is cold. Fiona is green. Fiona is quiet. Harry is furry. Harry is green. Harry is kind. If Fiona is furry and Fiona is nice then Fiona is cold. If Fiona is green then Fiona is furry. Cold people are green. If someone is quiet and furry then they are blue. If Fiona is blue and Fiona is furry then Fiona is kind. If someone is blue and nice then they are kind. If Anne is kind then Anne is green. If someone is green and nice then they are cold.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is green.
("Fiona" "is" "green" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is kind.
("Harry" "is" "kind" "+")
If Fiona is furry and Fiona is nice then Fiona is cold.
((("Fiona" "is" "furry" "+") ("Fiona" "is" "nice" "+")) -> ("Fiona" "is" "cold" "+"))
If Fiona is green then Fiona is furry.
((("Fiona" "is" "green" "+")) -> ("Fiona" "is" "furry" "+"))
Cold people are green.
((("someone" "is" "cold" "+")) -> ("someone" "is" "green" "+"))
If someone is quiet and furry then they are blue.
((("someone" "is" "quiet" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "blue" "+"))
If Fiona is blue and Fiona is furry then Fiona is kind.
((("Fiona" "is" "blue" "+") ("Fiona" "is" "furry" "+")) -> ("Fiona" "is" "kind" "+"))
If someone is blue and nice then they are kind.
((("someone" "is" "blue" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "kind" "+"))
If Anne is kind then Anne is green.
((("Anne" "is" "kind" "+")) -> ("Anne" "is" "green" "+"))
If someone is green and nice then they are cold.
((("someone" "is" "green" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "cold" "+"))
Harry is kind.
True
1
proof
[(triple12)]
("Harry" "is" "kind" "+")
triple12
Harry is not furry.
False
1
inv-proof
[(triple10)]
("Harry" "is" "furry" "-")
triple10
Fiona is furry.
True
2
proof
[(((triple8) -> rule2) OR ((((triple7) -> rule3)) -> rule2))]
("Fiona" "is" "furry" "+")
((triple8) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((((triple7) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is not furry.
False
2
inv-proof
[(((triple8) -> rule2) OR ((((triple7) -> rule3)) -> rule2))]
("Fiona" "is" "furry" "-")
((triple8) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((((triple7) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is blue.
True
4
proof
[(((triple9 ((triple8) -> rule2)) -> rule4) OR ((triple9 ((((triple7) -> rule3)) -> rule2)) -> rule4))]
("Fiona" "is" "blue" "+")
((triple9 ((triple8) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
((triple9 ((((triple7) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is not blue.
False
4
inv-proof
[(((triple9 ((triple8) -> rule2)) -> rule4) OR ((triple9 ((((triple7) -> rule3)) -> rule2)) -> rule4))]
("Fiona" "is" "blue" "-")
((triple9 ((triple8) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
((triple9 ((((triple7) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Harry is not blue.
Unknown
inv-rconc
[@1: Harry is blue.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Harry" "is" "blue" "-")
Harry is cold.
Unknown
rconc
[@1: Harry is cold.[CWA. Example of deepest failure = (rule8 <- FAIL)]]
("Harry" "is" "cold" "+")
Fiona is not nice.
Unknown
inv-random
[@0: Fiona is nice.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "nice" "-")
Harry is nice.
Unknown
random
[@0: Harry is nice.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "nice" "+")
Harry is not quiet.
Unknown
inv-random
[@0: Harry is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "quiet" "-")
Anne is nice.
Unknown
random
[@0: Anne is nice.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "nice" "+")
@0: Anne is blue.[(triple1 OR ((triple6 triple3) -> rule4))] Anne is cold.[(triple2)] Anne is furry.[(triple3)] Anne is green.[(triple4 OR ((triple2) -> rule3) OR ((triple5) -> rule7))] Anne is kind.[(triple5)] Anne is quiet.[(triple6)] Fiona is cold.[(triple7)] Fiona is green.[(triple8 OR ((triple7) -> rule3))] Fiona is quiet.[(triple9)] Harry is furry.[(triple10)] Harry is green.[(triple11)] Harry is kind.[(triple12)] @1: Fiona is furry.[(((triple8) -> rule2) OR ((((triple7) -> rule3)) -> rule2))] @2: Fiona is blue.[(((triple9 ((triple8) -> rule2)) -> rule4) OR ((triple9 ((((triple7) -> rule3)) -> rule2)) -> rule4))] @3: Fiona is kind.[(((((triple9 ((triple8) -> rule2)) -> rule4) ((triple8) -> rule2)) -> rule5) OR ((((triple9 ((triple8) -> rule2)) -> rule4) ((((triple7) -> rule3)) -> rule2)) -> rule5) OR ((((triple9 ((((triple7) -> rule3)) -> rule2)) -> rule4) ((triple8) -> rule2)) -> rule5) OR ((((triple9 ((((triple7) -> rule3)) -> rule2)) -> rule4) ((((triple7) -> rule3)) -> rule2)) -> rule5))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
((triple6 triple3) -> (rule4 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
triple2
Anne is furry.
("Anne" "is" "furry" "+")
triple3
Anne is green.
("Anne" "is" "green" "+")
triple4
((triple2) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((triple5) -> (rule7 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is kind.
("Anne" "is" "kind" "+")
triple5
Anne is quiet.
("Anne" "is" "quiet" "+")
triple6
Fiona is cold.
("Fiona" "is" "cold" "+")
triple7
Fiona is green.
("Fiona" "is" "green" "+")
triple8
((triple7) -> (rule3 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple9
Harry is furry.
("Harry" "is" "furry" "+")
triple10
Harry is green.
("Harry" "is" "green" "+")
triple11
Harry is kind.
("Harry" "is" "kind" "+")
triple12
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple8) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
((((triple7) -> (rule3 % int2))) -> (rule2 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple9 ((triple8) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
((triple9 ((((triple7) -> (rule3 % int3))) -> (rule2 % int2))) -> (rule4 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is kind.
("Fiona" "is" "kind" "+")
((((triple9 ((triple8) -> (rule2 % int3))) -> (rule4 % int2)) ((triple8) -> (rule2 % int3))) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
((((triple9 ((triple8) -> (rule2 % int4))) -> (rule4 % int3)) ((((triple7) -> (rule3 % int2))) -> (rule2 % int4))) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is furry.
("Fiona" "is" "furry" "+")
int4
((((triple9 ((((triple7) -> (rule3 % int4))) -> (rule2 % int3))) -> (rule4 % int2)) ((triple8) -> (rule2 % int3))) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4
((((triple9 ((((triple7) -> (rule3 % int4))) -> (rule2 % int3))) -> (rule4 % int2)) ((((triple7) -> (rule3 % int4))) -> (rule2 % int3))) -> (rule5 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
int3
Fiona is green.
("Fiona" "is" "green" "+")
int4