Anne is furry. Anne is kind. Bob is not quiet. Bob is young. Dave is cold. Fiona is furry. Fiona is young. Quiet, round things are not blue. If something is furry and kind then it is blue. If something is kind and young then it is blue. If something is young then it is kind. Kind things are cold. All furry, round things are cold. Furry things are cold. If something is round and not blue then it is not cold.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Bob is not quiet.
("Bob" "is" "quiet" "-")
Bob is young.
("Bob" "is" "young" "+")
Dave is cold.
("Dave" "is" "cold" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is young.
("Fiona" "is" "young" "+")
Quiet, round things are not blue.
((("something" "is" "quiet" "+") ("something" "is" "round" "+")) -> ("something" "is" "blue" "-"))
If something is furry and kind then it is blue.
((("something" "is" "furry" "+") ("something" "is" "kind" "+")) -> ("something" "is" "blue" "+"))
If something is kind and young then it is blue.
((("something" "is" "kind" "+") ("something" "is" "young" "+")) -> ("something" "is" "blue" "+"))
If something is young then it is kind.
((("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
Kind things are cold.
((("something" "is" "kind" "+")) -> ("something" "is" "cold" "+"))
All furry, round things are cold.
((("something" "is" "furry" "+") ("something" "is" "round" "+")) -> ("something" "is" "cold" "+"))
Furry things are cold.
((("something" "is" "furry" "+")) -> ("something" "is" "cold" "+"))
If something is round and not blue then it is not cold.
((("something" "is" "round" "+") ("something" "is" "blue" "~")) -> ("something" "is" "cold" "-"))
Bob is not quiet.
True
1
proof
[(triple3)]
("Bob" "is" "quiet" "-")
triple3
Anne is not furry.
False
1
inv-proof
[(triple1)]
("Anne" "is" "furry" "-")
triple1
Anne is cold.
True
2
proof
[(((triple1) -> rule7) OR ((triple2) -> rule5))]
("Anne" "is" "cold" "+")
((triple1) -> (rule7 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
((triple2) -> (rule5 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Fiona is not cold.
False
2
inv-proof
[(((triple6) -> rule7) OR ((((triple7) -> rule4)) -> rule5))]
("Fiona" "is" "cold" "-")
((triple6) -> (rule7 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is blue.
True
4
proof
[(((triple6 ((triple7) -> rule4)) -> rule2) OR ((((triple7) -> rule4) triple7) -> rule3))]
("Fiona" "is" "blue" "+")
((triple6 ((triple7) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((triple7) -> (rule4 % int2)) triple7) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Bob is not cold.
False
3
inv-proof
[(((((triple4) -> rule4)) -> rule5))]
("Bob" "is" "cold" "-")
((((triple4) -> (rule4 % int2))) -> (rule5 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Dave is not blue.
Unknown
inv-rconc
[@1: Dave is blue.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Dave" "is" "blue" "-")
Dave is kind.
Unknown
rconc
[@1: Dave is kind.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Dave" "is" "kind" "+")
Anne is not young.
Unknown
inv-random
[@0: Anne is young.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "young" "-")
Fiona is quiet.
Unknown
random
[@0: Fiona is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "quiet" "+")
Dave is not young.
Unknown
inv-random
[@0: Dave is young.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "young" "-")
Fiona is round.
Unknown
random
[@0: Fiona is round.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "round" "+")
@0: Anne is furry.[(triple1)] Anne is kind.[(triple2)] Bob is not quiet.[(triple3)] Bob is young.[(triple4)] Dave is cold.[(triple5)] Fiona is furry.[(triple6)] Fiona is young.[(triple7)] @1: Anne is blue.[(((triple1 triple2) -> rule2))] Anne is cold.[(((triple1) -> rule7) OR ((triple2) -> rule5))] Bob is kind.[(((triple4) -> rule4))] Fiona is cold.[(((triple6) -> rule7) OR ((((triple7) -> rule4)) -> rule5))] Fiona is kind.[(((triple7) -> rule4))] @2: Bob is blue.[(((((triple4) -> rule4) triple4) -> rule3))] Bob is cold.[(((((triple4) -> rule4)) -> rule5))] Fiona is blue.[(((triple6 ((triple7) -> rule4)) -> rule2) OR ((((triple7) -> rule4) triple7) -> rule3))]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
Anne is kind.
("Anne" "is" "kind" "+")
triple2
Bob is not quiet.
("Bob" "is" "quiet" "-")
triple3
Bob is young.
("Bob" "is" "young" "+")
triple4
Dave is cold.
("Dave" "is" "cold" "+")
triple5
Fiona is furry.
("Fiona" "is" "furry" "+")
triple6
Fiona is young.
("Fiona" "is" "young" "+")
triple7
Anne is blue.
("Anne" "is" "blue" "+")
((triple1 triple2) -> (rule2 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is cold.
("Anne" "is" "cold" "+")
((triple1) -> (rule7 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
((triple2) -> (rule5 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
((triple4) -> (rule4 % int1))
Bob is kind.
("Bob" "is" "kind" "+")
int1
Fiona is cold.
("Fiona" "is" "cold" "+")
((triple6) -> (rule7 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
((((triple7) -> (rule4 % int2))) -> (rule5 % int1))
Fiona is cold.
("Fiona" "is" "cold" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
Fiona is kind.
("Fiona" "is" "kind" "+")
((triple7) -> (rule4 % int1))
Fiona is kind.
("Fiona" "is" "kind" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
((((triple4) -> (rule4 % int2)) triple4) -> (rule3 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Bob is cold.
("Bob" "is" "cold" "+")
((((triple4) -> (rule4 % int2))) -> (rule5 % int1))
Bob is cold.
("Bob" "is" "cold" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
int2
Fiona is blue.
("Fiona" "is" "blue" "+")
((triple6 ((triple7) -> (rule4 % int2))) -> (rule2 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2
((((triple7) -> (rule4 % int2)) triple7) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is kind.
("Fiona" "is" "kind" "+")
int2