Anne is red. Anne is smart. Dave is rough. Dave is white. Gary is big. Gary is red. Gary is white. All round people are white. Red people are round. If someone is red and big then they are rough. If someone is round and smart then they are red. Rough, white people are red. If someone is rough and round then they are blue. If Dave is big and Dave is rough then Dave is blue. If someone is round then they are white.
Anne is red.
("Anne" "is" "red" "+")
Anne is smart.
("Anne" "is" "smart" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is white.
("Dave" "is" "white" "+")
Gary is big.
("Gary" "is" "big" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is white.
("Gary" "is" "white" "+")
All round people are white.
((("someone" "is" "round" "+")) -> ("someone" "is" "white" "+"))
Red people are round.
((("someone" "is" "red" "+")) -> ("someone" "is" "round" "+"))
If someone is red and big then they are rough.
((("someone" "is" "red" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "rough" "+"))
If someone is round and smart then they are red.
((("someone" "is" "round" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "red" "+"))
Rough, white people are red.
((("someone" "is" "rough" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "red" "+"))
If someone is rough and round then they are blue.
((("someone" "is" "rough" "+") ("someone" "is" "round" "+")) -> ("someone" "is" "blue" "+"))
If Dave is big and Dave is rough then Dave is blue.
((("Dave" "is" "big" "+") ("Dave" "is" "rough" "+")) -> ("Dave" "is" "blue" "+"))
If someone is round then they are white.
((("someone" "is" "round" "+")) -> ("someone" "is" "white" "+"))
Gary is red.
True
1
proof
[(triple6)]
("Gary" "is" "red" "+")
triple6
Gary is not red.
False
1
inv-proof
[(triple6)]
("Gary" "is" "red" "-")
triple6
Gary is round.
True
2
proof
[(((triple6) -> rule2))]
("Gary" "is" "round" "+")
((triple6) -> (rule2 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Dave is not red.
False
3
inv-proof
[(((triple3 triple4) -> rule5))]
("Dave" "is" "red" "-")
((triple3 triple4) -> (rule5 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Anne is white.
True
3
proof
[(((((triple1) -> rule2)) -> rule1) OR ((((triple1) -> rule2)) -> rule8))]
("Anne" "is" "white" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((triple1) -> (rule2 % int2))) -> (rule8 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Anne is not white.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule1) OR ((((triple1) -> rule2)) -> rule8))]
("Anne" "is" "white" "-")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((triple1) -> (rule2 % int2))) -> (rule8 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Dave is blue.
True
6
proof
[(((triple3 ((((triple3 triple4) -> rule5)) -> rule2)) -> rule6))]
("Dave" "is" "blue" "+")
((triple3 ((((triple3 triple4) -> (rule5 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
int2
Dave is red.
("Dave" "is" "red" "+")
int3
Dave is not blue.
False
6
inv-proof
[(((triple3 ((((triple3 triple4) -> rule5)) -> rule2)) -> rule6))]
("Dave" "is" "blue" "-")
((triple3 ((((triple3 triple4) -> (rule5 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
int2
Dave is red.
("Dave" "is" "red" "+")
int3
Anne is not blue.
Unknown
inv-rconc
[@2: Anne is blue.[CWA. Example of deepest failure = (rule6 <- rule3 <- FAIL)]]
("Anne" "is" "blue" "-")
Anne is rough.
Unknown
rconc
[@1: Anne is rough.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Anne" "is" "rough" "+")
Gary is not smart.
Unknown
inv-random
[@0: Gary is smart.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "smart" "-")
Dave is big.
Unknown
random
[@0: Dave is big.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "big" "+")
Dave is not smart.
Unknown
inv-random
[@0: Dave is smart.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "smart" "-")
Anne is big.
Unknown
random
[@0: Anne is big.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "big" "+")
@0: Anne is red.[(triple1)] Anne is smart.[(triple2)] Dave is rough.[(triple3)] Dave is white.[(triple4)] Gary is big.[(triple5)] Gary is red.[(triple6)] Gary is white.[(triple7 OR ((((triple6) -> rule2)) -> rule1) OR ((((triple6) -> rule2)) -> rule8))] @1: Anne is round.[(((triple1) -> rule2))] Dave is red.[(((triple3 triple4) -> rule5))] Gary is rough.[(((triple6 triple5) -> rule3))] Gary is round.[(((triple6) -> rule2))] @2: Anne is white.[(((((triple1) -> rule2)) -> rule1) OR ((((triple1) -> rule2)) -> rule8))] Dave is round.[(((((triple3 triple4) -> rule5)) -> rule2))] Gary is blue.[(((((triple6 triple5) -> rule3) ((triple6) -> rule2)) -> rule6))] @3: Dave is blue.[(((triple3 ((((triple3 triple4) -> rule5)) -> rule2)) -> rule6))]
Anne is red.
("Anne" "is" "red" "+")
triple1
Anne is smart.
("Anne" "is" "smart" "+")
triple2
Dave is rough.
("Dave" "is" "rough" "+")
triple3
Dave is white.
("Dave" "is" "white" "+")
triple4
Gary is big.
("Gary" "is" "big" "+")
triple5
Gary is red.
("Gary" "is" "red" "+")
triple6
Gary is white.
("Gary" "is" "white" "+")
triple7
((((triple6) -> (rule2 % int2))) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
((((triple6) -> (rule2 % int2))) -> (rule8 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
((triple1) -> (rule2 % int1))
Anne is round.
("Anne" "is" "round" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
((triple3 triple4) -> (rule5 % int1))
Dave is red.
("Dave" "is" "red" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
((triple6 triple5) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
((triple6) -> (rule2 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
((((triple1) -> (rule2 % int2))) -> (rule1 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
((((triple1) -> (rule2 % int2))) -> (rule8 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is round.
("Anne" "is" "round" "+")
int2
Dave is round.
("Dave" "is" "round" "+")
((((triple3 triple4) -> (rule5 % int2))) -> (rule2 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is red.
("Dave" "is" "red" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
((((triple6 triple5) -> (rule3 % int3)) ((triple6) -> (rule2 % int2))) -> (rule6 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
int3
Dave is blue.
("Dave" "is" "blue" "+")
((triple3 ((((triple3 triple4) -> (rule5 % int3))) -> (rule2 % int2))) -> (rule6 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
int2
Dave is red.
("Dave" "is" "red" "+")
int3