Gary is blue. Gary is cold. Gary is furry. Gary is quiet. Gary is red. Gary is rough. Gary is young. All rough, quiet people are furry. All quiet, rough people are blue.
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is quiet.
("Gary" "is" "quiet" "+")
Gary is red.
("Gary" "is" "red" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is young.
("Gary" "is" "young" "+")
All rough, quiet people are furry.
((("someone" "is" "rough" "+") ("someone" "is" "quiet" "+")) -> ("someone" "is" "furry" "+"))
All quiet, rough people are blue.
((("someone" "is" "quiet" "+") ("someone" "is" "rough" "+")) -> ("someone" "is" "blue" "+"))
Gary is furry.
True
1
proof
[(triple3 OR ((triple6 triple4) -> rule1))]
("Gary" "is" "furry" "+")
triple3
((triple6 triple4) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is not cold.
False
1
inv-proof
[(triple2)]
("Gary" "is" "cold" "-")
triple2
@0: Gary is blue.[(triple1 OR ((triple4 triple6) -> rule2))] Gary is cold.[(triple2)] Gary is furry.[(triple3 OR ((triple6 triple4) -> rule1))] Gary is quiet.[(triple4)] Gary is red.[(triple5)] Gary is rough.[(triple6)] Gary is young.[(triple7)]
Gary is blue.
("Gary" "is" "blue" "+")
triple1
((triple4 triple6) -> (rule2 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
triple2
Gary is furry.
("Gary" "is" "furry" "+")
triple3
((triple6 triple4) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is quiet.
("Gary" "is" "quiet" "+")
triple4
Gary is red.
("Gary" "is" "red" "+")
triple5
Gary is rough.
("Gary" "is" "rough" "+")
triple6
Gary is young.
("Gary" "is" "young" "+")
triple7