Bob is cold. Bob is green. Bob is kind. Bob is nice. Bob is rough. Bob is white. Bob is not young. If something is cold and kind then it is white. If something is cold then it is white. All young, kind things are not white. If something is young and not cold then it is green. Kind things are green. Young, kind things are nice. If Bob is rough then Bob is green. All cold, young things are kind.
Bob is cold.
("Bob" "is" "cold" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is nice.
("Bob" "is" "nice" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is white.
("Bob" "is" "white" "+")
Bob is not young.
("Bob" "is" "young" "-")
If something is cold and kind then it is white.
((("something" "is" "cold" "+") ("something" "is" "kind" "+")) -> ("something" "is" "white" "+"))
If something is cold then it is white.
((("something" "is" "cold" "+")) -> ("something" "is" "white" "+"))
All young, kind things are not white.
((("something" "is" "young" "+") ("something" "is" "kind" "+")) -> ("something" "is" "white" "-"))
If something is young and not cold then it is green.
((("something" "is" "young" "+") ("something" "is" "cold" "~")) -> ("something" "is" "green" "+"))
Kind things are green.
((("something" "is" "kind" "+")) -> ("something" "is" "green" "+"))
Young, kind things are nice.
((("something" "is" "young" "+") ("something" "is" "kind" "+")) -> ("something" "is" "nice" "+"))
If Bob is rough then Bob is green.
((("Bob" "is" "rough" "+")) -> ("Bob" "is" "green" "+"))
All cold, young things are kind.
((("something" "is" "cold" "+") ("something" "is" "young" "+")) -> ("something" "is" "kind" "+"))
Bob is white.
True
1
proof
[(triple6 OR ((triple1) -> rule2) OR ((triple1 triple3) -> rule1))]
("Bob" "is" "white" "+")
triple6
((triple1) -> (rule2 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
((triple1 triple3) -> (rule1 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
Bob is not rough.
False
1
inv-proof
[(triple5)]
("Bob" "is" "rough" "-")
triple5
@0: Bob is cold.[(triple1)] Bob is green.[(triple2 OR ((triple3) -> rule5) OR ((triple5) -> rule7))] Bob is kind.[(triple3)] Bob is nice.[(triple4)] Bob is not young.[(triple7)] Bob is rough.[(triple5)] Bob is white.[(triple6 OR ((triple1) -> rule2) OR ((triple1 triple3) -> rule1))]
Bob is cold.
("Bob" "is" "cold" "+")
triple1
Bob is green.
("Bob" "is" "green" "+")
triple2
((triple3) -> (rule5 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
((triple5) -> (rule7 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
triple3
Bob is nice.
("Bob" "is" "nice" "+")
triple4
Bob is not young.
("Bob" "is" "young" "-")
triple7
Bob is rough.
("Bob" "is" "rough" "+")
triple5
Bob is white.
("Bob" "is" "white" "+")
triple6
((triple1) -> (rule2 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1
((triple1 triple3) -> (rule1 % int1))
Bob is white.
("Bob" "is" "white" "+")
int1