Charlie is blue. Charlie is furry. Charlie is kind. Charlie is quiet. Charlie is red. Charlie is round. Charlie is white. If something is quiet then it is kind. White things are round. If Charlie is quiet and Charlie is round then Charlie is red.
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is furry.
("Charlie" "is" "furry" "+")
Charlie is kind.
("Charlie" "is" "kind" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is red.
("Charlie" "is" "red" "+")
Charlie is round.
("Charlie" "is" "round" "+")
Charlie is white.
("Charlie" "is" "white" "+")
If something is quiet then it is kind.
((("something" "is" "quiet" "+")) -> ("something" "is" "kind" "+"))
White things are round.
((("something" "is" "white" "+")) -> ("something" "is" "round" "+"))
If Charlie is quiet and Charlie is round then Charlie is red.
((("Charlie" "is" "quiet" "+") ("Charlie" "is" "round" "+")) -> ("Charlie" "is" "red" "+"))
Charlie is red.
True
1
proof
[(triple5 OR ((triple4 triple6) -> rule3) OR ((triple4 ((triple7) -> rule2)) -> rule3))]
("Charlie" "is" "red" "+")
triple5
((triple4 triple6) -> (rule3 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
((triple4 ((triple7) -> (rule2 % int2))) -> (rule3 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is not red.
False
1
inv-proof
[(triple5 OR ((triple4 triple6) -> rule3) OR ((triple4 ((triple7) -> rule2)) -> rule3))]
("Charlie" "is" "red" "-")
triple5
((triple4 triple6) -> (rule3 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
((triple4 ((triple7) -> (rule2 % int2))) -> (rule3 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
@0: Charlie is blue.[(triple1)] Charlie is furry.[(triple2)] Charlie is kind.[(triple3 OR ((triple4) -> rule1))] Charlie is quiet.[(triple4)] Charlie is red.[(triple5 OR ((triple4 triple6) -> rule3) OR ((triple4 ((triple7) -> rule2)) -> rule3))] Charlie is round.[(triple6 OR ((triple7) -> rule2))] Charlie is white.[(triple7)]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
Charlie is furry.
("Charlie" "is" "furry" "+")
triple2
Charlie is kind.
("Charlie" "is" "kind" "+")
triple3
((triple4) -> (rule1 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple4
Charlie is red.
("Charlie" "is" "red" "+")
triple5
((triple4 triple6) -> (rule3 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
((triple4 ((triple7) -> (rule2 % int2))) -> (rule3 % int1))
Charlie is red.
("Charlie" "is" "red" "+")
int1
Charlie is round.
("Charlie" "is" "round" "+")
int2
Charlie is round.
("Charlie" "is" "round" "+")
triple6
((triple7) -> (rule2 % int1))
Charlie is round.
("Charlie" "is" "round" "+")
int1
Charlie is white.
("Charlie" "is" "white" "+")
triple7