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