Charlie is blue. Charlie is cold. Charlie is green. Charlie is quiet. Charlie is red. Dave is not cold. Dave is not green. Dave is quiet. Gary is blue. Gary is green. Gary is red. Gary is not white. If someone is smart then they are blue. All cold, smart people are not blue. All white, cold people are not green. Red people are green. All green people are cold. If someone is green then they are cold. If Gary is cold then Gary is quiet. If someone is red and quiet then they are not white.
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Dave is not cold.
("Dave" "is" "cold" "-")
Dave is not green.
("Dave" "is" "green" "-")
Dave is quiet.
("Dave" "is" "quiet" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is not white.
("Gary" "is" "white" "-")
If someone is smart then they are blue.
((("someone" "is" "smart" "+")) -> ("someone" "is" "blue" "+"))
All cold, smart people are not blue.
((("someone" "is" "cold" "+") ("someone" "is" "smart" "+")) -> ("someone" "is" "blue" "-"))
All white, cold people are not green.
((("someone" "is" "white" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "green" "-"))
Red people are green.
((("someone" "is" "red" "+")) -> ("someone" "is" "green" "+"))
All green people are cold.
((("someone" "is" "green" "+")) -> ("someone" "is" "cold" "+"))
If someone is green then they are cold.
((("someone" "is" "green" "+")) -> ("someone" "is" "cold" "+"))
If Gary is cold then Gary is quiet.
((("Gary" "is" "cold" "+")) -> ("Gary" "is" "quiet" "+"))
If someone is red and quiet then they are not white.
((("someone" "is" "red" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "white" "-"))
Charlie is green.
True
1
proof
[(triple3 OR ((triple5) -> rule4))]
("Charlie" "is" "green" "+")
triple3
((triple5) -> (rule4 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Gary is not red.
False
1
inv-proof
[(triple11)]
("Gary" "is" "red" "-")
triple11
Gary is cold.
True
2
proof
[(((triple10) -> rule5) OR ((triple10) -> rule6) OR ((((triple11) -> rule4)) -> rule5) OR ((((triple11) -> rule4)) -> rule6))]
("Gary" "is" "cold" "+")
((triple10) -> (rule5 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((triple10) -> (rule6 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((((triple11) -> (rule4 % int2))) -> (rule5 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
((((triple11) -> (rule4 % int2))) -> (rule6 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Charlie is white.
False
3
inv-proof
[(((triple5 triple4) -> rule8))]
("Charlie" "is" "white" "+")
((triple5 triple4) -> (rule8 % int1))
Charlie is not white.
("Charlie" "is" "white" "-")
int1
Gary is quiet.
True
3
proof
[(((((triple10) -> rule5)) -> rule7) OR ((((triple10) -> rule6)) -> rule7) OR ((((((triple11) -> rule4)) -> rule5)) -> rule7) OR ((((((triple11) -> rule4)) -> rule6)) -> rule7))]
("Gary" "is" "quiet" "+")
((((triple10) -> (rule5 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((triple10) -> (rule6 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((((triple11) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
((((((triple11) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is not quiet.
False
3
inv-proof
[(((((triple10) -> rule5)) -> rule7) OR ((((triple10) -> rule6)) -> rule7) OR ((((((triple11) -> rule4)) -> rule5)) -> rule7) OR ((((((triple11) -> rule4)) -> rule6)) -> rule7))]
("Gary" "is" "quiet" "-")
((((triple10) -> (rule5 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((triple10) -> (rule6 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((((triple11) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
((((((triple11) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Dave is not blue.
Unknown
inv-rconc
[@1: Dave is blue.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Dave" "is" "blue" "-")
Gary is smart.
Unknown
random
[@0: Gary is smart.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "smart" "+")
Dave is not white.
Unknown
inv-random
[@0: Dave is white.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "white" "-")
Dave is red.
Unknown
random
[@0: Dave is red.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "red" "+")
Charlie is not smart.
Unknown
inv-random
[@0: Charlie is smart.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "smart" "-")
Dave is smart.
Unknown
random
[@0: Dave is smart.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "smart" "+")
@0: Charlie is blue.[(triple1)] Charlie is cold.[(triple2 OR ((triple3) -> rule5) OR ((triple3) -> rule6) OR ((((triple5) -> rule4)) -> rule5) OR ((((triple5) -> rule4)) -> rule6))] Charlie is green.[(triple3 OR ((triple5) -> rule4))] Charlie is quiet.[(triple4)] Charlie is red.[(triple5)] Dave is not cold.[(triple6)] Dave is not green.[(triple7)] Dave is quiet.[(triple8)] Gary is blue.[(triple9)] Gary is green.[(triple10 OR ((triple11) -> rule4))] Gary is not white.[(triple12 OR ((triple11 ((((triple10) -> rule5)) -> rule7)) -> rule8) OR ((triple11 ((((triple10) -> rule6)) -> rule7)) -> rule8) OR ((triple11 ((((((triple11) -> rule4)) -> rule5)) -> rule7)) -> rule8) OR ((triple11 ((((((triple11) -> rule4)) -> rule6)) -> rule7)) -> rule8))] Gary is red.[(triple11)] @1: Charlie is not white.[(((triple5 triple4) -> rule8))] Gary is cold.[(((triple10) -> rule5) OR ((triple10) -> rule6) OR ((((triple11) -> rule4)) -> rule5) OR ((((triple11) -> rule4)) -> rule6))] @2: Gary is quiet.[(((((triple10) -> rule5)) -> rule7) OR ((((triple10) -> rule6)) -> rule7) OR ((((((triple11) -> rule4)) -> rule5)) -> rule7) OR ((((((triple11) -> rule4)) -> rule6)) -> rule7))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
((triple3) -> (rule5 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
((triple3) -> (rule6 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
((((triple5) -> (rule4 % int2))) -> (rule5 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
((((triple5) -> (rule4 % int2))) -> (rule6 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
triple3
((triple5) -> (rule4 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple4
Charlie is red.
("Charlie" "is" "red" "+")
triple5
Dave is not cold.
("Dave" "is" "cold" "-")
triple6
Dave is not green.
("Dave" "is" "green" "-")
triple7
Dave is quiet.
("Dave" "is" "quiet" "+")
triple8
Gary is blue.
("Gary" "is" "blue" "+")
triple9
Gary is green.
("Gary" "is" "green" "+")
triple10
((triple11) -> (rule4 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is not white.
("Gary" "is" "white" "-")
triple12
((triple11 ((((triple10) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Gary is not white.
("Gary" "is" "white" "-")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
((triple11 ((((triple10) -> (rule6 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Gary is not white.
("Gary" "is" "white" "-")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
((triple11 ((((((triple11) -> (rule4 % int4))) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Gary is not white.
("Gary" "is" "white" "-")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
((triple11 ((((((triple11) -> (rule4 % int4))) -> (rule6 % int3))) -> (rule7 % int2))) -> (rule8 % int1))
Gary is not white.
("Gary" "is" "white" "-")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
int2
Gary is cold.
("Gary" "is" "cold" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
Gary is red.
("Gary" "is" "red" "+")
triple11
Charlie is not white.
("Charlie" "is" "white" "-")
((triple5 triple4) -> (rule8 % int1))
Charlie is not white.
("Charlie" "is" "white" "-")
int1
Gary is cold.
("Gary" "is" "cold" "+")
((triple10) -> (rule5 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((triple10) -> (rule6 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
((((triple11) -> (rule4 % int2))) -> (rule5 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
((((triple11) -> (rule4 % int2))) -> (rule6 % int1))
Gary is cold.
("Gary" "is" "cold" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is quiet.
("Gary" "is" "quiet" "+")
((((triple10) -> (rule5 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((triple10) -> (rule6 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
((((((triple11) -> (rule4 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
((((((triple11) -> (rule4 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Gary is quiet.
("Gary" "is" "quiet" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3