Harry is blue. Harry is cold. Harry is furry. Harry is kind. Harry is rough. Harry is round. Harry is white. If Harry is kind and Harry is rough then Harry is round. If Harry is round and Harry is white then Harry is furry. Kind things are blue. If Harry is cold then Harry is white. All rough things are furry. If something is white and kind then it is rough. If Harry is furry then Harry is cold. White, kind things are rough.
Harry is blue.
("Harry" "is" "blue" "+")
Harry is cold.
("Harry" "is" "cold" "+")
Harry is furry.
("Harry" "is" "furry" "+")
Harry is kind.
("Harry" "is" "kind" "+")
Harry is rough.
("Harry" "is" "rough" "+")
Harry is round.
("Harry" "is" "round" "+")
Harry is white.
("Harry" "is" "white" "+")
If Harry is kind and Harry is rough then Harry is round.
((("Harry" "is" "kind" "+") ("Harry" "is" "rough" "+")) -> ("Harry" "is" "round" "+"))
If Harry is round and Harry is white then Harry is furry.
((("Harry" "is" "round" "+") ("Harry" "is" "white" "+")) -> ("Harry" "is" "furry" "+"))
Kind things are blue.
((("something" "is" "kind" "+")) -> ("something" "is" "blue" "+"))
If Harry is cold then Harry is white.
((("Harry" "is" "cold" "+")) -> ("Harry" "is" "white" "+"))
All rough things are furry.
((("something" "is" "rough" "+")) -> ("something" "is" "furry" "+"))
If something is white and kind then it is rough.
((("something" "is" "white" "+") ("something" "is" "kind" "+")) -> ("something" "is" "rough" "+"))
If Harry is furry then Harry is cold.
((("Harry" "is" "furry" "+")) -> ("Harry" "is" "cold" "+"))
White, kind things are rough.
((("something" "is" "white" "+") ("something" "is" "kind" "+")) -> ("something" "is" "rough" "+"))
Harry is white.
True
1
proof
[(triple7 OR ((triple2) -> rule4) OR ((((triple3) -> rule7)) -> rule4) OR ((((((triple5) -> rule5)) -> rule7)) -> rule4))]
("Harry" "is" "white" "+")
triple7
((triple2) -> (rule4 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((((triple3) -> (rule7 % int2))) -> (rule4 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
((((((triple5) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
int3
Harry is not blue.
False
1
inv-proof
[(triple1 OR ((triple4) -> rule3))]
("Harry" "is" "blue" "-")
triple1
((triple4) -> (rule3 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
@0: Harry is blue.[(triple1 OR ((triple4) -> rule3))] Harry is cold.[(triple2 OR ((triple3) -> rule7) OR ((((triple5) -> rule5)) -> rule7) OR ((((triple6 triple7) -> rule2)) -> rule7) OR ((((((triple7 triple4) -> rule6)) -> rule5)) -> rule7) OR ((((((triple7 triple4) -> rule8)) -> rule5)) -> rule7) OR ((((((triple4 triple5) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple4 ((triple7 triple4) -> rule6)) -> rule1) triple7) -> rule2)) -> rule7) OR ((((((triple4 ((triple7 triple4) -> rule8)) -> rule1) triple7) -> rule2)) -> rule7))] Harry is furry.[(triple3 OR ((triple5) -> rule5) OR ((triple6 triple7) -> rule2) OR ((((triple7 triple4) -> rule6)) -> rule5) OR ((((triple7 triple4) -> rule8)) -> rule5) OR ((triple6 ((triple2) -> rule4)) -> rule2) OR ((((triple4 triple5) -> rule1) triple7) -> rule2) OR ((((triple4 triple5) -> rule1) ((triple2) -> rule4)) -> rule2) OR ((((((triple2) -> rule4) triple4) -> rule6)) -> rule5) OR ((((((triple2) -> rule4) triple4) -> rule8)) -> rule5) OR ((((triple4 ((triple7 triple4) -> rule6)) -> rule1) triple7) -> rule2) OR ((((triple4 ((triple7 triple4) -> rule8)) -> rule1) triple7) -> rule2) OR ((((triple4 ((triple7 triple4) -> rule6)) -> rule1) ((triple2) -> rule4)) -> rule2) OR ((((triple4 ((triple7 triple4) -> rule8)) -> rule1) ((triple2) -> rule4)) -> rule2) OR ((((triple4 ((((triple2) -> rule4) triple4) -> rule6)) -> rule1) triple7) -> rule2) OR ((((triple4 ((((triple2) -> rule4) triple4) -> rule8)) -> rule1) triple7) -> rule2) OR ((((triple4 ((((triple2) -> rule4) triple4) -> rule6)) -> rule1) ((triple2) -> rule4)) -> rule2) OR ((((triple4 ((((triple2) -> rule4) triple4) -> rule8)) -> rule1) ((triple2) -> rule4)) -> rule2))] Harry is kind.[(triple4)] Harry is rough.[(triple5 OR ((triple7 triple4) -> rule6) OR ((triple7 triple4) -> rule8) OR ((((triple2) -> rule4) triple4) -> rule6) OR ((((triple2) -> rule4) triple4) -> rule8) OR ((((((triple3) -> rule7)) -> rule4) triple4) -> rule6) OR ((((((triple3) -> rule7)) -> rule4) triple4) -> rule8))] Harry is round.[(triple6 OR ((triple4 triple5) -> rule1) OR ((triple4 ((triple7 triple4) -> rule6)) -> rule1) OR ((triple4 ((triple7 triple4) -> rule8)) -> rule1) OR ((triple4 ((((triple2) -> rule4) triple4) -> rule6)) -> rule1) OR ((triple4 ((((triple2) -> rule4) triple4) -> rule8)) -> rule1) OR ((triple4 ((((((triple3) -> rule7)) -> rule4) triple4) -> rule6)) -> rule1) OR ((triple4 ((((((triple3) -> rule7)) -> rule4) triple4) -> rule8)) -> rule1))] Harry is white.[(triple7 OR ((triple2) -> rule4) OR ((((triple3) -> rule7)) -> rule4) OR ((((((triple5) -> rule5)) -> rule7)) -> rule4))]
Harry is blue.
("Harry" "is" "blue" "+")
triple1
((triple4) -> (rule3 % int1))
Harry is blue.
("Harry" "is" "blue" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
triple2
((triple3) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
((((triple5) -> (rule5 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
((((triple6 triple7) -> (rule2 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
((((((triple7 triple4) -> (rule6 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
((((((triple7 triple4) -> (rule8 % int3))) -> (rule5 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
((((((triple4 triple5) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
((((((triple4 ((triple7 triple4) -> (rule6 % int4))) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is rough.
("Harry" "is" "rough" "+")
int4
((((((triple4 ((triple7 triple4) -> (rule8 % int4))) -> (rule1 % int3)) triple7) -> (rule2 % int2))) -> (rule7 % int1))
Harry is cold.
("Harry" "is" "cold" "+")
int1
Harry is furry.
("Harry" "is" "furry" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is rough.
("Harry" "is" "rough" "+")
int4
Harry is furry.
("Harry" "is" "furry" "+")
triple3
((triple5) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
((triple6 triple7) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
((((triple7 triple4) -> (rule6 % int2))) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
((((triple7 triple4) -> (rule8 % int2))) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
((triple6 ((triple2) -> (rule4 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((triple4 triple5) -> (rule1 % int2)) triple7) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
((((triple4 triple5) -> (rule1 % int3)) ((triple2) -> (rule4 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
((((((triple2) -> (rule4 % int3)) triple4) -> (rule6 % int2))) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((((((triple2) -> (rule4 % int3)) triple4) -> (rule8 % int2))) -> (rule5 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((((triple4 ((triple7 triple4) -> (rule6 % int3))) -> (rule1 % int2)) triple7) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
((((triple4 ((triple7 triple4) -> (rule8 % int3))) -> (rule1 % int2)) triple7) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
((((triple4 ((triple7 triple4) -> (rule6 % int4))) -> (rule1 % int3)) ((triple2) -> (rule4 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is rough.
("Harry" "is" "rough" "+")
int4
((((triple4 ((triple7 triple4) -> (rule8 % int4))) -> (rule1 % int3)) ((triple2) -> (rule4 % int2))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is round.
("Harry" "is" "round" "+")
int3
Harry is rough.
("Harry" "is" "rough" "+")
int4
((((triple4 ((((triple2) -> (rule4 % int4)) triple4) -> (rule6 % int3))) -> (rule1 % int2)) triple7) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
((((triple4 ((((triple2) -> (rule4 % int4)) triple4) -> (rule8 % int3))) -> (rule1 % int2)) triple7) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
((((triple4 ((((triple2) -> (rule4 % int4)) triple4) -> (rule6 % int3))) -> (rule1 % int2)) ((triple2) -> (rule4 % int4))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
((((triple4 ((((triple2) -> (rule4 % int4)) triple4) -> (rule8 % int3))) -> (rule1 % int2)) ((triple2) -> (rule4 % int4))) -> (rule2 % int1))
Harry is furry.
("Harry" "is" "furry" "+")
int1
Harry is round.
("Harry" "is" "round" "+")
int2
Harry is rough.
("Harry" "is" "rough" "+")
int3
Harry is white.
("Harry" "is" "white" "+")
int4
Harry is kind.
("Harry" "is" "kind" "+")
triple4
Harry is rough.
("Harry" "is" "rough" "+")
triple5
((triple7 triple4) -> (rule6 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
((triple7 triple4) -> (rule8 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
((((triple2) -> (rule4 % int2)) triple4) -> (rule6 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((triple2) -> (rule4 % int2)) triple4) -> (rule8 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
((((((triple3) -> (rule7 % int3))) -> (rule4 % int2)) triple4) -> (rule6 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is cold.
("Harry" "is" "cold" "+")
int3
((((((triple3) -> (rule7 % int3))) -> (rule4 % int2)) triple4) -> (rule8 % int1))
Harry is rough.
("Harry" "is" "rough" "+")
int1
Harry is white.
("Harry" "is" "white" "+")
int2
Harry is cold.
("Harry" "is" "cold" "+")
int3
Harry is round.
("Harry" "is" "round" "+")
triple6
((triple4 triple5) -> (rule1 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
((triple4 ((triple7 triple4) -> (rule6 % int2))) -> (rule1 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
((triple4 ((triple7 triple4) -> (rule8 % int2))) -> (rule1 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
((triple4 ((((triple2) -> (rule4 % int3)) triple4) -> (rule6 % int2))) -> (rule1 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((triple4 ((((triple2) -> (rule4 % int3)) triple4) -> (rule8 % int2))) -> (rule1 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
((triple4 ((((((triple3) -> (rule7 % int4))) -> (rule4 % int3)) triple4) -> (rule6 % int2))) -> (rule1 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
Harry is cold.
("Harry" "is" "cold" "+")
int4
((triple4 ((((((triple3) -> (rule7 % int4))) -> (rule4 % int3)) triple4) -> (rule8 % int2))) -> (rule1 % int1))
Harry is round.
("Harry" "is" "round" "+")
int1
Harry is rough.
("Harry" "is" "rough" "+")
int2
Harry is white.
("Harry" "is" "white" "+")
int3
Harry is cold.
("Harry" "is" "cold" "+")
int4
Harry is white.
("Harry" "is" "white" "+")
triple7
((triple2) -> (rule4 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
((((triple3) -> (rule7 % int2))) -> (rule4 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
((((((triple5) -> (rule5 % int3))) -> (rule7 % int2))) -> (rule4 % int1))
Harry is white.
("Harry" "is" "white" "+")
int1
Harry is cold.
("Harry" "is" "cold" "+")
int2
Harry is furry.
("Harry" "is" "furry" "+")
int3