Anne is blue. Anne is cold. Anne is furry. Anne is red. Bob is big. Bob is blue. Bob is cold. Bob is not furry. Bob is not red. Bob is round. Erin is cold. Erin is not quiet. All cold things are big. Big, blue things are round. If Erin is furry and Erin is quiet then Erin is blue.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is red.
("Anne" "is" "red" "+")
Bob is big.
("Bob" "is" "big" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is not furry.
("Bob" "is" "furry" "-")
Bob is not red.
("Bob" "is" "red" "-")
Bob is round.
("Bob" "is" "round" "+")
Erin is cold.
("Erin" "is" "cold" "+")
Erin is not quiet.
("Erin" "is" "quiet" "-")
All cold things are big.
((("something" "is" "cold" "+")) -> ("something" "is" "big" "+"))
Big, blue things are round.
((("something" "is" "big" "+") ("something" "is" "blue" "+")) -> ("something" "is" "round" "+"))
If Erin is furry and Erin is quiet then Erin is blue.
((("Erin" "is" "furry" "+") ("Erin" "is" "quiet" "+")) -> ("Erin" "is" "blue" "+"))
Bob is blue.
True
1
proof
[(triple6)]
("Bob" "is" "blue" "+")
triple6
Anne is not blue.
False
1
inv-proof
[(triple1)]
("Anne" "is" "blue" "-")
triple1
Anne is big.
True
2
proof
[(((triple2) -> rule1))]
("Anne" "is" "big" "+")
((triple2) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is not big.
False
2
inv-proof
[(((triple2) -> rule1))]
("Anne" "is" "big" "-")
((triple2) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is round.
True
4
proof
[(((((triple2) -> rule1) triple1) -> rule2))]
("Anne" "is" "round" "+")
((((triple2) -> (rule1 % int2)) triple1) -> (rule2 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Anne is not round.
False
4
inv-proof
[(((((triple2) -> rule1) triple1) -> rule2))]
("Anne" "is" "round" "-")
((((triple2) -> (rule1 % int2)) triple1) -> (rule2 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
Erin is not round.
Unknown
inv-rconc
[@2: Erin is round.[CWA. Example of deepest failure = (rule2 <- rule3 <- FAIL)]]
("Erin" "is" "round" "-")
Erin is blue.
Unknown
rconc
[@1: Erin is blue.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Erin" "is" "blue" "+")
Bob is not quiet.
Unknown
inv-random
[@0: Bob is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "quiet" "-")
Erin is furry.
Unknown
random
[@0: Erin is furry.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "furry" "+")
Erin is not red.
Unknown
inv-random
[@0: Erin is red.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "red" "-")
Anne is quiet.
Unknown
random
[@0: Anne is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "quiet" "+")
@0: Anne is blue.[(triple1)] Anne is cold.[(triple2)] Anne is furry.[(triple3)] Anne is red.[(triple4)] Bob is big.[(triple5 OR ((triple7) -> rule1))] Bob is blue.[(triple6)] Bob is cold.[(triple7)] Bob is not furry.[(triple8)] Bob is not red.[(triple9)] Bob is round.[(triple10 OR ((triple5 triple6) -> rule2) OR ((((triple7) -> rule1) triple6) -> rule2))] Erin is cold.[(triple11)] Erin is not quiet.[(triple12)] @1: Anne is big.[(((triple2) -> rule1))] Erin is big.[(((triple11) -> rule1))] @2: Anne is round.[(((((triple2) -> rule1) triple1) -> rule2))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is cold.
("Anne" "is" "cold" "+")
triple2
Anne is furry.
("Anne" "is" "furry" "+")
triple3
Anne is red.
("Anne" "is" "red" "+")
triple4
Bob is big.
("Bob" "is" "big" "+")
triple5
((triple7) -> (rule1 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
triple6
Bob is cold.
("Bob" "is" "cold" "+")
triple7
Bob is not furry.
("Bob" "is" "furry" "-")
triple8
Bob is not red.
("Bob" "is" "red" "-")
triple9
Bob is round.
("Bob" "is" "round" "+")
triple10
((triple5 triple6) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
((((triple7) -> (rule1 % int2)) triple6) -> (rule2 % int1))
Bob is round.
("Bob" "is" "round" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Erin is cold.
("Erin" "is" "cold" "+")
triple11
Erin is not quiet.
("Erin" "is" "quiet" "-")
triple12
Anne is big.
("Anne" "is" "big" "+")
((triple2) -> (rule1 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Erin is big.
("Erin" "is" "big" "+")
((triple11) -> (rule1 % int1))
Erin is big.
("Erin" "is" "big" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
((((triple2) -> (rule1 % int2)) triple1) -> (rule2 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2