Bob is furry. Charlie is furry. Gary is green. Harry is kind. If something is red and smart then it is green. All furry things are red. Green, nice things are smart. All green, red things are big. Kind things are furry. Green, furry things are red.
Bob is furry.
("Bob" "is" "furry" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Harry is kind.
("Harry" "is" "kind" "+")
If something is red and smart then it is green.
((("something" "is" "red" "+") ("something" "is" "smart" "+")) -> ("something" "is" "green" "+"))
All furry things are red.
((("something" "is" "furry" "+")) -> ("something" "is" "red" "+"))
Green, nice things are smart.
((("something" "is" "green" "+") ("something" "is" "nice" "+")) -> ("something" "is" "smart" "+"))
All green, red things are big.
((("something" "is" "green" "+") ("something" "is" "red" "+")) -> ("something" "is" "big" "+"))
Kind things are furry.
((("something" "is" "kind" "+")) -> ("something" "is" "furry" "+"))
Green, furry things are red.
((("something" "is" "green" "+") ("something" "is" "furry" "+")) -> ("something" "is" "red" "+"))
Charlie is furry.
True
1
proof
[(triple2)]
("Charlie" "is" "furry" "+")
triple2
Gary is not green.
False
1
inv-proof
[(triple3)]
("Gary" "is" "green" "-")
triple3
Harry is furry.
True
2
proof
[(((triple4) -> rule5))]
("Harry" "is" "furry" "+")
((triple4) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is not furry.
False
2
inv-proof
[(((triple4) -> rule5))]
("Harry" "is" "furry" "-")
((triple4) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is red.
True
3
proof
[(((((triple4) -> rule5)) -> rule2))]
("Harry" "is" "red" "+")
((((triple4) -> (rule5 % int2))) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is not red.
False
3
inv-proof
[(((((triple4) -> rule5)) -> rule2))]
("Harry" "is" "red" "-")
((((triple4) -> (rule5 % int2))) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Gary is not smart.
Unknown
inv-rconc
[@1: Gary is smart.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Gary" "is" "smart" "-")
Bob is green.
Unknown
rconc
[@2: Bob is green.[CWA. Example of deepest failure = (rule1 <- rule3 <- FAIL)]]
("Bob" "is" "green" "+")
Harry is not green.
Unknown
inv-rconc
[@2: Harry is green.[CWA. Example of deepest failure = (rule1 <- rule3 <- FAIL)]]
("Harry" "is" "green" "-")
Charlie is nice.
Unknown
random
[@0: Charlie is nice.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "nice" "+")
Harry is not nice.
Unknown
inv-random
[@0: Harry is nice.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "nice" "-")
Gary is kind.
Unknown
random
[@0: Gary is kind.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "kind" "+")
@0: Bob is furry.[(triple1)] Charlie is furry.[(triple2)] Gary is green.[(triple3)] Harry is kind.[(triple4)] @1: Bob is red.[(((triple1) -> rule2))] Charlie is red.[(((triple2) -> rule2))] Harry is furry.[(((triple4) -> rule5))] @2: Harry is red.[(((((triple4) -> rule5)) -> rule2))]
Bob is furry.
("Bob" "is" "furry" "+")
triple1
Charlie is furry.
("Charlie" "is" "furry" "+")
triple2
Gary is green.
("Gary" "is" "green" "+")
triple3
Harry is kind.
("Harry" "is" "kind" "+")
triple4
Bob is red.
("Bob" "is" "red" "+")
((triple1) -> (rule2 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
((triple2) -> (rule2 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
((triple4) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is red.
("Harry" "is" "red" "+")
((((triple4) -> (rule5 % int2))) -> (rule2 % int1))
Harry is red.
("Harry" "is" "red" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2