Gary is big. Gary is blue. Gary is furry. Gary is kind. Gary is rough. Gary is smart. Gary is young. If something is furry and not smart then it is kind. All young, blue things are kind. If Gary is kind and Gary is blue then Gary is young. If Gary is kind then Gary is big. Blue things are young. All big, kind things are rough. If something is smart and not young then it is rough. If Gary is not kind then Gary is rough.
Gary is big.
("Gary" "is" "big" "+")
Gary is blue.
("Gary" "is" "blue" "+")
Gary is furry.
("Gary" "is" "furry" "+")
Gary is kind.
("Gary" "is" "kind" "+")
Gary is rough.
("Gary" "is" "rough" "+")
Gary is smart.
("Gary" "is" "smart" "+")
Gary is young.
("Gary" "is" "young" "+")
If something is furry and not smart then it is kind.
((("something" "is" "furry" "+") ("something" "is" "smart" "~")) -> ("something" "is" "kind" "+"))
All young, blue things are kind.
((("something" "is" "young" "+") ("something" "is" "blue" "+")) -> ("something" "is" "kind" "+"))
If Gary is kind and Gary is blue then Gary is young.
((("Gary" "is" "kind" "+") ("Gary" "is" "blue" "+")) -> ("Gary" "is" "young" "+"))
If Gary is kind then Gary is big.
((("Gary" "is" "kind" "+")) -> ("Gary" "is" "big" "+"))
Blue things are young.
((("something" "is" "blue" "+")) -> ("something" "is" "young" "+"))
All big, kind things are rough.
((("something" "is" "big" "+") ("something" "is" "kind" "+")) -> ("something" "is" "rough" "+"))
If something is smart and not young then it is rough.
((("something" "is" "smart" "+") ("something" "is" "young" "~")) -> ("something" "is" "rough" "+"))
If Gary is not kind then Gary is rough.
((("Gary" "is" "kind" "~")) -> ("Gary" "is" "rough" "+"))
Gary is furry.
True
1
proof
[(triple3)]
("Gary" "is" "furry" "+")
triple3
Gary is not big.
False
1
inv-proof
[(triple1 OR ((triple4) -> rule4) OR ((((triple7 triple2) -> rule2)) -> rule4) OR ((((((triple2) -> rule5) triple2) -> rule2)) -> rule4))]
("Gary" "is" "big" "-")
triple1
((triple4) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
((((triple7 triple2) -> (rule2 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((((((triple2) -> (rule5 % int3)) triple2) -> (rule2 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
@0: Gary is big.[(triple1 OR ((triple4) -> rule4) OR ((((triple7 triple2) -> rule2)) -> rule4) OR ((((((triple2) -> rule5) triple2) -> rule2)) -> rule4))] Gary is blue.[(triple2)] Gary is furry.[(triple3)] Gary is kind.[(triple4 OR ((triple7 triple2) -> rule2) OR ((((triple2) -> rule5) triple2) -> rule2))] Gary is rough.[(triple5 OR ((triple1 triple4) -> rule6) OR ((triple1 ((triple7 triple2) -> rule2)) -> rule6) OR ((((triple4) -> rule4) triple4) -> rule6) OR ((((triple4) -> rule4) ((triple7 triple2) -> rule2)) -> rule6) OR ((triple1 ((((triple2) -> rule5) triple2) -> rule2)) -> rule6) OR ((((((triple7 triple2) -> rule2)) -> rule4) triple4) -> rule6) OR ((((triple4) -> rule4) ((((triple2) -> rule5) triple2) -> rule2)) -> rule6) OR ((((((triple7 triple2) -> rule2)) -> rule4) ((triple7 triple2) -> rule2)) -> rule6) OR ((((((triple7 triple2) -> rule2)) -> rule4) ((((triple2) -> rule5) triple2) -> rule2)) -> rule6) OR ((((((((triple2) -> rule5) triple2) -> rule2)) -> rule4) triple4) -> rule6) OR ((((((((triple2) -> rule5) triple2) -> rule2)) -> rule4) ((triple7 triple2) -> rule2)) -> rule6) OR ((((((((triple2) -> rule5) triple2) -> rule2)) -> rule4) ((((triple2) -> rule5) triple2) -> rule2)) -> rule6))] Gary is smart.[(triple6)] Gary is young.[(triple7 OR ((triple2) -> rule5) OR ((triple4 triple2) -> rule3))]
Gary is big.
("Gary" "is" "big" "+")
triple1
((triple4) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
((((triple7 triple2) -> (rule2 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((((((triple2) -> (rule5 % int3)) triple2) -> (rule2 % int2))) -> (rule4 % int1))
Gary is big.
("Gary" "is" "big" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
Gary is blue.
("Gary" "is" "blue" "+")
triple2
Gary is furry.
("Gary" "is" "furry" "+")
triple3
Gary is kind.
("Gary" "is" "kind" "+")
triple4
((triple7 triple2) -> (rule2 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
((((triple2) -> (rule5 % int2)) triple2) -> (rule2 % int1))
Gary is kind.
("Gary" "is" "kind" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is rough.
("Gary" "is" "rough" "+")
triple5
((triple1 triple4) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
((triple1 ((triple7 triple2) -> (rule2 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
((((triple4) -> (rule4 % int2)) triple4) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
((((triple4) -> (rule4 % int3)) ((triple7 triple2) -> (rule2 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
((triple1 ((((triple2) -> (rule5 % int3)) triple2) -> (rule2 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
((((((triple7 triple2) -> (rule2 % int3))) -> (rule4 % int2)) triple4) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((triple4) -> (rule4 % int4)) ((((triple2) -> (rule5 % int3)) triple2) -> (rule2 % int2))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is kind.
("Gary" "is" "kind" "+")
int2
Gary is young.
("Gary" "is" "young" "+")
int3
Gary is big.
("Gary" "is" "big" "+")
int4
((((((triple7 triple2) -> (rule2 % int3))) -> (rule4 % int2)) ((triple7 triple2) -> (rule2 % int3))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
((((((triple7 triple2) -> (rule2 % int4))) -> (rule4 % int3)) ((((triple2) -> (rule5 % int2)) triple2) -> (rule2 % int4))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is young.
("Gary" "is" "young" "+")
int2
Gary is big.
("Gary" "is" "big" "+")
int3
Gary is kind.
("Gary" "is" "kind" "+")
int4
((((((((triple2) -> (rule5 % int4)) triple2) -> (rule2 % int3))) -> (rule4 % int2)) triple4) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
((((((((triple2) -> (rule5 % int4)) triple2) -> (rule2 % int3))) -> (rule4 % int2)) ((triple7 triple2) -> (rule2 % int3))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
((((((((triple2) -> (rule5 % int4)) triple2) -> (rule2 % int3))) -> (rule4 % int2)) ((((triple2) -> (rule5 % int4)) triple2) -> (rule2 % int3))) -> (rule6 % int1))
Gary is rough.
("Gary" "is" "rough" "+")
int1
Gary is big.
("Gary" "is" "big" "+")
int2
Gary is kind.
("Gary" "is" "kind" "+")
int3
Gary is young.
("Gary" "is" "young" "+")
int4
Gary is smart.
("Gary" "is" "smart" "+")
triple6
Gary is young.
("Gary" "is" "young" "+")
triple7
((triple2) -> (rule5 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1
((triple4 triple2) -> (rule3 % int1))
Gary is young.
("Gary" "is" "young" "+")
int1