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