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