Bob is big. Bob is cold. Bob is kind. Bob is nice. Bob is quiet. Bob is smart. Bob is white. If Bob is smart and Bob is kind then Bob is white. If Bob is cold and Bob is white then Bob is quiet.
Bob is big.
("Bob" "is" "big" "+")
Bob is cold.
("Bob" "is" "cold" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is quiet.
("Bob" "is" "quiet" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is white.
("Bob" "is" "white" "+")
If Bob is smart and Bob is kind then Bob is white.
((("Bob" "is" "smart" "+") ("Bob" "is" "kind" "+")) -> ("Bob" "is" "white" "+"))
If Bob is cold and Bob is white then Bob is quiet.
((("Bob" "is" "cold" "+") ("Bob" "is" "white" "+")) -> ("Bob" "is" "quiet" "+"))
Bob is white.
True
1
proof
[(triple7 OR ((triple6 triple3) -> rule1))]
("Bob" "is" "white" "+")
triple7
((triple6 triple3) -> (rule1 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is not kind.
False
1
inv-proof
[(triple3)]
("Bob" "is" "kind" "-")
triple3
@0: Bob is big.[(triple1)] Bob is cold.[(triple2)] Bob is kind.[(triple3)] Bob is nice.[(triple4)] Bob is quiet.[(triple5 OR ((triple2 triple7) -> rule2) OR ((triple2 ((triple6 triple3) -> rule1)) -> rule2))] Bob is smart.[(triple6)] Bob is white.[(triple7 OR ((triple6 triple3) -> rule1))]
Bob is big.
("Bob" "is" "big" "+")
triple1
Bob is cold.
("Bob" "is" "cold" "+")
triple2
Bob is kind.
("Bob" "is" "kind" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Bob is quiet.
("Bob" "is" "quiet" "+")
triple5
((triple2 triple7) -> (rule2 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
((triple2 ((triple6 triple3) -> (rule1 % int2))) -> (rule2 % int1))
Bob is quiet.
("Bob" "is" "quiet" "+")
int1
Bob is white.
("Bob" "is" "white" "+")
int2
Bob is smart.
("Bob" "is" "smart" "+")
triple6
Bob is white.
("Bob" "is" "white" "+")
triple7
((triple6 triple3) -> (rule1 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1