Gary is not furry. Gary is rough. Gary is round. Rough people are blue. All rough people are kind. Furry people are kind. Kind people are nice. All furry, blue people are nice. If Gary is white then Gary is round. If someone is round then they are white. If Gary is round and Gary is furry then Gary is white.
Gary is not furry.
("Gary" "is" "furry" "-")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is round.
("Gary" "is" "round" "+")
Rough people are blue.
((("someone" "is" "rough" "+")) -> ("someone" "is" "blue" "+"))
All rough people are kind.
((("someone" "is" "rough" "+")) -> ("someone" "is" "kind" "+"))
Furry people are kind.
((("someone" "is" "furry" "+")) -> ("someone" "is" "kind" "+"))
Kind people are nice.
((("someone" "is" "kind" "+")) -> ("someone" "is" "nice" "+"))
All furry, blue people are nice.
((("someone" "is" "furry" "+") ("someone" "is" "blue" "+")) -> ("someone" "is" "nice" "+"))
If Gary is white then Gary is round.
((("Gary" "is" "white" "+")) -> ("Gary" "is" "round" "+"))
If someone is round then they are white.
((("someone" "is" "round" "+")) -> ("someone" "is" "white" "+"))
If Gary is round and Gary is furry then Gary is white.
((("Gary" "is" "round" "+") ("Gary" "is" "furry" "+")) -> ("Gary" "is" "white" "+"))
Gary is not furry.
True
1
proof
[(triple1)]
("Gary" "is" "furry" "-")
triple1
Gary is not rough.
False
1
inv-proof
[(triple2)]
("Gary" "is" "rough" "-")
triple2
Gary is blue.
True
2
proof
[(((triple2) -> rule1))]
("Gary" "is" "blue" "+")
((triple2) -> (rule1 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is not white.
False
2
inv-proof
[(((triple3) -> rule7))]
("Gary" "is" "white" "-")
((triple3) -> (rule7 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is nice.
True
3
proof
[(((((triple2) -> rule2)) -> rule4))]
("Gary" "is" "nice" "+")
((((triple2) -> (rule2 % int2))) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is not nice.
False
3
inv-proof
[(((((triple2) -> rule2)) -> rule4))]
("Gary" "is" "nice" "-")
((((triple2) -> (rule2 % int2))) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
@0: Gary is not furry.[(triple1)] Gary is rough.[(triple2)] Gary is round.[(triple3)] @1: Gary is blue.[(((triple2) -> rule1))] Gary is kind.[(((triple2) -> rule2))] Gary is white.[(((triple3) -> rule7))] @2: Gary is nice.[(((((triple2) -> rule2)) -> rule4))]
Gary is not furry.
("Gary" "is" "furry" "-")
triple1
Gary is rough.
("Gary" "is" "rough" "+")
triple2
Gary is round.
("Gary" "is" "round" "+")
triple3
Gary is blue.
("Gary" "is" "blue" "+")
((triple2) -> (rule1 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
((triple2) -> (rule2 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is white.
("Gary" "is" "white" "+")
((triple3) -> (rule7 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is nice.
("Gary" "is" "nice" "+")
((((triple2) -> (rule2 % int2))) -> (rule4 % int1))
Gary is nice.
("Gary" "is" "nice" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2