Charlie is big. Charlie is blue. Charlie is furry. Charlie is kind. Charlie is nice. Charlie is not quiet. Charlie is red. Fiona is big. Fiona is blue. Fiona is furry. Fiona is not kind. Fiona is nice. Fiona is quiet. Fiona is red. If Charlie is nice and Charlie is red then Charlie is big. If Charlie is not quiet then Charlie is big. All quiet, kind people are nice. If someone is quiet and not blue then they are not nice. If Charlie is big then Charlie is red. If someone is furry and not quiet then they are big.
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 nice.
("Charlie" "is" "nice" "+")
Charlie is not quiet.
("Charlie" "is" "quiet" "-")
Charlie is red.
("Charlie" "is" "red" "+")
Fiona is big.
("Fiona" "is" "big" "+")
Fiona is blue.
("Fiona" "is" "blue" "+")
Fiona is furry.
("Fiona" "is" "furry" "+")
Fiona is not kind.
("Fiona" "is" "kind" "-")
Fiona is nice.
("Fiona" "is" "nice" "+")
Fiona is quiet.
("Fiona" "is" "quiet" "+")
Fiona is red.
("Fiona" "is" "red" "+")
If Charlie is nice and Charlie is red then Charlie is big.
((("Charlie" "is" "nice" "+") ("Charlie" "is" "red" "+")) -> ("Charlie" "is" "big" "+"))
If Charlie is not quiet then Charlie is big.
((("Charlie" "is" "quiet" "~")) -> ("Charlie" "is" "big" "+"))
All quiet, kind people are nice.
((("someone" "is" "quiet" "+") ("someone" "is" "kind" "+")) -> ("someone" "is" "nice" "+"))
If someone is quiet and not blue then they are not nice.
((("someone" "is" "quiet" "+") ("someone" "is" "blue" "~")) -> ("someone" "is" "nice" "-"))
If Charlie is big then Charlie is red.
((("Charlie" "is" "big" "+")) -> ("Charlie" "is" "red" "+"))
If someone is furry and not quiet then they are big.
((("someone" "is" "furry" "+") ("someone" "is" "quiet" "~")) -> ("someone" "is" "big" "+"))
Charlie is red.
True
1
proof
[(triple7 OR ((triple1) -> rule5) OR ((((triple6) -> rule2)) -> rule5) OR ((((triple3 triple6) -> rule6)) -> rule5))]
("Charlie" "is" "red" "+")
triple7
((triple1) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
((((triple6) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((triple3 triple6) -> (rule6 % int2))) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is not red.
False
1
inv-proof
[(triple7 OR ((triple1) -> rule5) OR ((((triple6) -> rule2)) -> rule5) OR ((((triple3 triple6) -> rule6)) -> rule5))]
("Charlie" "is" "red" "-")
triple7
((triple1) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
((((triple6) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((triple3 triple6) -> (rule6 % int2))) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
@0: Charlie is big.[(triple1 OR ((triple6) -> rule2) OR ((triple3 triple6) -> rule6) OR ((triple5 triple7) -> rule1))] Charlie is blue.[(triple2)] Charlie is furry.[(triple3)] Charlie is kind.[(triple4)] Charlie is nice.[(triple5)] Charlie is not quiet.[(triple6)] Charlie is red.[(triple7 OR ((triple1) -> rule5) OR ((((triple6) -> rule2)) -> rule5) OR ((((triple3 triple6) -> rule6)) -> rule5))] Fiona is big.[(triple8)] Fiona is blue.[(triple9)] Fiona is furry.[(triple10)] Fiona is nice.[(triple12)] Fiona is not kind.[(triple11)] Fiona is quiet.[(triple13)] Fiona is red.[(triple14)]
Charlie is big.
("Charlie" "is" "big" "+")
triple1
((triple6) -> (rule2 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple3 triple6) -> (rule6 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
((triple5 triple7) -> (rule1 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is blue.
("Charlie" "is" "blue" "+")
triple2
Charlie is furry.
("Charlie" "is" "furry" "+")
triple3
Charlie is kind.
("Charlie" "is" "kind" "+")
triple4
Charlie is nice.
("Charlie" "is" "nice" "+")
triple5
Charlie is not quiet.
("Charlie" "is" "quiet" "-")
triple6
Charlie is red.
("Charlie" "is" "red" "+")
triple7
((triple1) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
((((triple6) -> (rule2 % int2))) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
((((triple3 triple6) -> (rule6 % int2))) -> (rule5 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Fiona is big.
("Fiona" "is" "big" "+")
triple8
Fiona is blue.
("Fiona" "is" "blue" "+")
triple9
Fiona is furry.
("Fiona" "is" "furry" "+")
triple10
Fiona is nice.
("Fiona" "is" "nice" "+")
triple12
Fiona is not kind.
("Fiona" "is" "kind" "-")
triple11
Fiona is quiet.
("Fiona" "is" "quiet" "+")
triple13
Fiona is red.
("Fiona" "is" "red" "+")
triple14