Anne is blue. Anne is cold. Dave is not furry. Dave is nice. Dave is smart. Fiona is cold. Fiona is smart. Harry is not blue. Harry is nice. Harry is red. If something is furry and not smart then it is cold. Furry, nice things are cold. All furry things are quiet. Nice, cold things are quiet. All smart things are blue. All cold, blue things are furry.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Dave is not furry.
("Dave" "is" "furry" "-")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Fiona is cold.
("Fiona" "is" "cold" "+")
Fiona is smart.
("Fiona" "is" "smart" "+")
Harry is not blue.
("Harry" "is" "blue" "-")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is red.
("Harry" "is" "red" "+")
If something is furry and not smart then it is cold.
((("something" "is" "furry" "+") ("something" "is" "smart" "~")) -> ("something" "is" "cold" "+"))
Furry, nice things are cold.
((("something" "is" "furry" "+") ("something" "is" "nice" "+")) -> ("something" "is" "cold" "+"))
All furry things are quiet.
((("something" "is" "furry" "+")) -> ("something" "is" "quiet" "+"))
Nice, cold things are quiet.
((("something" "is" "nice" "+") ("something" "is" "cold" "+")) -> ("something" "is" "quiet" "+"))
All smart things are blue.
((("something" "is" "smart" "+")) -> ("something" "is" "blue" "+"))
All cold, blue things are furry.
((("something" "is" "cold" "+") ("something" "is" "blue" "+")) -> ("something" "is" "furry" "+"))
Dave is not furry.
True
1
proof
[(triple3)]
("Dave" "is" "furry" "-")
triple3
Anne is not blue.
False
1
inv-proof
[(triple1)]
("Anne" "is" "blue" "-")
triple1
Fiona is blue.
True
2
proof
[(((triple7) -> rule5))]
("Fiona" "is" "blue" "+")
((triple7) -> (rule5 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is not blue.
False
2
inv-proof
[(((triple7) -> rule5))]
("Fiona" "is" "blue" "-")
((triple7) -> (rule5 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is furry.
True
4
proof
[(((triple6 ((triple7) -> rule5)) -> rule6))]
("Fiona" "is" "furry" "+")
((triple6 ((triple7) -> (rule5 % int2))) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is not furry.
False
4
inv-proof
[(((triple6 ((triple7) -> rule5)) -> rule6))]
("Fiona" "is" "furry" "-")
((triple6 ((triple7) -> (rule5 % int2))) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is quiet.
True
5
proof
[(((((triple6 ((triple7) -> rule5)) -> rule6)) -> rule3))]
("Fiona" "is" "quiet" "+")
((((triple6 ((triple7) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Fiona is not quiet.
False
5
inv-proof
[(((((triple6 ((triple7) -> rule5)) -> rule6)) -> rule3))]
("Fiona" "is" "quiet" "-")
((((triple6 ((triple7) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3
Harry is not furry.
Unknown
inv-rconc
[@1: Harry is furry.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Harry" "is" "furry" "-")
Harry is quiet.
Unknown
rconc
[@3: Harry is quiet.[CWA. Example of deepest failure = (rule4 <- rule2 <- rule6 <- FAIL)]]
("Harry" "is" "quiet" "+")
Dave is not quiet.
Unknown
inv-rconc
[@2: Dave is quiet.[CWA. Example of deepest failure = (rule4 <- rule1 <- FAIL)]]
("Dave" "is" "quiet" "-")
Dave is cold.
Unknown
rconc
[@1: Dave is cold.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Dave" "is" "cold" "+")
Anne is not smart.
Unknown
inv-random
[@0: Anne is smart.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "smart" "-")
Anne is red.
Unknown
random
[@0: Anne is red.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "red" "+")
Anne is not nice.
Unknown
inv-random
[@0: Anne is nice.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "nice" "-")
Fiona is red.
Unknown
random
[@0: Fiona is red.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "red" "+")
@0: Anne is blue.[(triple1)] Anne is cold.[(triple2)] Dave is nice.[(triple4)] Dave is not furry.[(triple3)] Dave is smart.[(triple5)] Fiona is cold.[(triple6)] Fiona is smart.[(triple7)] Harry is nice.[(triple9)] Harry is not blue.[(triple8)] Harry is red.[(triple10)] @1: Anne is furry.[(((triple2 triple1) -> rule6))] Dave is blue.[(((triple5) -> rule5))] Fiona is blue.[(((triple7) -> rule5))] @2: Anne is quiet.[(((((triple2 triple1) -> rule6)) -> rule3))] Fiona is furry.[(((triple6 ((triple7) -> rule5)) -> rule6))] @3: Fiona is quiet.[(((((triple6 ((triple7) -> rule5)) -> rule6)) -> rule3))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is cold.
("Anne" "is" "cold" "+")
triple2
Dave is nice.
("Dave" "is" "nice" "+")
triple4
Dave is not furry.
("Dave" "is" "furry" "-")
triple3
Dave is smart.
("Dave" "is" "smart" "+")
triple5
Fiona is cold.
("Fiona" "is" "cold" "+")
triple6
Fiona is smart.
("Fiona" "is" "smart" "+")
triple7
Harry is nice.
("Harry" "is" "nice" "+")
triple9
Harry is not blue.
("Harry" "is" "blue" "-")
triple8
Harry is red.
("Harry" "is" "red" "+")
triple10
Anne is furry.
("Anne" "is" "furry" "+")
((triple2 triple1) -> (rule6 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
((triple5) -> (rule5 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple7) -> (rule5 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
((((triple2 triple1) -> (rule6 % int2))) -> (rule3 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is furry.
("Anne" "is" "furry" "+")
int2
Fiona is furry.
("Fiona" "is" "furry" "+")
((triple6 ((triple7) -> (rule5 % int2))) -> (rule6 % int1))
Fiona is furry.
("Fiona" "is" "furry" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is quiet.
("Fiona" "is" "quiet" "+")
((((triple6 ((triple7) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is quiet.
("Fiona" "is" "quiet" "+")
int1
Fiona is furry.
("Fiona" "is" "furry" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
int3