Anne is green. Anne is kind. Anne is nice. Anne is red. Anne is rough. Anne is round. Charlie is kind. Charlie is nice. Charlie is red. Charlie is rough. Charlie is smart. Gary is green. Gary is kind. Gary is red. Gary is rough. Gary is smart. If something is red and round then it is nice. If Gary is red then Gary is round. All green, smart things are rough. If something is green and round then it is smart. All red, rough things are kind. If Gary is round then Gary is green.
Anne is green.
("Anne" "is" "green" "+")
Anne is kind.
("Anne" "is" "kind" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Anne is round.
("Anne" "is" "round" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is smart.
("Charlie" "is" "smart" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is smart.
("Gary" "is" "smart" "+")
If something is red and round then it is nice.
((("something" "is" "red" "+") ("something" "is" "round" "+")) -> ("something" "is" "nice" "+"))
If Gary is red then Gary is round.
((("Gary" "is" "red" "+")) -> ("Gary" "is" "round" "+"))
All green, smart things are rough.
((("something" "is" "green" "+") ("something" "is" "smart" "+")) -> ("something" "is" "rough" "+"))
If something is green and round then it is smart.
((("something" "is" "green" "+") ("something" "is" "round" "+")) -> ("something" "is" "smart" "+"))
All red, rough things are kind.
((("something" "is" "red" "+") ("something" "is" "rough" "+")) -> ("something" "is" "kind" "+"))
If Gary is round then Gary is green.
((("Gary" "is" "round" "+")) -> ("Gary" "is" "green" "+"))
Anne is round.
True
1
proof
[(triple6)]
("Anne" "is" "round" "+")
triple6
Gary is not smart.
False
1
inv-proof
[(triple16 OR ((triple12 ((triple14) -> rule2)) -> rule4) OR ((((((triple14) -> rule2)) -> rule6) ((triple14) -> rule2)) -> rule4))]
("Gary" "is" "smart" "-")
triple16
((triple12 ((triple14) -> (rule2 % int2))) -> (rule4 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
((((((triple14) -> (rule2 % int3))) -> (rule6 % int2)) ((triple14) -> (rule2 % int3))) -> (rule4 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
Anne is smart.
True
3
proof
[(((triple1 triple6) -> rule4))]
("Anne" "is" "smart" "+")
((triple1 triple6) -> (rule4 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Anne is not smart.
False
3
inv-proof
[(((triple1 triple6) -> rule4))]
("Anne" "is" "smart" "-")
((triple1 triple6) -> (rule4 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Gary is nice.
True
4
proof
[(((triple14 ((triple14) -> rule2)) -> rule1))]
("Gary" "is" "nice" "+")
((triple14 ((triple14) -> (rule2 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is not nice.
False
4
inv-proof
[(((triple14 ((triple14) -> rule2)) -> rule1))]
("Gary" "is" "nice" "-")
((triple14 ((triple14) -> (rule2 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Charlie is not green.
Unknown
inv-random
[@0: Charlie is green.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "green" "-")
Charlie is round.
Unknown
random
[@0: Charlie is round.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "round" "+")
@0: Anne is green.[(triple1)] Anne is kind.[(triple2 OR ((triple4 triple5) -> rule5) OR ((triple4 ((triple1 ((triple1 triple6) -> rule4)) -> rule3)) -> rule5))] Anne is nice.[(triple3 OR ((triple4 triple6) -> rule1))] Anne is red.[(triple4)] Anne is rough.[(triple5 OR ((triple1 ((triple1 triple6) -> rule4)) -> rule3))] Anne is round.[(triple6)] Charlie is kind.[(triple7 OR ((triple9 triple10) -> rule5))] Charlie is nice.[(triple8)] Charlie is red.[(triple9)] Charlie is rough.[(triple10)] Charlie is smart.[(triple11)] Gary is green.[(triple12 OR ((((triple14) -> rule2)) -> rule6))] Gary is kind.[(triple13 OR ((triple14 triple15) -> rule5) OR ((triple14 ((triple12 triple16) -> rule3)) -> rule5) OR ((triple14 ((triple12 ((triple12 ((triple14) -> rule2)) -> rule4)) -> rule3)) -> rule5) OR ((triple14 ((((((triple14) -> rule2)) -> rule6) triple16) -> rule3)) -> rule5) OR ((triple14 ((((((triple14) -> rule2)) -> rule6) ((triple12 ((triple14) -> rule2)) -> rule4)) -> rule3)) -> rule5) OR ((triple14 ((triple12 ((((((triple14) -> rule2)) -> rule6) ((triple14) -> rule2)) -> rule4)) -> rule3)) -> rule5) OR ((triple14 ((((((triple14) -> rule2)) -> rule6) ((((((triple14) -> rule2)) -> rule6) ((triple14) -> rule2)) -> rule4)) -> rule3)) -> rule5))] Gary is red.[(triple14)] Gary is rough.[(triple15 OR ((triple12 triple16) -> rule3) OR ((triple12 ((triple12 ((triple14) -> rule2)) -> rule4)) -> rule3) OR ((((((triple14) -> rule2)) -> rule6) triple16) -> rule3) OR ((((((triple14) -> rule2)) -> rule6) ((triple12 ((triple14) -> rule2)) -> rule4)) -> rule3) OR ((triple12 ((((((triple14) -> rule2)) -> rule6) ((triple14) -> rule2)) -> rule4)) -> rule3) OR ((((((triple14) -> rule2)) -> rule6) ((((((triple14) -> rule2)) -> rule6) ((triple14) -> rule2)) -> rule4)) -> rule3))] Gary is smart.[(triple16 OR ((triple12 ((triple14) -> rule2)) -> rule4) OR ((((((triple14) -> rule2)) -> rule6) ((triple14) -> rule2)) -> rule4))] @1: Anne is smart.[(((triple1 triple6) -> rule4))] Gary is round.[(((triple14) -> rule2))] @2: Gary is nice.[(((triple14 ((triple14) -> rule2)) -> rule1))]
Anne is green.
("Anne" "is" "green" "+")
triple1
Anne is kind.
("Anne" "is" "kind" "+")
triple2
((triple4 triple5) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
((triple4 ((triple1 ((triple1 triple6) -> (rule4 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Anne is kind.
("Anne" "is" "kind" "+")
int1
Anne is rough.
("Anne" "is" "rough" "+")
int2
Anne is smart.
("Anne" "is" "smart" "+")
int3
Anne is nice.
("Anne" "is" "nice" "+")
triple3
((triple4 triple6) -> (rule1 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
triple4
Anne is rough.
("Anne" "is" "rough" "+")
triple5
((triple1 ((triple1 triple6) -> (rule4 % int2))) -> (rule3 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is smart.
("Anne" "is" "smart" "+")
int2
Anne is round.
("Anne" "is" "round" "+")
triple6
Charlie is kind.
("Charlie" "is" "kind" "+")
triple7
((triple9 triple10) -> (rule5 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
triple8
Charlie is red.
("Charlie" "is" "red" "+")
triple9
Charlie is rough.
("Charlie" "is" "rough" "+")
triple10
Charlie is smart.
("Charlie" "is" "smart" "+")
triple11
Gary is green.
("Gary" "is" "green" "+")
triple12
((((triple14) -> (rule2 % int2))) -> (rule6 % int1))
Gary is green.
("Gary" "is" "green" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
triple13
((triple14 triple15) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((triple14 ((triple12 triple16) -> (rule3 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
((triple14 ((triple12 ((triple12 ((triple14) -> (rule2 % int4))) -> (rule4 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
((triple14 ((((((triple14) -> (rule2 % int4))) -> (rule6 % int3)) triple16) -> (rule3 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
((triple14 ((((((triple14) -> (rule2 % int5))) -> (rule6 % int4)) ((triple12 ((triple14) -> (rule2 % int5))) -> (rule4 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
Gary is round.
("Gary" "is" "round" "+")
int5
((triple14 ((triple12 ((((((triple14) -> (rule2 % int5))) -> (rule6 % int4)) ((triple14) -> (rule2 % int5))) -> (rule4 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
Gary is round.
("Gary" "is" "round" "+")
int5
((triple14 ((((((triple14) -> (rule2 % int5))) -> (rule6 % int4)) ((((((triple14) -> (rule2 % int5))) -> (rule6 % int4)) ((triple14) -> (rule2 % int5))) -> (rule4 % int3))) -> (rule3 % int2))) -> (rule5 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is rough.
("Gary" "is" "rough" "+")
int2
Gary is smart.
("Gary" "is" "smart" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
int4
Gary is round.
("Gary" "is" "round" "+")
int5
Gary is red.
("Gary" "is" "red" "+")
triple14
Gary is rough.
("Gary" "is" "rough" "+")
triple15
((triple12 triple16) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
((triple12 ((triple12 ((triple14) -> (rule2 % int3))) -> (rule4 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
((((((triple14) -> (rule2 % int3))) -> (rule6 % int2)) triple16) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
((((((triple14) -> (rule2 % int4))) -> (rule6 % int3)) ((triple12 ((triple14) -> (rule2 % int4))) -> (rule4 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
((triple12 ((((((triple14) -> (rule2 % int4))) -> (rule6 % int3)) ((triple14) -> (rule2 % int4))) -> (rule4 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
((((((triple14) -> (rule2 % int4))) -> (rule6 % int3)) ((((((triple14) -> (rule2 % int4))) -> (rule6 % int3)) ((triple14) -> (rule2 % int4))) -> (rule4 % int2))) -> (rule3 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is smart.
("Gary" "is" "smart" "+")
int2
Gary is green.
("Gary" "is" "green" "+")
int3
Gary is round.
("Gary" "is" "round" "+")
int4
Gary is smart.
("Gary" "is" "smart" "+")
triple16
((triple12 ((triple14) -> (rule2 % int2))) -> (rule4 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
((((((triple14) -> (rule2 % int3))) -> (rule6 % int2)) ((triple14) -> (rule2 % int3))) -> (rule4 % int1))
Gary is smart.
("Gary" "is" "smart" "+")
int1
Gary is green.
("Gary" "is" "green" "+")
int2
Gary is round.
("Gary" "is" "round" "+")
int3
Anne is smart.
("Anne" "is" "smart" "+")
((triple1 triple6) -> (rule4 % int1))
Anne is smart.
("Anne" "is" "smart" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
((triple14) -> (rule2 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
((triple14 ((triple14) -> (rule2 % int2))) -> (rule1 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2