Bob is furry. Charlie is furry. Dave is smart. Gary is red. If Gary is red and Gary is furry then Gary is rough. All furry, red people are rough. All furry people are blue. If someone is smart and red then they are white. All red people are blue. If someone is red and furry then they are blue.
Bob is furry.
("Bob" "is" "furry" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Gary is red.
("Gary" "is" "red" "+")
If Gary is red and Gary is furry then Gary is rough.
((("Gary" "is" "red" "+") ("Gary" "is" "furry" "+")) -> ("Gary" "is" "rough" "+"))
All furry, red people are rough.
((("someone" "is" "furry" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "rough" "+"))
All furry people are blue.
((("someone" "is" "furry" "+")) -> ("someone" "is" "blue" "+"))
If someone is smart and red then they are white.
((("someone" "is" "smart" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "white" "+"))
All red people are blue.
((("someone" "is" "red" "+")) -> ("someone" "is" "blue" "+"))
If someone is red and furry then they are blue.
((("someone" "is" "red" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "blue" "+"))
Gary is red.
True
1
proof
[(triple4)]
("Gary" "is" "red" "+")
triple4
Charlie is not furry.
False
1
inv-proof
[(triple2)]
("Charlie" "is" "furry" "-")
triple2
Bob is not rough.
Unknown
inv-rconc
[@1: Bob is rough.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Bob" "is" "rough" "-")
Dave is red.
Unknown
random
[@0: Dave is red.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "red" "+")
@0: Bob is furry.[(triple1)] Charlie is furry.[(triple2)] Dave is smart.[(triple3)] Gary is red.[(triple4)] @1: Bob is blue.[(((triple1) -> rule3))] Charlie is blue.[(((triple2) -> rule3))] Gary is blue.[(((triple4) -> rule5))]
Bob is furry.
("Bob" "is" "furry" "+")
triple1
Charlie is furry.
("Charlie" "is" "furry" "+")
triple2
Dave is smart.
("Dave" "is" "smart" "+")
triple3
Gary is red.
("Gary" "is" "red" "+")
triple4
Bob is blue.
("Bob" "is" "blue" "+")
((triple1) -> (rule3 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
((triple2) -> (rule3 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
((triple4) -> (rule5 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1