Charlie is green. Charlie is round. Dave is big. Dave is green. Dave is kind. Dave is round. Dave is white. If Dave is kind then Dave is blue. Round, red things are big. If something is round then it is kind. If Charlie is kind then Charlie is red. All big things are green. If Dave is white then Dave is big.
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is round.
("Dave" "is" "round" "+")
Dave is white.
("Dave" "is" "white" "+")
If Dave is kind then Dave is blue.
((("Dave" "is" "kind" "+")) -> ("Dave" "is" "blue" "+"))
Round, red things are big.
((("something" "is" "round" "+") ("something" "is" "red" "+")) -> ("something" "is" "big" "+"))
If something is round then it is kind.
((("something" "is" "round" "+")) -> ("something" "is" "kind" "+"))
If Charlie is kind then Charlie is red.
((("Charlie" "is" "kind" "+")) -> ("Charlie" "is" "red" "+"))
All big things are green.
((("something" "is" "big" "+")) -> ("something" "is" "green" "+"))
If Dave is white then Dave is big.
((("Dave" "is" "white" "+")) -> ("Dave" "is" "big" "+"))
Dave is kind.
True
1
proof
[(triple5 OR ((triple6) -> rule3))]
("Dave" "is" "kind" "+")
triple5
((triple6) -> (rule3 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is not green.
False
1
inv-proof
[(triple4 OR ((triple3) -> rule5) OR ((((triple7) -> rule6)) -> rule5))]
("Dave" "is" "green" "-")
triple4
((triple3) -> (rule5 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((((triple7) -> (rule6 % int2))) -> (rule5 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is blue.
True
2
proof
[(((triple5) -> rule1) OR ((((triple6) -> rule3)) -> rule1))]
("Dave" "is" "blue" "+")
((triple5) -> (rule1 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((((triple6) -> (rule3 % int2))) -> (rule1 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Dave is not blue.
False
2
inv-proof
[(((triple5) -> rule1) OR ((((triple6) -> rule3)) -> rule1))]
("Dave" "is" "blue" "-")
((triple5) -> (rule1 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((((triple6) -> (rule3 % int2))) -> (rule1 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Charlie is not blue.
Unknown
inv-random
[@0: Charlie is blue.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "blue" "-")
Dave is red.
Unknown
random
[@0: Dave is red.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "red" "+")
@0: Charlie is green.[(triple1 OR ((((triple2 ((((triple2) -> rule3)) -> rule4)) -> rule2)) -> rule5))] Charlie is round.[(triple2)] Dave is big.[(triple3 OR ((triple7) -> rule6))] Dave is green.[(triple4 OR ((triple3) -> rule5) OR ((((triple7) -> rule6)) -> rule5))] Dave is kind.[(triple5 OR ((triple6) -> rule3))] Dave is round.[(triple6)] Dave is white.[(triple7)] @1: Charlie is kind.[(((triple2) -> rule3))] Dave is blue.[(((triple5) -> rule1) OR ((((triple6) -> rule3)) -> rule1))] @2: Charlie is red.[(((((triple2) -> rule3)) -> rule4))] @3: Charlie is big.[(((triple2 ((((triple2) -> rule3)) -> rule4)) -> rule2))]
Charlie is green.
("Charlie" "is" "green" "+")
triple1
((((triple2 ((((triple2) -> (rule3 % int4))) -> (rule4 % int3))) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is round.
("Charlie" "is" "round" "+")
triple2
Dave is big.
("Dave" "is" "big" "+")
triple3
((triple7) -> (rule6 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
triple4
((triple3) -> (rule5 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
((((triple7) -> (rule6 % int2))) -> (rule5 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
triple5
((triple6) -> (rule3 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
triple6
Dave is white.
("Dave" "is" "white" "+")
triple7
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple2) -> (rule3 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
((triple5) -> (rule1 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((((triple6) -> (rule3 % int2))) -> (rule1 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
((((triple2) -> (rule3 % int2))) -> (rule4 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
((triple2 ((((triple2) -> (rule3 % int3))) -> (rule4 % int2))) -> (rule2 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is red.
("Charlie" "is" "red" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3