Anne is blue. Anne is cold. Anne is green. Anne is nice. Anne is quiet. Anne is white. Dave is big. Dave is blue. Dave is green. Dave is nice. Dave is quiet. Dave is white. If someone is cold and white then they are quiet. All quiet people are cold. If someone is quiet then they are green.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is quiet.
("Anne" "is" "quiet" "+")
Anne is white.
("Anne" "is" "white" "+")
Dave is big.
("Dave" "is" "big" "+")
Dave is blue.
("Dave" "is" "blue" "+")
Dave is green.
("Dave" "is" "green" "+")
Dave is nice.
("Dave" "is" "nice" "+")
Dave is quiet.
("Dave" "is" "quiet" "+")
Dave is white.
("Dave" "is" "white" "+")
If someone is cold and white then they are quiet.
((("someone" "is" "cold" "+") ("someone" "is" "white" "+")) -> ("someone" "is" "quiet" "+"))
All quiet people are cold.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "cold" "+"))
If someone is quiet then they are green.
((("someone" "is" "quiet" "+")) -> ("someone" "is" "green" "+"))
Anne is green.
True
1
proof
[(triple3 OR ((triple5) -> rule3) OR ((((triple2 triple6) -> rule1)) -> rule3))]
("Anne" "is" "green" "+")
triple3
((triple5) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((((triple2 triple6) -> (rule1 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is not green.
False
1
inv-proof
[(triple3 OR ((triple5) -> rule3) OR ((((triple2 triple6) -> rule1)) -> rule3))]
("Anne" "is" "green" "-")
triple3
((triple5) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((((triple2 triple6) -> (rule1 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
@0: Anne is blue.[(triple1)] Anne is cold.[(triple2 OR ((triple5) -> rule2))] Anne is green.[(triple3 OR ((triple5) -> rule3) OR ((((triple2 triple6) -> rule1)) -> rule3))] Anne is nice.[(triple4)] Anne is quiet.[(triple5 OR ((triple2 triple6) -> rule1))] Anne is white.[(triple6)] Dave is big.[(triple7)] Dave is blue.[(triple8)] Dave is green.[(triple9 OR ((triple11) -> rule3))] Dave is nice.[(triple10)] Dave is quiet.[(triple11)] Dave is white.[(triple12)] @1: Dave is cold.[(((triple11) -> rule2))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
Anne is cold.
("Anne" "is" "cold" "+")
triple2
((triple5) -> (rule2 % int1))
Anne is cold.
("Anne" "is" "cold" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
triple3
((triple5) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
((((triple2 triple6) -> (rule1 % int2))) -> (rule3 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Anne is quiet.
("Anne" "is" "quiet" "+")
int2
Anne is nice.
("Anne" "is" "nice" "+")
triple4
Anne is quiet.
("Anne" "is" "quiet" "+")
triple5
((triple2 triple6) -> (rule1 % int1))
Anne is quiet.
("Anne" "is" "quiet" "+")
int1
Anne is white.
("Anne" "is" "white" "+")
triple6
Dave is big.
("Dave" "is" "big" "+")
triple7
Dave is blue.
("Dave" "is" "blue" "+")
triple8
Dave is green.
("Dave" "is" "green" "+")
triple9
((triple11) -> (rule3 % int1))
Dave is green.
("Dave" "is" "green" "+")
int1
Dave is nice.
("Dave" "is" "nice" "+")
triple10
Dave is quiet.
("Dave" "is" "quiet" "+")
triple11
Dave is white.
("Dave" "is" "white" "+")
triple12
Dave is cold.
("Dave" "is" "cold" "+")
((triple11) -> (rule2 % int1))
Dave is cold.
("Dave" "is" "cold" "+")
int1