Bob is blue. Bob is red. Bob is rough. Bob is round. Dave is blue. Dave is furry. Dave is green. Dave is red. Dave is not rough. Erin is green. Erin is rough. Gary is blue. Gary is furry. Gary is not green. Gary is red. Gary is not round. If Gary is furry and Gary is young then Gary is rough. If someone is green then they are not young. Rough, blue people are red. Blue, young people are not green. If someone is furry then they are blue. If Dave is young and Dave is not green then Dave is round.
Bob is blue.
("Bob" "is" "blue" "+")
Bob is red.
("Bob" "is" "red" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is round.
("Bob" "is" "round" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is furry.
("Dave" "is" "furry" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is red.
("Dave" "is" "red" "+")
Dave is not rough.
("Dave" "is" "rough" "-")
Erin is green.
("Erin" "is" "green" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is not green.
("Gary" "is" "green" "-")
Gary is red.
("Gary" "is" "red" "+")
Gary is not round.
("Gary" "is" "round" "-")
If Gary is furry and Gary is young then Gary is rough.
((("Gary" "is" "furry" "+") ("Gary" "is" "young" "+")) -> ("Gary" "is" "rough" "+"))
If someone is green then they are not young.
((("someone" "is" "green" "+")) -> ("someone" "is" "young" "-"))
Rough, blue people are red.
((("someone" "is" "rough" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "red" "+"))
Blue, young people are not green.
((("someone" "is" "blue" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "green" "-"))
If someone is furry then they are blue.
((("someone" "is" "furry" "+")) -> ("someone" "is" "blue" "+"))
If Dave is young and Dave is not green then Dave is round.
((("Dave" "is" "young" "+") ("Dave" "is" "green" "~")) -> ("Dave" "is" "round" "+"))
Bob is rough.
True
1
proof
[(triple3)]
("Bob" "is" "rough" "+")
triple3
Gary is not blue.
False
1
inv-proof
[(triple12 OR ((triple13) -> rule5))]
("Gary" "is" "blue" "-")
triple12
((triple13) -> (rule5 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Erin is not young.
True
2
proof
[(((triple10) -> rule2))]
("Erin" "is" "young" "-")
((triple10) -> (rule2 % int1))
Erin is not young.
("Erin" "is" "young" "-")
int1
Erin is young.
False
2
inv-proof
[(((triple10) -> rule2))]
("Erin" "is" "young" "+")
((triple10) -> (rule2 % int1))
Erin is not young.
("Erin" "is" "young" "-")
int1
Gary is not rough.
Unknown
inv-rconc
[@1: Gary is rough.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "rough" "-")
Erin is red.
Unknown
rconc
[@2: Erin is red.[CWA. Example of deepest failure = (rule3 <- rule5 <- FAIL)]]
("Erin" "is" "red" "+")
Bob is not young.
Unknown
inv-random
[@0: Bob is young.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "young" "-")
Bob is furry.
Unknown
random
[@0: Bob is furry.[CWA. Example of deepest failure = (FAIL)]]
("Bob" "is" "furry" "+")
@0: Bob is blue.[(triple1)] Bob is red.[(triple2 OR ((triple3 triple1) -> rule3))] Bob is rough.[(triple3)] Bob is round.[(triple4)] Dave is blue.[(triple5 OR ((triple6) -> rule5))] Dave is furry.[(triple6)] Dave is green.[(triple7)] Dave is not rough.[(triple9)] Dave is red.[(triple8)] Erin is green.[(triple10)] Erin is rough.[(triple11)] Gary is blue.[(triple12 OR ((triple13) -> rule5))] Gary is furry.[(triple13)] Gary is not green.[(triple14)] Gary is not round.[(triple16)] Gary is red.[(triple15)] @1: Dave is not young.[(((triple7) -> rule2))] Erin is not young.[(((triple10) -> rule2))]
Bob is blue.
("Bob" "is" "blue" "+")
triple1
Bob is red.
("Bob" "is" "red" "+")
triple2
((triple3 triple1) -> (rule3 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is rough.
("Bob" "is" "rough" "+")
triple3
Bob is round.
("Bob" "is" "round" "+")
triple4
Dave is blue.
("Dave" "is" "blue" "+")
triple5
((triple6) -> (rule5 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
triple6
Dave is green.
("Dave" "is" "green" "+")
triple7
Dave is not rough.
("Dave" "is" "rough" "-")
triple9
Dave is red.
("Dave" "is" "red" "+")
triple8
Erin is green.
("Erin" "is" "green" "+")
triple10
Erin is rough.
("Erin" "is" "rough" "+")
triple11
Gary is blue.
("Gary" "is" "blue" "+")
triple12
((triple13) -> (rule5 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
triple13
Gary is not green.
("Gary" "is" "green" "-")
triple14
Gary is not round.
("Gary" "is" "round" "-")
triple16
Gary is red.
("Gary" "is" "red" "+")
triple15
Dave is not young.
("Dave" "is" "young" "-")
((triple7) -> (rule2 % int1))
Dave is not young.
("Dave" "is" "young" "-")
int1
Erin is not young.
("Erin" "is" "young" "-")
((triple10) -> (rule2 % int1))
Erin is not young.
("Erin" "is" "young" "-")
int1