Gary is big. Gary is blue. Gary is cold. Gary is furry. Gary is green. Gary is round. Gary is young. All cold, blue things are furry. All round things are furry. Cold, green things are big. Furry things are big. Green things are blue. All big, cold things are round.
Gary is big.
("Gary" "is" "big" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is cold.
("Gary" "is" "cold" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is green.
("Gary" "is" "green" "+")
Gary is round.
("Gary" "is" "round" "+")
Gary is young.
("Gary" "is" "young" "+")
All cold, blue things are furry.
((("something" "is" "cold" "+") ("something" "is" "blue" "+")) -> ("something" "is" "furry" "+"))
All round things are furry.
((("something" "is" "round" "+")) -> ("something" "is" "furry" "+"))
Cold, green things are big.
((("something" "is" "cold" "+") ("something" "is" "green" "+")) -> ("something" "is" "big" "+"))
Furry things are big.
((("something" "is" "furry" "+")) -> ("something" "is" "big" "+"))
Green things are blue.
((("something" "is" "green" "+")) -> ("something" "is" "blue" "+"))
All big, cold things are round.
((("something" "is" "big" "+") ("something" "is" "cold" "+")) -> ("something" "is" "round" "+"))
Gary is young.
True
1
proof
[(triple7)]
("Gary" "is" "young" "+")
triple7
Gary is not round.
False
1
inv-proof
[(triple6 OR ((triple1 triple3) -> rule6) OR ((((triple4) -> rule4) triple3) -> rule6) OR ((((triple3 triple5) -> rule3) triple3) -> rule6) OR ((((((triple3 triple2) -> rule1)) -> rule4) triple3) -> rule6) OR ((((((triple3 ((triple5) -> rule5)) -> rule1)) -> rule4) triple3) -> rule6))]
("Gary" "is" "round" "-")
triple6
((triple1 triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((((triple4) -> (rule4 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
((((triple3 triple5) -> (rule3 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
((((((triple3 triple2) -> (rule1 % int3))) -> (rule4 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
((((((triple3 ((triple5) -> (rule5 % int4))) -> (rule1 % int3))) -> (rule4 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
int4
@0: Gary is big.[(triple1 OR ((triple4) -> rule4) OR ((triple3 triple5) -> rule3) OR ((((triple6) -> rule2)) -> rule4) OR ((((triple3 triple2) -> rule1)) -> rule4) OR ((((triple3 ((triple5) -> rule5)) -> rule1)) -> rule4))] Gary is blue.[(triple2 OR ((triple5) -> rule5))] Gary is cold.[(triple3)] Gary is furry.[(triple4 OR ((triple6) -> rule2) OR ((triple3 triple2) -> rule1) OR ((((triple1 triple3) -> rule6)) -> rule2) OR ((triple3 ((triple5) -> rule5)) -> rule1) OR ((((((triple3 triple5) -> rule3) triple3) -> rule6)) -> rule2))] Gary is green.[(triple5)] Gary is round.[(triple6 OR ((triple1 triple3) -> rule6) OR ((((triple4) -> rule4) triple3) -> rule6) OR ((((triple3 triple5) -> rule3) triple3) -> rule6) OR ((((((triple3 triple2) -> rule1)) -> rule4) triple3) -> rule6) OR ((((((triple3 ((triple5) -> rule5)) -> rule1)) -> rule4) triple3) -> rule6))] Gary is young.[(triple7)]
Gary is big.
("Gary" "is" "big" "+")
triple1
((triple4) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
((triple3 triple5) -> (rule3 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
((((triple6) -> (rule2 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
((((triple3 triple2) -> (rule1 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
((((triple3 ((triple5) -> (rule5 % int3))) -> (rule1 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is furry.
("Gary" "is" "furry" "+")
int2
Gary is blue.
("Gary" "is" "blue" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
triple2
((triple5) -> (rule5 % int1))
Gary is blue.
("Gary" "is" "blue" "+")
int1
Gary is cold.
("Gary" "is" "cold" "+")
triple3
Gary is furry.
("Gary" "is" "furry" "+")
triple4
((triple6) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((triple3 triple2) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
((((triple1 triple3) -> (rule6 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
((triple3 ((triple5) -> (rule5 % int2))) -> (rule1 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is blue.
("Gary" "is" "blue" "+")
int2
((((((triple3 triple5) -> (rule3 % int3)) triple3) -> (rule6 % int2))) -> (rule2 % int1))
Gary is furry.
("Gary" "is" "furry" "+")
int1
Gary is round.
("Gary" "is" "round" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is green.
("Gary" "is" "green" "+")
triple5
Gary is round.
("Gary" "is" "round" "+")
triple6
((triple1 triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
((((triple4) -> (rule4 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
((((triple3 triple5) -> (rule3 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
((((((triple3 triple2) -> (rule1 % int3))) -> (rule4 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
((((((triple3 ((triple5) -> (rule5 % int4))) -> (rule1 % int3))) -> (rule4 % int2)) triple3) -> (rule6 % int1))
Gary is round.
("Gary" "is" "round" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is furry.
("Gary" "is" "furry" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
int4
Gary is young.
("Gary" "is" "young" "+")
triple7