Bob is big. Bob is blue. Bob is green. Bob is kind. Bob is rough. Bob is smart. Bob is young. If Bob is rough then Bob is green. If someone is blue then they are young. All rough people are blue.
Bob is big.
("Bob" "is" "big" "+")
Bob is blue.
("Bob" "is" "blue" "+")
Bob is green.
("Bob" "is" "green" "+")
Bob is kind.
("Bob" "is" "kind" "+")
Bob is rough.
("Bob" "is" "rough" "+")
Bob is smart.
("Bob" "is" "smart" "+")
Bob is young.
("Bob" "is" "young" "+")
If Bob is rough then Bob is green.
((("Bob" "is" "rough" "+")) -> ("Bob" "is" "green" "+"))
If someone is blue then they are young.
((("someone" "is" "blue" "+")) -> ("someone" "is" "young" "+"))
All rough people are blue.
((("someone" "is" "rough" "+")) -> ("someone" "is" "blue" "+"))
Bob is rough.
True
1
proof
[(triple5)]
("Bob" "is" "rough" "+")
triple5
Bob is not big.
False
1
inv-proof
[(triple1)]
("Bob" "is" "big" "-")
triple1
@0: Bob is big.[(triple1)] Bob is blue.[(triple2 OR ((triple5) -> rule3))] Bob is green.[(triple3 OR ((triple5) -> rule1))] Bob is kind.[(triple4)] Bob is rough.[(triple5)] Bob is smart.[(triple6)] Bob is young.[(triple7 OR ((triple2) -> rule2) OR ((((triple5) -> rule3)) -> rule2))]
Bob is big.
("Bob" "is" "big" "+")
triple1
Bob is blue.
("Bob" "is" "blue" "+")
triple2
((triple5) -> (rule3 % int1))
Bob is blue.
("Bob" "is" "blue" "+")
int1
Bob is green.
("Bob" "is" "green" "+")
triple3
((triple5) -> (rule1 % int1))
Bob is green.
("Bob" "is" "green" "+")
int1
Bob is kind.
("Bob" "is" "kind" "+")
triple4
Bob is rough.
("Bob" "is" "rough" "+")
triple5
Bob is smart.
("Bob" "is" "smart" "+")
triple6
Bob is young.
("Bob" "is" "young" "+")
triple7
((triple2) -> (rule2 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
((((triple5) -> (rule3 % int2))) -> (rule2 % int1))
Bob is young.
("Bob" "is" "young" "+")
int1
Bob is blue.
("Bob" "is" "blue" "+")
int2