Charlie is blue. Charlie is green. Charlie is quiet. Charlie is red. Charlie is white. Dave is blue. Dave is green. Dave is quiet. Dave is white. Erin is red. Erin is smart. Fiona is blue. Fiona is red. Fiona is round. Fiona is white. If someone is blue then they are round. If someone is white then they are smart. All green people are blue. Green people are smart. All quiet, smart people are round. Smart people are green.
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is white.
("Dave" "is" "white" "+")
Erin is red.
("Erin" "is" "red" "+")
Erin is smart.
("Erin" "is" "smart" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is red.
("Fiona" "is" "red" "+")
Fiona is round.
("Fiona" "is" "round" "+")
Fiona is white.
("Fiona" "is" "white" "+")
If someone is blue then they are round.
((("someone" "is" "blue" "+")) -> ("someone" "is" "round" "+"))
If someone is white then they are smart.
((("someone" "is" "white" "+")) -> ("someone" "is" "smart" "+"))
All green people are blue.
((("someone" "is" "green" "+")) -> ("someone" "is" "blue" "+"))
Green people are smart.
((("someone" "is" "green" "+")) -> ("someone" "is" "smart" "+"))
All quiet, smart people are round.
((("someone" "is" "quiet" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "round" "+"))
Smart people are green.
((("someone" "is" "smart" "+")) -> ("someone" "is" "green" "+"))
Dave is white.
True
1
proof
[(triple9)]
("Dave" "is" "white" "+")
triple9
Dave is not green.
False
1
inv-proof
[(triple7 OR ((((triple9) -> rule2)) -> rule6))]
("Dave" "is" "green" "-")
triple7
((((triple9) -> (rule2 % int2))) -> (rule6 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is smart.
True
2
proof
[(((triple7) -> rule4) OR ((triple9) -> rule2))]
("Dave" "is" "smart" "+")
((triple7) -> (rule4 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
((triple9) -> (rule2 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Dave is not smart.
False
2
inv-proof
[(((triple7) -> rule4) OR ((triple9) -> rule2))]
("Dave" "is" "smart" "-")
((triple7) -> (rule4 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
((triple9) -> (rule2 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Erin is blue.
True
3
proof
[(((((triple11) -> rule6)) -> rule3))]
("Erin" "is" "blue" "+")
((((triple11) -> (rule6 % int2))) -> (rule3 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is not blue.
False
3
inv-proof
[(((((triple11) -> rule6)) -> rule3))]
("Erin" "is" "blue" "-")
((((triple11) -> (rule6 % int2))) -> (rule3 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Erin is round.
True
4
proof
[(((((((triple11) -> rule6)) -> rule3)) -> rule1))]
("Erin" "is" "round" "+")
((((((triple11) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
Erin is not round.
False
4
inv-proof
[(((((((triple11) -> rule6)) -> rule3)) -> rule1))]
("Erin" "is" "round" "-")
((((((triple11) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3
Erin is not white.
Unknown
inv-random
[@0: Erin is white.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "white" "-")
Erin is quiet.
Unknown
random
[@0: Erin is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Erin" "is" "quiet" "+")
Fiona is not quiet.
Unknown
inv-random
[@0: Fiona is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Fiona" "is" "quiet" "-")
Dave is red.
Unknown
random
[@0: Dave is red.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "red" "+")
@0: Charlie is blue.[(triple1 OR ((triple2) -> rule3) OR ((((((triple5) -> rule2)) -> rule6)) -> rule3))] Charlie is green.[(triple2 OR ((((triple5) -> rule2)) -> rule6))] Charlie is quiet.[(triple3)] Charlie is red.[(triple4)] Charlie is white.[(triple5)] Dave is blue.[(triple6 OR ((triple7) -> rule3) OR ((((((triple9) -> rule2)) -> rule6)) -> rule3))] Dave is green.[(triple7 OR ((((triple9) -> rule2)) -> rule6))] Dave is quiet.[(triple8)] Dave is white.[(triple9)] Erin is red.[(triple10)] Erin is smart.[(triple11)] Fiona is blue.[(triple12 OR ((((((triple15) -> rule2)) -> rule6)) -> rule3))] Fiona is red.[(triple13)] Fiona is round.[(triple14 OR ((triple12) -> rule1) OR ((((((((triple15) -> rule2)) -> rule6)) -> rule3)) -> rule1))] Fiona is white.[(triple15)] @1: Charlie is round.[(((triple1) -> rule1) OR ((((triple2) -> rule3)) -> rule1) OR ((triple3 ((triple2) -> rule4)) -> rule5) OR ((triple3 ((triple5) -> rule2)) -> rule5) OR ((((((((triple5) -> rule2)) -> rule6)) -> rule3)) -> rule1))] Charlie is smart.[(((triple2) -> rule4) OR ((triple5) -> rule2))] Dave is round.[(((triple6) -> rule1) OR ((((triple7) -> rule3)) -> rule1) OR ((triple8 ((triple7) -> rule4)) -> rule5) OR ((triple8 ((triple9) -> rule2)) -> rule5) OR ((((((((triple9) -> rule2)) -> rule6)) -> rule3)) -> rule1))] Dave is smart.[(((triple7) -> rule4) OR ((triple9) -> rule2))] Erin is green.[(((triple11) -> rule6))] Fiona is smart.[(((triple15) -> rule2))] @2: Erin is blue.[(((((triple11) -> rule6)) -> rule3))] Fiona is green.[(((((triple15) -> rule2)) -> rule6))] @3: Erin is round.[(((((((triple11) -> rule6)) -> rule3)) -> rule1))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
((triple2) -> (rule3 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
((((((triple5) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is green.
("Charlie" "is" "green" "+")
triple2
((((triple5) -> (rule2 % int2))) -> (rule6 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple3
Charlie is red.
("Charlie" "is" "red" "+")
triple4
Charlie is white.
("Charlie" "is" "white" "+")
triple5
Dave is blue.
("Dave" "is" "blue" "+")
triple6
((triple7) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
((((((triple9) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Dave is blue.
("Dave" "is" "blue" "+")
int1
Dave is green.
("Dave" "is" "green" "+")
int2
Dave is smart.
("Dave" "is" "smart" "+")
int3
Dave is green.
("Dave" "is" "green" "+")
triple7
((((triple9) -> (rule2 % int2))) -> (rule6 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
Dave is quiet.
("Dave" "is" "quiet" "+")
triple8
Dave is white.
("Dave" "is" "white" "+")
triple9
Erin is red.
("Erin" "is" "red" "+")
triple10
Erin is smart.
("Erin" "is" "smart" "+")
triple11
Fiona is blue.
("Fiona" "is" "blue" "+")
triple12
((((((triple15) -> (rule2 % int3))) -> (rule6 % int2))) -> (rule3 % int1))
Fiona is blue.
("Fiona" "is" "blue" "+")
int1
Fiona is green.
("Fiona" "is" "green" "+")
int2
Fiona is smart.
("Fiona" "is" "smart" "+")
int3
Fiona is red.
("Fiona" "is" "red" "+")
triple13
Fiona is round.
("Fiona" "is" "round" "+")
triple14
((triple12) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
((((((((triple15) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Fiona is round.
("Fiona" "is" "round" "+")
int1
Fiona is blue.
("Fiona" "is" "blue" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
int3
Fiona is smart.
("Fiona" "is" "smart" "+")
int4
Fiona is white.
("Fiona" "is" "white" "+")
triple15
Charlie is round.
("Charlie" "is" "round" "+")
((triple1) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
((((triple2) -> (rule3 % int2))) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
((triple3 ((triple2) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
((triple3 ((triple5) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
((((((((triple5) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple2) -> (rule4 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
((triple5) -> (rule2 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Dave is round.
("Dave" "is" "round" "+")
((triple6) -> (rule1 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
((((triple7) -> (rule3 % int2))) -> (rule1 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
((triple8 ((triple7) -> (rule4 % int2))) -> (rule5 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
((triple8 ((triple9) -> (rule2 % int2))) -> (rule5 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
int2
((((((((triple9) -> (rule2 % int4))) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Dave is round.
("Dave" "is" "round" "+")
int1
Dave is blue.
("Dave" "is" "blue" "+")
int2
Dave is green.
("Dave" "is" "green" "+")
int3
Dave is smart.
("Dave" "is" "smart" "+")
int4
Dave is smart.
("Dave" "is" "smart" "+")
((triple7) -> (rule4 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
((triple9) -> (rule2 % int1))
Dave is smart.
("Dave" "is" "smart" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
((triple11) -> (rule6 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
((triple15) -> (rule2 % int1))
Fiona is smart.
("Fiona" "is" "smart" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
((((triple11) -> (rule6 % int2))) -> (rule3 % int1))
Erin is blue.
("Erin" "is" "blue" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
int2
Fiona is green.
("Fiona" "is" "green" "+")
((((triple15) -> (rule2 % int2))) -> (rule6 % int1))
Fiona is green.
("Fiona" "is" "green" "+")
int1
Fiona is smart.
("Fiona" "is" "smart" "+")
int2
Erin is round.
("Erin" "is" "round" "+")
((((((triple11) -> (rule6 % int3))) -> (rule3 % int2))) -> (rule1 % int1))
Erin is round.
("Erin" "is" "round" "+")
int1
Erin is blue.
("Erin" "is" "blue" "+")
int2
Erin is green.
("Erin" "is" "green" "+")
int3