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