Anne is smart. Charlie is blue. Charlie is green. Charlie is rough. Charlie is white. Dave is blue. Dave is kind. Dave is rough. Dave is smart. Dave is white. Erin is green. Erin is rough. All green people are blue. All kind, white people are quiet. Smart people are green. If Anne is blue then Anne is rough. If someone is rough then they are kind. If someone is kind then they are rough. Quiet, blue people are rough. If Anne is blue and Anne is quiet then Anne is rough. All blue people are white.
Anne is smart.
("Anne" "is" "smart" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is kind.
("Dave" "is" "kind" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Dave is white.
("Dave" "is" "white" "+")
Erin is green.
("Erin" "is" "green" "+")
Erin is rough.
("Erin" "is" "rough" "+")
All green people are blue.
((("someone" "is" "green" "+")) -> ("someone" "is" "blue" "+"))
All kind, white people are quiet.
((("someone" "is" "kind" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "quiet" "+"))
Smart people are green.
((("someone" "is" "smart" "+")) -> ("someone" "is" "green" "+"))
If Anne is blue then Anne is rough.
((("Anne" "is" "blue" "+")) -> ("Anne" "is" "rough" "+"))
If someone is rough then they are kind.
((("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
If someone is kind then they are rough.
((("someone" "is" "kind" "+")) -> ("someone" "is" "rough" "+"))
Quiet, blue people are rough.
((("someone" "is" "quiet" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "rough" "+"))
If Anne is blue and Anne is quiet then Anne is rough.
((("Anne" "is" "blue" "+") ("Anne" "is" "quiet" "+")) -> ("Anne" "is" "rough" "+"))
All blue people are white.
((("someone" "is" "blue" "+")) -> ("someone" "is" "white" "+"))
Charlie is blue.
True
1
proof
[(triple2 OR ((triple3) -> rule1))]
("Charlie" "is" "blue" "+")
triple2
((triple3) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Dave is not white.
False
1
inv-proof
[(triple10 OR ((triple6) -> rule9) OR ((((((triple9) -> rule3)) -> rule1)) -> rule9))]
("Dave" "is" "white" "-")
triple10
((triple6) -> (rule9 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
((((((triple9) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule9 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Anne is green.
True
2
proof
[(((triple1) -> rule3))]
("Anne" "is" "green" "+")
((triple1) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Dave is not green.
False
2
inv-proof
[(((triple9) -> rule3))]
("Dave" "is" "green" "-")
((triple9) -> (rule3 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Charlie is quiet.
True
4
proof
[(((((triple4) -> rule5) triple5) -> rule2) OR ((((triple4) -> rule5) ((triple2) -> rule9)) -> rule2) OR ((((triple4) -> rule5) ((((triple3) -> rule1)) -> rule9)) -> rule2))]
("Charlie" "is" "quiet" "+")
((((triple4) -> (rule5 % int2)) triple5) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
((((triple4) -> (rule5 % int3)) ((triple2) -> (rule9 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
((((triple4) -> (rule5 % int4)) ((((triple3) -> (rule1 % int3))) -> (rule9 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Erin is not white.
False
3
inv-proof
[(((((triple11) -> rule1)) -> rule9))]
("Erin" "is" "white" "-")
((((triple11) -> (rule1 % int2))) -> (rule9 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Anne is rough.
True
4
proof
[(((((((triple1) -> rule3)) -> rule1)) -> rule4))]
("Anne" "is" "rough" "+")
((((((triple1) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Erin is not quiet.
False
6
inv-proof
[(((((triple12) -> rule5) ((((triple11) -> rule1)) -> rule9)) -> rule2))]
("Erin" "is" "quiet" "-")
((((triple12) -> (rule5 % int4)) ((((triple11) -> (rule1 % int3))) -> (rule9 % int2))) -> (rule2 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is kind.
("Erin" "is" "kind" "+")
int4
Anne is kind.
True
5
proof
[(((((((((triple1) -> rule3)) -> rule1)) -> rule4)) -> rule5))]
("Anne" "is" "kind" "+")
((((((((triple1) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
Anne is not kind.
False
5
inv-proof
[(((((((((triple1) -> rule3)) -> rule1)) -> rule4)) -> rule5))]
("Anne" "is" "kind" "-")
((((((((triple1) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
Anne is quiet.
True
10
proof
[(((((((((((triple1) -> rule3)) -> rule1)) -> rule4)) -> rule5) ((((((triple1) -> rule3)) -> rule1)) -> rule9)) -> rule2))]
("Anne" "is" "quiet" "+")
((((((((((triple1) -> (rule3 % int6))) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3)) ((((((triple1) -> (rule3 % int6))) -> (rule1 % int5))) -> (rule9 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
int3
Anne is rough.
("Anne" "is" "rough" "+")
int4
Anne is blue.
("Anne" "is" "blue" "+")
int5
Anne is green.
("Anne" "is" "green" "+")
int6
Anne is not quiet.
False
10
inv-proof
[(((((((((((triple1) -> rule3)) -> rule1)) -> rule4)) -> rule5) ((((((triple1) -> rule3)) -> rule1)) -> rule9)) -> rule2))]
("Anne" "is" "quiet" "-")
((((((((((triple1) -> (rule3 % int6))) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3)) ((((((triple1) -> (rule3 % int6))) -> (rule1 % int5))) -> (rule9 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
int3
Anne is rough.
("Anne" "is" "rough" "+")
int4
Anne is blue.
("Anne" "is" "blue" "+")
int5
Anne is green.
("Anne" "is" "green" "+")
int6
Erin is not smart.
Unknown
inv-random
[@0: Erin is smart.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "smart" "-")
Charlie is smart.
Unknown
random
[@0: Charlie is smart.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "smart" "+")
@0: Anne is smart.[(triple1)] Charlie is blue.[(triple2 OR ((triple3) -> rule1))] Charlie is green.[(triple3)] Charlie is rough.[(triple4)] Charlie is white.[(triple5 OR ((triple2) -> rule9) OR ((((triple3) -> rule1)) -> rule9))] Dave is blue.[(triple6 OR ((((triple9) -> rule3)) -> rule1))] Dave is kind.[(triple7 OR ((triple8) -> rule5))] Dave is rough.[(triple8 OR ((triple7) -> rule6) OR ((((triple7 triple10) -> rule2) triple6) -> rule7) OR ((((triple7 ((triple6) -> rule9)) -> rule2) triple6) -> rule7) OR ((((triple7 triple10) -> rule2) ((((triple9) -> rule3)) -> rule1)) -> rule7) OR ((((triple7 ((triple6) -> rule9)) -> rule2) ((((triple9) -> rule3)) -> rule1)) -> rule7) OR ((((triple7 ((((((triple9) -> rule3)) -> rule1)) -> rule9)) -> rule2) triple6) -> rule7) OR ((((triple7 ((((((triple9) -> rule3)) -> rule1)) -> rule9)) -> rule2) ((((triple9) -> rule3)) -> rule1)) -> rule7))] Dave is smart.[(triple9)] Dave is white.[(triple10 OR ((triple6) -> rule9) OR ((((((triple9) -> rule3)) -> rule1)) -> rule9))] Erin is green.[(triple11)] Erin is rough.[(triple12)] @1: Anne is green.[(((triple1) -> rule3))] Charlie is kind.[(((triple4) -> rule5))] Dave is green.[(((triple9) -> rule3))] Dave is quiet.[(((triple7 triple10) -> rule2) OR ((triple7 ((triple6) -> rule9)) -> rule2) OR ((((triple8) -> rule5) triple10) -> rule2) OR ((((triple8) -> rule5) ((triple6) -> rule9)) -> rule2) OR ((triple7 ((((((triple9) -> rule3)) -> rule1)) -> rule9)) -> rule2) OR ((((triple8) -> rule5) ((((((triple9) -> rule3)) -> rule1)) -> rule9)) -> rule2))] Erin is blue.[(((triple11) -> rule1))] Erin is kind.[(((triple12) -> rule5))] @2: Anne is blue.[(((((triple1) -> rule3)) -> rule1))] Charlie is quiet.[(((((triple4) -> rule5) triple5) -> rule2) OR ((((triple4) -> rule5) ((triple2) -> rule9)) -> rule2) OR ((((triple4) -> rule5) ((((triple3) -> rule1)) -> rule9)) -> rule2))] Erin is white.[(((((triple11) -> rule1)) -> rule9))] @3: Anne is rough.[(((((((triple1) -> rule3)) -> rule1)) -> rule4))] Anne is white.[(((((((triple1) -> rule3)) -> rule1)) -> rule9))] Erin is quiet.[(((((triple12) -> rule5) ((((triple11) -> rule1)) -> rule9)) -> rule2))] @4: Anne is kind.[(((((((((triple1) -> rule3)) -> rule1)) -> rule4)) -> rule5))] @5: Anne is quiet.[(((((((((((triple1) -> rule3)) -> rule1)) -> rule4)) -> rule5) ((((((triple1) -> rule3)) -> rule1)) -> rule9)) -> rule2))]
Anne is smart.
("Anne" "is" "smart" "+")
triple1
Charlie is blue.
("Charlie" "is" "blue" "+")
triple2
((triple3) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
triple3
Charlie is rough.
("Charlie" "is" "rough" "+")
triple4
Charlie is white.
("Charlie" "is" "white" "+")
triple5
((triple2) -> (rule9 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
((((triple3) -> (rule1 % int2))) -> (rule9 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
triple6
((((triple9) -> (rule3 % int2))) -> (rule1 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
triple7
((triple8) -> (rule5 % int1))
Dave is kind.
("Dave" "is" "kind" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
triple8
((triple7) -> (rule6 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
((((triple7 triple10) -> (rule2 % int2)) triple6) -> (rule7 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
((((triple7 ((triple6) -> (rule9 % int3))) -> (rule2 % int2)) triple6) -> (rule7 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is white.
("Dave" "is" "white" "+")
int3
((((triple7 triple10) -> (rule2 % int4)) ((((triple9) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
((((triple7 ((triple6) -> (rule9 % int5))) -> (rule2 % int4)) ((((triple9) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule7 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Dave is quiet.
("Dave" "is" "quiet" "+")
int4
Dave is white.
("Dave" "is" "white" "+")
int5
((((triple7 ((((((triple9) -> (rule3 % int5))) -> (rule1 % int4))) -> (rule9 % int3))) -> (rule2 % int2)) triple6) -> (rule7 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is white.
("Dave" "is" "white" "+")
int3
Dave is blue.
("Dave" "is" "blue" "+")
int4
Dave is green.
("Dave" "is" "green" "+")
int5
((((triple7 ((((((triple9) -> (rule3 % int5))) -> (rule1 % int4))) -> (rule9 % int3))) -> (rule2 % int2)) ((((triple9) -> (rule3 % int5))) -> (rule1 % int4))) -> (rule7 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
int2
Dave is white.
("Dave" "is" "white" "+")
int3
Dave is blue.
("Dave" "is" "blue" "+")
int4
Dave is green.
("Dave" "is" "green" "+")
int5
Dave is smart.
("Dave" "is" "smart" "+")
triple9
Dave is white.
("Dave" "is" "white" "+")
triple10
((triple6) -> (rule9 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
((((((triple9) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule9 % int1))
Dave is white.
("Dave" "is" "white" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Erin is green.
("Erin" "is" "green" "+")
triple11
Erin is rough.
("Erin" "is" "rough" "+")
triple12
Anne is green.
("Anne" "is" "green" "+")
((triple1) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
((triple4) -> (rule5 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
((triple9) -> (rule3 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is quiet.
("Dave" "is" "quiet" "+")
((triple7 triple10) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
((triple7 ((triple6) -> (rule9 % int2))) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
((((triple8) -> (rule5 % int2)) triple10) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is kind.
("Dave" "is" "kind" "+")
int2
((((triple8) -> (rule5 % int3)) ((triple6) -> (rule9 % int2))) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
Dave is kind.
("Dave" "is" "kind" "+")
int3
((triple7 ((((((triple9) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule9 % int2))) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
int4
((((triple8) -> (rule5 % int5)) ((((((triple9) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule9 % int2))) -> (rule2 % int1))
Dave is quiet.
("Dave" "is" "quiet" "+")
int1
Dave is white.
("Dave" "is" "white" "+")
int2
Dave is blue.
("Dave" "is" "blue" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
int4
Dave is kind.
("Dave" "is" "kind" "+")
int5
Erin is blue.
("Erin" "is" "blue" "+")
((triple11) -> (rule1 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is kind.
("Erin" "is" "kind" "+")
((triple12) -> (rule5 % int1))
Erin is kind.
("Erin" "is" "kind" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
((((triple1) -> (rule3 % int2))) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((((triple4) -> (rule5 % int2)) triple5) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
((((triple4) -> (rule5 % int3)) ((triple2) -> (rule9 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
((((triple4) -> (rule5 % int4)) ((((triple3) -> (rule1 % int3))) -> (rule9 % int2))) -> (rule2 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Erin is white.
("Erin" "is" "white" "+")
((((triple11) -> (rule1 % int2))) -> (rule9 % int1))
Erin is white.
("Erin" "is" "white" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Anne is rough.
("Anne" "is" "rough" "+")
((((((triple1) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Anne is white.
("Anne" "is" "white" "+")
((((((triple1) -> (rule3 % int3))) -> (rule1 % int2))) -> (rule9 % int1))
Anne is white.
("Anne" "is" "white" "+")
int1
Anne is blue.
("Anne" "is" "blue" "+")
int2
Anne is green.
("Anne" "is" "green" "+")
int3
Erin is quiet.
("Erin" "is" "quiet" "+")
((((triple12) -> (rule5 % int4)) ((((triple11) -> (rule1 % int3))) -> (rule9 % int2))) -> (rule2 % int1))
Erin is quiet.
("Erin" "is" "quiet" "+")
int1
Erin is white.
("Erin" "is" "white" "+")
int2
Erin is blue.
("Erin" "is" "blue" "+")
int3
Erin is kind.
("Erin" "is" "kind" "+")
int4
Anne is kind.
("Anne" "is" "kind" "+")
((((((((triple1) -> (rule3 % int4))) -> (rule1 % int3))) -> (rule4 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is blue.
("Anne" "is" "blue" "+")
int3
Anne is green.
("Anne" "is" "green" "+")
int4
Anne is quiet.
("Anne" "is" "quiet" "+")
((((((((((triple1) -> (rule3 % int6))) -> (rule1 % int5))) -> (rule4 % int4))) -> (rule5 % int3)) ((((((triple1) -> (rule3 % int6))) -> (rule1 % int5))) -> (rule9 % int2))) -> (rule2 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
int2
Anne is kind.
("Anne" "is" "kind" "+")
int3
Anne is rough.
("Anne" "is" "rough" "+")
int4
Anne is blue.
("Anne" "is" "blue" "+")
int5
Anne is green.
("Anne" "is" "green" "+")
int6