Bob is quiet. If Bob is furry and Bob is young then Bob is blue. If Bob is furry and Bob is not young then Bob is red. Red things are not rough. Smart, young things are red. Furry, smart things are red. Rough things are smart.
Bob is quiet.
("Bob" "is" "quiet" "+")
If Bob is furry and Bob is young then Bob is blue.
((("Bob" "is" "furry" "+") ("Bob" "is" "young" "+")) -> ("Bob" "is" "blue" "+"))
If Bob is furry and Bob is not young then Bob is red.
((("Bob" "is" "furry" "+") ("Bob" "is" "young" "~")) -> ("Bob" "is" "red" "+"))
Red things are not rough.
((("something" "is" "red" "+")) -> ("something" "is" "rough" "-"))
Smart, young things are red.
((("something" "is" "smart" "+") ("something" "is" "young" "+")) -> ("something" "is" "red" "+"))
Furry, smart things are red.
((("something" "is" "furry" "+") ("something" "is" "smart" "+")) -> ("something" "is" "red" "+"))
Rough things are smart.
((("something" "is" "rough" "+")) -> ("something" "is" "smart" "+"))
Bob is quiet.
True
1
proof
[(triple1)]
("Bob" "is" "quiet" "+")
triple1
Bob is not quiet.
False
1
inv-proof
[(triple1)]
("Bob" "is" "quiet" "-")
triple1
Bob is not red.
Unknown
inv-rconc
[@1: Bob is red.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Bob" "is" "red" "-")
Bob is rough.
Unknown
random
[@0: Bob is rough.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "rough" "+")
@0: Bob is quiet.[(triple1)]
Bob is quiet.
("Bob" "is" "quiet" "+")
triple1