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