Bob is big. Bob is blue. Bob is cold. Bob is not furry. Bob is green. Bob is nice. Bob is red. If someone is green and nice then they are not furry. If someone is cold and not big then they are green.
Bob is big.
("Bob" "is" "big" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is not furry.
("Bob" "is" "furry" "-")
Bob is green.
("Bob" "is" "green" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is red.
("Bob" "is" "red" "+")
If someone is green and nice then they are not furry.
((("someone" "is" "green" "+") ("someone" "is" "nice" "+")) -> ("someone" "is" "furry" "-"))
If someone is cold and not big then they are green.
((("someone" "is" "cold" "+") ("someone" "is" "big" "~")) -> ("someone" "is" "green" "+"))
Bob is not furry.
True
1
proof
[(triple4 OR ((triple5 triple6) -> rule1))]
("Bob" "is" "furry" "-")
triple4
((triple5 triple6) -> (rule1 % int1))
Bob is not furry.
("Bob" "is" "furry" "-")
int1
Bob is furry.
False
1
inv-proof
[(triple4 OR ((triple5 triple6) -> rule1))]
("Bob" "is" "furry" "+")
triple4
((triple5 triple6) -> (rule1 % int1))
Bob is not furry.
("Bob" "is" "furry" "-")
int1
@0: Bob is big.[(triple1)] Bob is blue.[(triple2)] Bob is cold.[(triple3)] Bob is green.[(triple5)] Bob is nice.[(triple6)] Bob is not furry.[(triple4 OR ((triple5 triple6) -> rule1))] Bob is red.[(triple7)]
Bob is big.
("Bob" "is" "big" "+")
triple1
Bob is blue.
("Bob" "is" "blue" "+")
triple2
Bob is cold.
("Bob" "is" "cold" "+")
triple3
Bob is green.
("Bob" "is" "green" "+")
triple5
Bob is nice.
("Bob" "is" "nice" "+")
triple6
Bob is not furry.
("Bob" "is" "furry" "-")
triple4
((triple5 triple6) -> (rule1 % int1))
Bob is not furry.
("Bob" "is" "furry" "-")
int1
Bob is red.
("Bob" "is" "red" "+")
triple7