Charlie is cold. Charlie is kind. Charlie is young. Harry is green. Harry is nice. Harry is quiet. Harry is round. Quiet, kind people are green. If Charlie is young then Charlie is cold. If someone is nice then they are cold. All green, cold people are round. If someone is young then they are nice. Young, quiet people are green. Kind, nice people are green. Nice people are kind.
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Harry is green.
("Harry" "is" "green" "+")
Harry is nice.
("Harry" "is" "nice" "+")
Harry is quiet.
("Harry" "is" "quiet" "+")
Harry is round.
("Harry" "is" "round" "+")
Quiet, kind people are green.
((("someone" "is" "quiet" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "green" "+"))
If Charlie is young then Charlie is cold.
((("Charlie" "is" "young" "+")) -> ("Charlie" "is" "cold" "+"))
If someone is nice then they are cold.
((("someone" "is" "nice" "+")) -> ("someone" "is" "cold" "+"))
All green, cold people are round.
((("someone" "is" "green" "+") ("someone" "is" "cold" "+")) -> ("someone" "is" "round" "+"))
If someone is young then they are nice.
((("someone" "is" "young" "+")) -> ("someone" "is" "nice" "+"))
Young, quiet people are green.
((("someone" "is" "young" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "green" "+"))
Kind, nice people are green.
((("someone" "is" "kind" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "green" "+"))
Nice people are kind.
((("someone" "is" "nice" "+")) -> ("someone" "is" "kind" "+"))
Harry is round.
True
1
proof
[(triple7 OR ((triple4 ((triple5) -> rule3)) -> rule4) OR ((((triple6 ((triple5) -> rule8)) -> rule1) ((triple5) -> rule3)) -> rule4) OR ((((((triple5) -> rule8) triple5) -> rule7) ((triple5) -> rule3)) -> rule4))]
("Harry" "is" "round" "+")
triple7
((triple4 ((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
((((triple6 ((triple5) -> (rule8 % int4))) -> (rule1 % int3)) ((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Harry is kind.
("Harry" "is" "kind" "+")
int4
((((((triple5) -> (rule8 % int4)) triple5) -> (rule7 % int3)) ((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Harry is kind.
("Harry" "is" "kind" "+")
int4
Harry is not nice.
False
1
inv-proof
[(triple5)]
("Harry" "is" "nice" "-")
triple5
Charlie is nice.
True
2
proof
[(((triple3) -> rule5))]
("Charlie" "is" "nice" "+")
((triple3) -> (rule5 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Harry is not kind.
False
2
inv-proof
[(((triple5) -> rule8))]
("Harry" "is" "kind" "-")
((triple5) -> (rule8 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Charlie is green.
True
4
proof
[(((triple2 ((triple3) -> rule5)) -> rule7) OR ((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7))]
("Charlie" "is" "green" "+")
((triple2 ((triple3) -> (rule5 % int2))) -> (rule7 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
((((((triple3) -> (rule5 % int3))) -> (rule8 % int2)) ((triple3) -> (rule5 % int3))) -> (rule7 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is not green.
False
4
inv-proof
[(((triple2 ((triple3) -> rule5)) -> rule7) OR ((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7))]
("Charlie" "is" "green" "-")
((triple2 ((triple3) -> (rule5 % int2))) -> (rule7 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
((((((triple3) -> (rule5 % int3))) -> (rule8 % int2)) ((triple3) -> (rule5 % int3))) -> (rule7 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is round.
True
6
proof
[(((((triple2 ((triple3) -> rule5)) -> rule7) triple1) -> rule4) OR ((((triple2 ((triple3) -> rule5)) -> rule7) ((triple3) -> rule2)) -> rule4) OR ((((triple2 ((triple3) -> rule5)) -> rule7) ((((triple3) -> rule5)) -> rule3)) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) triple1) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) ((triple3) -> rule2)) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) ((((triple3) -> rule5)) -> rule3)) -> rule4))]
("Charlie" "is" "round" "+")
((((triple2 ((triple3) -> (rule5 % int3))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
((((triple2 ((triple3) -> (rule5 % int4))) -> (rule7 % int3)) ((triple3) -> (rule2 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((triple2 ((triple3) -> (rule5 % int4))) -> (rule7 % int3)) ((((triple3) -> (rule5 % int4))) -> (rule3 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((((((triple3) -> (rule5 % int4))) -> (rule8 % int3)) ((triple3) -> (rule5 % int4))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((((((triple3) -> (rule5 % int5))) -> (rule8 % int4)) ((triple3) -> (rule5 % int5))) -> (rule7 % int3)) ((triple3) -> (rule2 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
int5
((((((((triple3) -> (rule5 % int5))) -> (rule8 % int4)) ((triple3) -> (rule5 % int5))) -> (rule7 % int3)) ((((triple3) -> (rule5 % int5))) -> (rule3 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
int5
Charlie is not round.
False
6
inv-proof
[(((((triple2 ((triple3) -> rule5)) -> rule7) triple1) -> rule4) OR ((((triple2 ((triple3) -> rule5)) -> rule7) ((triple3) -> rule2)) -> rule4) OR ((((triple2 ((triple3) -> rule5)) -> rule7) ((((triple3) -> rule5)) -> rule3)) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) triple1) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) ((triple3) -> rule2)) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) ((((triple3) -> rule5)) -> rule3)) -> rule4))]
("Charlie" "is" "round" "-")
((((triple2 ((triple3) -> (rule5 % int3))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
((((triple2 ((triple3) -> (rule5 % int4))) -> (rule7 % int3)) ((triple3) -> (rule2 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((triple2 ((triple3) -> (rule5 % int4))) -> (rule7 % int3)) ((((triple3) -> (rule5 % int4))) -> (rule3 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((((((triple3) -> (rule5 % int4))) -> (rule8 % int3)) ((triple3) -> (rule5 % int4))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((((((triple3) -> (rule5 % int5))) -> (rule8 % int4)) ((triple3) -> (rule5 % int5))) -> (rule7 % int3)) ((triple3) -> (rule2 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
int5
((((((((triple3) -> (rule5 % int5))) -> (rule8 % int4)) ((triple3) -> (rule5 % int5))) -> (rule7 % int3)) ((((triple3) -> (rule5 % int5))) -> (rule3 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
int5
Harry is not young.
Unknown
inv-random
[@0: Harry is young.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "young" "-")
Charlie is quiet.
Unknown
random
[@0: Charlie is quiet.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "quiet" "+")
@0: Charlie is cold.[(triple1 OR ((triple3) -> rule2) OR ((((triple3) -> rule5)) -> rule3))] Charlie is kind.[(triple2 OR ((((triple3) -> rule5)) -> rule8))] Charlie is young.[(triple3)] Harry is green.[(triple4 OR ((triple6 ((triple5) -> rule8)) -> rule1) OR ((((triple5) -> rule8) triple5) -> rule7))] Harry is nice.[(triple5)] Harry is quiet.[(triple6)] Harry is round.[(triple7 OR ((triple4 ((triple5) -> rule3)) -> rule4) OR ((((triple6 ((triple5) -> rule8)) -> rule1) ((triple5) -> rule3)) -> rule4) OR ((((((triple5) -> rule8) triple5) -> rule7) ((triple5) -> rule3)) -> rule4))] @1: Charlie is nice.[(((triple3) -> rule5))] Harry is cold.[(((triple5) -> rule3))] Harry is kind.[(((triple5) -> rule8))] @2: Charlie is green.[(((triple2 ((triple3) -> rule5)) -> rule7) OR ((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7))] @3: Charlie is round.[(((((triple2 ((triple3) -> rule5)) -> rule7) triple1) -> rule4) OR ((((triple2 ((triple3) -> rule5)) -> rule7) ((triple3) -> rule2)) -> rule4) OR ((((triple2 ((triple3) -> rule5)) -> rule7) ((((triple3) -> rule5)) -> rule3)) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) triple1) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) ((triple3) -> rule2)) -> rule4) OR ((((((((triple3) -> rule5)) -> rule8) ((triple3) -> rule5)) -> rule7) ((((triple3) -> rule5)) -> rule3)) -> rule4))]
Charlie is cold.
("Charlie" "is" "cold" "+")
triple1
((triple3) -> (rule2 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
((((triple3) -> (rule5 % int2))) -> (rule3 % int1))
Charlie is cold.
("Charlie" "is" "cold" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
triple2
((((triple3) -> (rule5 % int2))) -> (rule8 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is young.
("Charlie" "is" "young" "+")
triple3
Harry is green.
("Harry" "is" "green" "+")
triple4
((triple6 ((triple5) -> (rule8 % int2))) -> (rule1 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
((((triple5) -> (rule8 % int2)) triple5) -> (rule7 % int1))
Harry is green.
("Harry" "is" "green" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
int2
Harry is nice.
("Harry" "is" "nice" "+")
triple5
Harry is quiet.
("Harry" "is" "quiet" "+")
triple6
Harry is round.
("Harry" "is" "round" "+")
triple7
((triple4 ((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
((((triple6 ((triple5) -> (rule8 % int4))) -> (rule1 % int3)) ((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Harry is kind.
("Harry" "is" "kind" "+")
int4
((((((triple5) -> (rule8 % int4)) triple5) -> (rule7 % int3)) ((triple5) -> (rule3 % int2))) -> (rule4 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is green.
("Harry" "is" "green" "+")
int3
Harry is kind.
("Harry" "is" "kind" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
((triple3) -> (rule5 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
((triple5) -> (rule3 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is kind.
("Harry" "is" "kind" "+")
((triple5) -> (rule8 % int1))
Harry is kind.
("Harry" "is" "kind" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
((triple2 ((triple3) -> (rule5 % int2))) -> (rule7 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
((((((triple3) -> (rule5 % int3))) -> (rule8 % int2)) ((triple3) -> (rule5 % int3))) -> (rule7 % int1))
Charlie is green.
("Charlie" "is" "green" "+")
int1
Charlie is kind.
("Charlie" "is" "kind" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is round.
("Charlie" "is" "round" "+")
((((triple2 ((triple3) -> (rule5 % int3))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
((((triple2 ((triple3) -> (rule5 % int4))) -> (rule7 % int3)) ((triple3) -> (rule2 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((triple2 ((triple3) -> (rule5 % int4))) -> (rule7 % int3)) ((((triple3) -> (rule5 % int4))) -> (rule3 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((((((triple3) -> (rule5 % int4))) -> (rule8 % int3)) ((triple3) -> (rule5 % int4))) -> (rule7 % int2)) triple1) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is green.
("Charlie" "is" "green" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
int3
Charlie is nice.
("Charlie" "is" "nice" "+")
int4
((((((((triple3) -> (rule5 % int5))) -> (rule8 % int4)) ((triple3) -> (rule5 % int5))) -> (rule7 % int3)) ((triple3) -> (rule2 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
int5
((((((((triple3) -> (rule5 % int5))) -> (rule8 % int4)) ((triple3) -> (rule5 % int5))) -> (rule7 % int3)) ((((triple3) -> (rule5 % int5))) -> (rule3 % int2))) -> (rule4 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is cold.
("Charlie" "is" "cold" "+")
int2
Charlie is green.
("Charlie" "is" "green" "+")
int3
Charlie is kind.
("Charlie" "is" "kind" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
int5