Anne is big. Bob is not blue. Bob is rough. Bob is round. Erin is blue. Erin is red. Erin is rough. Gary is blue. Gary is not red. Gary is rough. If something is blue and not round then it is green. If something is round then it is green. Big things are red. If something is big and white then it is red. Round things are white. All white things are big. If Erin is round and Erin is blue then Erin is not big. If Anne is not green and Anne is not blue then Anne is red.
Anne is big.
("Anne" "is" "big" "+")
Bob is not blue.
("Bob" "is" "blue" "-")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is round.
("Bob" "is" "round" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is rough.
("Erin" "is" "rough" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is not red.
("Gary" "is" "red" "-")
Gary is rough.
("Gary" "is" "rough" "+")
If something is blue and not round then it is green.
((("something" "is" "blue" "+") ("something" "is" "round" "~")) -> ("something" "is" "green" "+"))
If something is round then it is green.
((("something" "is" "round" "+")) -> ("something" "is" "green" "+"))
Big things are red.
((("something" "is" "big" "+")) -> ("something" "is" "red" "+"))
If something is big and white then it is red.
((("something" "is" "big" "+") ("something" "is" "white" "+")) -> ("something" "is" "red" "+"))
Round things are white.
((("something" "is" "round" "+")) -> ("something" "is" "white" "+"))
All white things are big.
((("something" "is" "white" "+")) -> ("something" "is" "big" "+"))
If Erin is round and Erin is blue then Erin is not big.
((("Erin" "is" "round" "+") ("Erin" "is" "blue" "+")) -> ("Erin" "is" "big" "-"))
If Anne is not green and Anne is not blue then Anne is red.
((("Anne" "is" "green" "~") ("Anne" "is" "blue" "~")) -> ("Anne" "is" "red" "+"))
Anne is big.
True
1
proof
[(triple1)]
("Anne" "is" "big" "+")
triple1
Gary is not rough.
False
1
inv-proof
[(triple10)]
("Gary" "is" "rough" "-")
triple10
Bob is white.
True
2
proof
[(((triple4) -> rule5))]
("Bob" "is" "white" "+")
((triple4) -> (rule5 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Anne is not red.
False
2
inv-proof
[(((triple1) -> rule3))]
("Anne" "is" "red" "-")
((triple1) -> (rule3 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Bob is big.
True
3
proof
[(((((triple4) -> rule5)) -> rule6))]
("Bob" "is" "big" "+")
((((triple4) -> (rule5 % int2))) -> (rule6 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is not big.
False
3
inv-proof
[(((((triple4) -> rule5)) -> rule6))]
("Bob" "is" "big" "-")
((((triple4) -> (rule5 % int2))) -> (rule6 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is red.
True
4
proof
[(((((((triple4) -> rule5)) -> rule6)) -> rule3) OR ((((((triple4) -> rule5)) -> rule6) ((triple4) -> rule5)) -> rule4))]
("Bob" "is" "red" "+")
((((((triple4) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
((((((triple4) -> (rule5 % int3))) -> (rule6 % int2)) ((triple4) -> (rule5 % int3))) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
Bob is not red.
False
4
inv-proof
[(((((((triple4) -> rule5)) -> rule6)) -> rule3) OR ((((((triple4) -> rule5)) -> rule6) ((triple4) -> rule5)) -> rule4))]
("Bob" "is" "red" "-")
((((((triple4) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
((((((triple4) -> (rule5 % int3))) -> (rule6 % int2)) ((triple4) -> (rule5 % int3))) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
Gary is not white.
Unknown
inv-rconc
[@1: Gary is white.[CWA. Example of deepest failure = (rule5 <- FAIL)]]
("Gary" "is" "white" "-")
Gary is big.
Unknown
rconc
[@2: Gary is big.[CWA. Example of deepest failure = (rule6 <- rule5 <- FAIL)]]
("Gary" "is" "big" "+")
Gary is not green.
Unknown
inv-rconc
[@1: Gary is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Gary" "is" "green" "-")
Erin is green.
Unknown
rconc
[@1: Erin is green.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Erin" "is" "green" "+")
Anne is not rough.
Unknown
inv-random
[@0: Anne is rough.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "rough" "-")
Anne is round.
Unknown
random
[@0: Anne is round.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "round" "+")
Gary is not round.
Unknown
inv-random
[@0: Gary is round.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "round" "-")
Anne is blue.
Unknown
random
[@0: Anne is blue.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "blue" "+")
@0: Anne is big.[(triple1)] Bob is not blue.[(triple2)] Bob is rough.[(triple3)] Bob is round.[(triple4)] Erin is blue.[(triple5)] Erin is red.[(triple6)] Erin is rough.[(triple7)] Gary is blue.[(triple8)] Gary is not red.[(triple9)] Gary is rough.[(triple10)] @1: Anne is red.[(((triple1) -> rule3))] Bob is green.[(((triple4) -> rule2))] Bob is white.[(((triple4) -> rule5))] @2: Bob is big.[(((((triple4) -> rule5)) -> rule6))] @3: Bob is red.[(((((((triple4) -> rule5)) -> rule6)) -> rule3) OR ((((((triple4) -> rule5)) -> rule6) ((triple4) -> rule5)) -> rule4))]
Anne is big.
("Anne" "is" "big" "+")
triple1
Bob is not blue.
("Bob" "is" "blue" "-")
triple2
Bob is rough.
("Bob" "is" "rough" "+")
triple3
Bob is round.
("Bob" "is" "round" "+")
triple4
Erin is blue.
("Erin" "is" "blue" "+")
triple5
Erin is red.
("Erin" "is" "red" "+")
triple6
Erin is rough.
("Erin" "is" "rough" "+")
triple7
Gary is blue.
("Gary" "is" "blue" "+")
triple8
Gary is not red.
("Gary" "is" "red" "-")
triple9
Gary is rough.
("Gary" "is" "rough" "+")
triple10
Anne is red.
("Anne" "is" "red" "+")
((triple1) -> (rule3 % int1))
Anne is red.
("Anne" "is" "red" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
((triple4) -> (rule2 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
((triple4) -> (rule5 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
((((triple4) -> (rule5 % int2))) -> (rule6 % int1))
Bob is big.
("Bob" "is" "big" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is red.
("Bob" "is" "red" "+")
((((((triple4) -> (rule5 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3
((((((triple4) -> (rule5 % int3))) -> (rule6 % int2)) ((triple4) -> (rule5 % int3))) -> (rule4 % int1))
Bob is red.
("Bob" "is" "red" "+")
int1
Bob is big.
("Bob" "is" "big" "+")
int2
Bob is white.
("Bob" "is" "white" "+")
int3