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