Charlie is kind. Charlie is not round. Charlie is young. Gary is not big. Gary is not furry. Gary is round. Gary is smart. Gary is young. Harry is furry. Harry is kind. Harry is smart. Harry is white. If something is round then it is white. If Harry is kind then Harry is white. White, kind things are not round. If Charlie is round and Charlie is white then Charlie is furry. If Gary is kind and Gary is not smart then Gary is big. If something is kind and not round then it is big. If something is big then it is young. Big things are young.
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is not round.
("Charlie" "is" "round" "-")
Charlie is young.
("Charlie" "is" "young" "+")
Gary is not big.
("Gary" "is" "big" "-")
Gary is not furry.
("Gary" "is" "furry" "-")
Gary is round.
("Gary" "is" "round" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Gary is young.
("Gary" "is" "young" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is smart.
("Harry" "is" "smart" "+")
Harry is white.
("Harry" "is" "white" "+")
If something is round then it is white.
((("something" "is" "round" "+")) -> ("something" "is" "white" "+"))
If Harry is kind then Harry is white.
((("Harry" "is" "kind" "+")) -> ("Harry" "is" "white" "+"))
White, kind things are not round.
((("something" "is" "white" "+") ("something" "is" "kind" "+")) -> ("something" "is" "round" "-"))
If Charlie is round and Charlie is white then Charlie is furry.
((("Charlie" "is" "round" "+") ("Charlie" "is" "white" "+")) -> ("Charlie" "is" "furry" "+"))
If Gary is kind and Gary is not smart then Gary is big.
((("Gary" "is" "kind" "+") ("Gary" "is" "smart" "~")) -> ("Gary" "is" "big" "+"))
If something is kind and not round then it is big.
((("something" "is" "kind" "+") ("something" "is" "round" "~")) -> ("something" "is" "big" "+"))
If something is big then it is young.
((("something" "is" "big" "+")) -> ("something" "is" "young" "+"))
Big things are young.
((("something" "is" "big" "+")) -> ("something" "is" "young" "+"))
Charlie is kind.
True
1
proof
[(triple1)]
("Charlie" "is" "kind" "+")
triple1
Harry is not smart.
False
1
inv-proof
[(triple11)]
("Harry" "is" "smart" "-")
triple11
Gary is white.
True
2
proof
[(((triple6) -> rule1))]
("Gary" "is" "white" "+")
((triple6) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is not white.
False
2
inv-proof
[(((triple6) -> rule1))]
("Gary" "is" "white" "-")
((triple6) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Harry is big.
True
5
proof
[(((triple10 ((triple12 triple10) -> rule3)) -> rule6) OR ((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6))]
("Harry" "is" "big" "+")
((triple10 ((triple12 triple10) -> (rule3 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
int2
((triple10 ((((triple10) -> (rule2 % int3)) triple10) -> (rule3 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
Harry is not big.
False
5
inv-proof
[(((triple10 ((triple12 triple10) -> rule3)) -> rule6) OR ((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6))]
("Harry" "is" "big" "-")
((triple10 ((triple12 triple10) -> (rule3 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
int2
((triple10 ((((triple10) -> (rule2 % int3)) triple10) -> (rule3 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
Harry is young.
True
6
proof
[(((((triple10 ((triple12 triple10) -> rule3)) -> rule6)) -> rule7) OR ((((triple10 ((triple12 triple10) -> rule3)) -> rule6)) -> rule8) OR ((((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6)) -> rule7) OR ((((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6)) -> rule8))]
("Harry" "is" "young" "+")
((((triple10 ((triple12 triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
((((triple10 ((triple12 triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule8 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
((((triple10 ((((triple10) -> (rule2 % int4)) triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
((((triple10 ((((triple10) -> (rule2 % int4)) triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule8 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
Harry is not young.
False
6
inv-proof
[(((((triple10 ((triple12 triple10) -> rule3)) -> rule6)) -> rule7) OR ((((triple10 ((triple12 triple10) -> rule3)) -> rule6)) -> rule8) OR ((((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6)) -> rule7) OR ((((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6)) -> rule8))]
("Harry" "is" "young" "-")
((((triple10 ((triple12 triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
((((triple10 ((triple12 triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule8 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
((((triple10 ((((triple10) -> (rule2 % int4)) triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
((((triple10 ((((triple10) -> (rule2 % int4)) triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule8 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
Charlie is not furry.
Unknown
inv-rconc
[@1: Charlie is furry.[CWA. Example of deepest failure = (rule4 <- FAIL)]]
("Charlie" "is" "furry" "-")
Charlie is white.
Unknown
rconc
[@1: Charlie is white.[CWA. Example of deepest failure = (rule1 <- FAIL)]]
("Charlie" "is" "white" "+")
Gary is not kind.
Unknown
inv-random
[@0: Gary is kind.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "kind" "-")
Charlie is smart.
Unknown
random
[@0: Charlie is smart.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "smart" "+")
@0: Charlie is kind.[(triple1)] Charlie is not round.[(triple2)] Charlie is young.[(triple3 OR ((((triple1 triple2) -> rule6)) -> rule7) OR ((((triple1 triple2) -> rule6)) -> rule8))] Gary is not big.[(triple4)] Gary is not furry.[(triple5)] Gary is round.[(triple6)] Gary is smart.[(triple7)] Gary is young.[(triple8)] Harry is furry.[(triple9)] Harry is kind.[(triple10)] Harry is smart.[(triple11)] Harry is white.[(triple12 OR ((triple10) -> rule2))] @1: Charlie is big.[(((triple1 triple2) -> rule6))] Gary is white.[(((triple6) -> rule1))] Harry is not round.[(((triple12 triple10) -> rule3) OR ((((triple10) -> rule2) triple10) -> rule3))] @2: Harry is big.[(((triple10 ((triple12 triple10) -> rule3)) -> rule6) OR ((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6))] @3: Harry is young.[(((((triple10 ((triple12 triple10) -> rule3)) -> rule6)) -> rule7) OR ((((triple10 ((triple12 triple10) -> rule3)) -> rule6)) -> rule8) OR ((((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6)) -> rule7) OR ((((triple10 ((((triple10) -> rule2) triple10) -> rule3)) -> rule6)) -> rule8))]
Charlie is kind.
("Charlie" "is" "kind" "+")
triple1
Charlie is not round.
("Charlie" "is" "round" "-")
triple2
Charlie is young.
("Charlie" "is" "young" "+")
triple3
((((triple1 triple2) -> (rule6 % int2))) -> (rule7 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((triple1 triple2) -> (rule6 % int2))) -> (rule8 % int1))
Charlie is young.
("Charlie" "is" "young" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Gary is not big.
("Gary" "is" "big" "-")
triple4
Gary is not furry.
("Gary" "is" "furry" "-")
triple5
Gary is round.
("Gary" "is" "round" "+")
triple6
Gary is smart.
("Gary" "is" "smart" "+")
triple7
Gary is young.
("Gary" "is" "young" "+")
triple8
Harry is furry.
("Harry" "is" "furry" "+")
triple9
Harry is kind.
("Harry" "is" "kind" "+")
triple10
Harry is smart.
("Harry" "is" "smart" "+")
triple11
Harry is white.
("Harry" "is" "white" "+")
triple12
((triple10) -> (rule2 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
((triple1 triple2) -> (rule6 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
((triple6) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
((triple12 triple10) -> (rule3 % int1))
Harry is not round.
("Harry" "is" "round" "-")
int1
((((triple10) -> (rule2 % int2)) triple10) -> (rule3 % int1))
Harry is not round.
("Harry" "is" "round" "-")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is big.
("Harry" "is" "big" "+")
((triple10 ((triple12 triple10) -> (rule3 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
int2
((triple10 ((((triple10) -> (rule2 % int3)) triple10) -> (rule3 % int2))) -> (rule6 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is not round.
("Harry" "is" "round" "-")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
Harry is young.
("Harry" "is" "young" "+")
((((triple10 ((triple12 triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
((((triple10 ((triple12 triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule8 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
((((triple10 ((((triple10) -> (rule2 % int4)) triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule7 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
((((triple10 ((((triple10) -> (rule2 % int4)) triple10) -> (rule3 % int3))) -> (rule6 % int2))) -> (rule8 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not round.
("Harry" "is" "round" "-")
int3
Harry is white.
("Harry" "is" "white" "+")
int4