Charlie is big. Charlie is furry. Charlie is nice. Charlie is red. Charlie is round. Charlie is white. Charlie is young. If Charlie is big then Charlie is nice. White people are furry. If Charlie is big and Charlie is round then Charlie is nice. All young, furry people are white. If Charlie is nice then Charlie is big. Nice, young people are white. Nice people are big. If Charlie is young then Charlie is big.
Charlie is big.
("Charlie" "is" "big" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Charlie is young.
("Charlie" "is" "young" "+")
If Charlie is big then Charlie is nice.
((("Charlie" "is" "big" "+")) -> ("Charlie" "is" "nice" "+"))
White people are furry.
((("someone" "is" "white" "+")) -> ("someone" "is" "furry" "+"))
If Charlie is big and Charlie is round then Charlie is nice.
((("Charlie" "is" "big" "+") ("Charlie" "is" "round" "+")) -> ("Charlie" "is" "nice" "+"))
All young, furry people are white.
((("someone" "is" "young" "+") ("someone" "is" "furry" "+")) -> ("someone" "is" "white" "+"))
If Charlie is nice then Charlie is big.
((("Charlie" "is" "nice" "+")) -> ("Charlie" "is" "big" "+"))
Nice, young people are white.
((("someone" "is" "nice" "+") ("someone" "is" "young" "+")) -> ("someone" "is" "white" "+"))
Nice people are big.
((("someone" "is" "nice" "+")) -> ("someone" "is" "big" "+"))
If Charlie is young then Charlie is big.
((("Charlie" "is" "young" "+")) -> ("Charlie" "is" "big" "+"))
Charlie is nice.
True
1
proof
[(triple3 OR ((triple1) -> rule1) OR ((triple1 triple5) -> rule3) OR ((((triple7) -> rule8)) -> rule1) OR ((((triple7) -> rule8) triple5) -> rule3))]
("Charlie" "is" "nice" "+")
triple3
((triple1) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((triple1 triple5) -> (rule3 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((((triple7) -> (rule8 % int2))) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((triple7) -> (rule8 % int2)) triple5) -> (rule3 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is not round.
False
1
inv-proof
[(triple5)]
("Charlie" "is" "round" "-")
triple5
@0: Charlie is big.[(triple1 OR ((triple3) -> rule5) OR ((triple3) -> rule7) OR ((triple7) -> rule8))] Charlie is furry.[(triple2 OR ((triple6) -> rule2) OR ((((triple3 triple7) -> rule6)) -> rule2) OR ((((((triple1) -> rule1) triple7) -> rule6)) -> rule2) OR ((((((triple1 triple5) -> rule3) triple7) -> rule6)) -> rule2) OR ((((((((triple7) -> rule8)) -> rule1) triple7) -> rule6)) -> rule2) OR ((((((((triple7) -> rule8) triple5) -> rule3) triple7) -> rule6)) -> rule2))] Charlie is nice.[(triple3 OR ((triple1) -> rule1) OR ((triple1 triple5) -> rule3) OR ((((triple7) -> rule8)) -> rule1) OR ((((triple7) -> rule8) triple5) -> rule3))] Charlie is red.[(triple4)] Charlie is round.[(triple5)] Charlie is white.[(triple6 OR ((triple3 triple7) -> rule6) OR ((triple7 triple2) -> rule4) OR ((((triple1) -> rule1) triple7) -> rule6) OR ((((triple1 triple5) -> rule3) triple7) -> rule6) OR ((((((triple7) -> rule8)) -> rule1) triple7) -> rule6) OR ((((((triple7) -> rule8) triple5) -> rule3) triple7) -> rule6))] Charlie is young.[(triple7)]
Charlie is big.
("Charlie" "is" "big" "+")
triple1
((triple3) -> (rule5 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple3) -> (rule7 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple7) -> (rule8 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is furry.
("Charlie" "is" "furry" "+")
triple2
((triple6) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
((((triple3 triple7) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
((((((triple1) -> (rule1 % int3)) triple7) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
((((((triple1 triple5) -> (rule3 % int3)) triple7) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
((((((((triple7) -> (rule8 % int4))) -> (rule1 % int3)) triple7) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is big.
("Charlie" "is" "big" "+")
int4
((((((((triple7) -> (rule8 % int4)) triple5) -> (rule3 % int3)) triple7) -> (rule6 % int2))) -> (rule2 % int1))
Charlie is furry.
("Charlie" "is" "furry" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
int2
Charlie is nice.
("Charlie" "is" "nice" "+")
int3
Charlie is big.
("Charlie" "is" "big" "+")
int4
Charlie is nice.
("Charlie" "is" "nice" "+")
triple3
((triple1) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((triple1 triple5) -> (rule3 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
((((triple7) -> (rule8 % int2))) -> (rule1 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((triple7) -> (rule8 % int2)) triple5) -> (rule3 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is red.
("Charlie" "is" "red" "+")
triple4
Charlie is round.
("Charlie" "is" "round" "+")
triple5
Charlie is white.
("Charlie" "is" "white" "+")
triple6
((triple3 triple7) -> (rule6 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
((triple7 triple2) -> (rule4 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
((((triple1) -> (rule1 % int2)) triple7) -> (rule6 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
((((triple1 triple5) -> (rule3 % int2)) triple7) -> (rule6 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
((((((triple7) -> (rule8 % int3))) -> (rule1 % int2)) triple7) -> (rule6 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
((((((triple7) -> (rule8 % int3)) triple5) -> (rule3 % int2)) triple7) -> (rule6 % int1))
Charlie is white.
("Charlie" "is" "white" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is big.
("Charlie" "is" "big" "+")
int3
Charlie is young.
("Charlie" "is" "young" "+")
triple7