Charlie is big. Charlie is blue. Charlie is furry. Charlie is kind. Charlie is young. Dave is big. Dave is rough. Dave is smart. Harry is rough. Harry is young. If Charlie is kind and Charlie is blue then Charlie is big. If someone is kind then they are smart. If Harry is smart then Harry is big. Rough people are big. If Harry is rough then Harry is young. All big people are rough. If Charlie is smart and Charlie is young then Charlie is big. All rough, big people are furry.
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is young.
("Charlie" "is" "young" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is rough.
("Dave" "is" "rough" "+")
Dave is smart.
("Dave" "is" "smart" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is young.
("Harry" "is" "young" "+")
If Charlie is kind and Charlie is blue then Charlie is big.
((("Charlie" "is" "kind" "+") ("Charlie" "is" "blue" "+")) -> ("Charlie" "is" "big" "+"))
If someone is kind then they are smart.
((("someone" "is" "kind" "+")) -> ("someone" "is" "smart" "+"))
If Harry is smart then Harry is big.
((("Harry" "is" "smart" "+")) -> ("Harry" "is" "big" "+"))
Rough people are big.
((("someone" "is" "rough" "+")) -> ("someone" "is" "big" "+"))
If Harry is rough then Harry is young.
((("Harry" "is" "rough" "+")) -> ("Harry" "is" "young" "+"))
All big people are rough.
((("someone" "is" "big" "+")) -> ("someone" "is" "rough" "+"))
If Charlie is smart and Charlie is young then Charlie is big.
((("Charlie" "is" "smart" "+") ("Charlie" "is" "young" "+")) -> ("Charlie" "is" "big" "+"))
All rough, big people are furry.
((("someone" "is" "rough" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "furry" "+"))
Charlie is kind.
True
1
proof
[(triple4)]
("Charlie" "is" "kind" "+")
triple4
Dave is not big.
False
1
inv-proof
[(triple6 OR ((triple7) -> rule4))]
("Dave" "is" "big" "-")
triple6
((triple7) -> (rule4 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Charlie is rough.
True
2
proof
[(((triple1) -> rule6) OR ((((triple4 triple2) -> rule1)) -> rule6) OR ((((((triple4) -> rule2) triple5) -> rule7)) -> rule6))]
("Charlie" "is" "rough" "+")
((triple1) -> (rule6 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
((((triple4 triple2) -> (rule1 % int2))) -> (rule6 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((((triple4) -> (rule2 % int3)) triple5) -> (rule7 % int2))) -> (rule6 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Dave is not furry.
False
3
inv-proof
[(((triple7 triple6) -> rule8) OR ((triple7 ((triple7) -> rule4)) -> rule8) OR ((((triple6) -> rule6) triple6) -> rule8) OR ((((triple6) -> rule6) ((triple7) -> rule4)) -> rule8))]
("Dave" "is" "furry" "-")
((triple7 triple6) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
((triple7 ((triple7) -> (rule4 % int2))) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((((triple6) -> (rule6 % int2)) triple6) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
((((triple6) -> (rule6 % int3)) ((triple7) -> (rule4 % int2))) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Harry is furry.
True
4
proof
[(((triple9 ((triple9) -> rule4)) -> rule8))]
("Harry" "is" "furry" "+")
((triple9 ((triple9) -> (rule4 % int2))) -> (rule8 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not furry.
False
4
inv-proof
[(((triple9 ((triple9) -> rule4)) -> rule8))]
("Harry" "is" "furry" "-")
((triple9 ((triple9) -> (rule4 % int2))) -> (rule8 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2
Harry is not smart.
Unknown
inv-rconc
[@1: Harry is smart.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Harry" "is" "smart" "-")
Harry is kind.
Unknown
random
[@0: Harry is kind.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "kind" "+")
Dave is not blue.
Unknown
inv-random
[@0: Dave is blue.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "blue" "-")
Dave is kind.
Unknown
random
[@0: Dave is kind.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "kind" "+")
Dave is not young.
Unknown
inv-random
[@0: Dave is young.[CWA. Example of deepest failure = (FAIL)]]
("Dave" "is" "young" "-")
Harry is blue.
Unknown
random
[@0: Harry is blue.[CWA. Example of deepest failure = (FAIL)]]
("Harry" "is" "blue" "+")
@0: Charlie is big.[(triple1 OR ((triple4 triple2) -> rule1) OR ((((triple4) -> rule2) triple5) -> rule7))] Charlie is blue.[(triple2)] Charlie is furry.[(triple3 OR ((((triple1) -> rule6) triple1) -> rule8) OR ((((triple1) -> rule6) ((triple4 triple2) -> rule1)) -> rule8) OR ((((((triple4 triple2) -> rule1)) -> rule6) triple1) -> rule8) OR ((((triple1) -> rule6) ((((triple4) -> rule2) triple5) -> rule7)) -> rule8) OR ((((((triple4 triple2) -> rule1)) -> rule6) ((triple4 triple2) -> rule1)) -> rule8) OR ((((((triple4 triple2) -> rule1)) -> rule6) ((((triple4) -> rule2) triple5) -> rule7)) -> rule8) OR ((((((((triple4) -> rule2) triple5) -> rule7)) -> rule6) triple1) -> rule8) OR ((((((((triple4) -> rule2) triple5) -> rule7)) -> rule6) ((triple4 triple2) -> rule1)) -> rule8) OR ((((((((triple4) -> rule2) triple5) -> rule7)) -> rule6) ((((triple4) -> rule2) triple5) -> rule7)) -> rule8))] Charlie is kind.[(triple4)] Charlie is young.[(triple5)] Dave is big.[(triple6 OR ((triple7) -> rule4))] Dave is rough.[(triple7 OR ((triple6) -> rule6))] Dave is smart.[(triple8)] Harry is rough.[(triple9)] Harry is young.[(triple10 OR ((triple9) -> rule5))] @1: Charlie is rough.[(((triple1) -> rule6) OR ((((triple4 triple2) -> rule1)) -> rule6) OR ((((((triple4) -> rule2) triple5) -> rule7)) -> rule6))] Charlie is smart.[(((triple4) -> rule2))] Dave is furry.[(((triple7 triple6) -> rule8) OR ((triple7 ((triple7) -> rule4)) -> rule8) OR ((((triple6) -> rule6) triple6) -> rule8) OR ((((triple6) -> rule6) ((triple7) -> rule4)) -> rule8))] Harry is big.[(((triple9) -> rule4))] @2: Harry is furry.[(((triple9 ((triple9) -> rule4)) -> rule8))]
Charlie is big.
("Charlie" "is" "big" "+")
triple1
((triple4 triple2) -> (rule1 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((((triple4) -> (rule2 % int2)) triple5) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is blue.
("Charlie" "is" "blue" "+")
triple2
Charlie is furry.
("Charlie" "is" "furry" "+")
triple3
((((triple1) -> (rule6 % int2)) triple1) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
((((triple1) -> (rule6 % int3)) ((triple4 triple2) -> (rule1 % int2))) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
((((((triple4 triple2) -> (rule1 % int3))) -> (rule6 % int2)) triple1) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
((((triple1) -> (rule6 % int4)) ((((triple4) -> (rule2 % int3)) triple5) -> (rule7 % int2))) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is rough.
("Charlie" "is" "rough" "+")
int4
((((((triple4 triple2) -> (rule1 % int3))) -> (rule6 % int2)) ((triple4 triple2) -> (rule1 % int3))) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
((((((triple4 triple2) -> (rule1 % int4))) -> (rule6 % int3)) ((((triple4) -> (rule2 % int2)) triple5) -> (rule7 % int4))) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is smart.
("Charlie" "is" "smart" "+")
int2
Charlie is rough.
("Charlie" "is" "rough" "+")
int3
Charlie is big.
("Charlie" "is" "big" "+")
int4
((((((((triple4) -> (rule2 % int4)) triple5) -> (rule7 % int3))) -> (rule6 % int2)) triple1) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
((((((((triple4) -> (rule2 % int4)) triple5) -> (rule7 % int3))) -> (rule6 % int2)) ((triple4 triple2) -> (rule1 % int3))) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
((((((((triple4) -> (rule2 % int4)) triple5) -> (rule7 % int3))) -> (rule6 % int2)) ((((triple4) -> (rule2 % int4)) triple5) -> (rule7 % int3))) -> (rule8 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
int4
Charlie is kind.
("Charlie" "is" "kind" "+")
triple4
Charlie is young.
("Charlie" "is" "young" "+")
triple5
Dave is big.
("Dave" "is" "big" "+")
triple6
((triple7) -> (rule4 % int1))
Dave is big.
("Dave" "is" "big" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
triple7
((triple6) -> (rule6 % int1))
Dave is rough.
("Dave" "is" "rough" "+")
int1
Dave is smart.
("Dave" "is" "smart" "+")
triple8
Harry is rough.
("Harry" "is" "rough" "+")
triple9
Harry is young.
("Harry" "is" "young" "+")
triple10
((triple9) -> (rule5 % int1))
Harry is young.
("Harry" "is" "young" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
((triple1) -> (rule6 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
((((triple4 triple2) -> (rule1 % int2))) -> (rule6 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((((triple4) -> (rule2 % int3)) triple5) -> (rule7 % int2))) -> (rule6 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is smart.
("Charlie" "is" "smart" "+")
int3
Charlie is smart.
("Charlie" "is" "smart" "+")
((triple4) -> (rule2 % int1))
Charlie is smart.
("Charlie" "is" "smart" "+")
int1
Dave is furry.
("Dave" "is" "furry" "+")
((triple7 triple6) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
((triple7 ((triple7) -> (rule4 % int2))) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
((((triple6) -> (rule6 % int2)) triple6) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is rough.
("Dave" "is" "rough" "+")
int2
((((triple6) -> (rule6 % int3)) ((triple7) -> (rule4 % int2))) -> (rule8 % int1))
Dave is furry.
("Dave" "is" "furry" "+")
int1
Dave is big.
("Dave" "is" "big" "+")
int2
Dave is rough.
("Dave" "is" "rough" "+")
int3
Harry is big.
("Harry" "is" "big" "+")
((triple9) -> (rule4 % int1))
Harry is big.
("Harry" "is" "big" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
((triple9 ((triple9) -> (rule4 % int2))) -> (rule8 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is big.
("Harry" "is" "big" "+")
int2