Anne is not blue. Anne is furry. Anne is nice. Anne is red. Anne is rough. Erin is big. Erin is blue. Erin is furry. Erin is nice. Erin is rough. All green, red people are rough. If someone is nice and big then they are rough. Red, green people are furry. Red people are big. All furry people are green. If someone is nice and not rough then they are not blue.
Anne is not blue.
("Anne" "is" "blue" "-")
Anne is furry.
("Anne" "is" "furry" "+")
Anne is nice.
("Anne" "is" "nice" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Erin is big.
("Erin" "is" "big" "+")
Erin is blue.
("Erin" "is" "blue" "+")
Erin is furry.
("Erin" "is" "furry" "+")
Erin is nice.
("Erin" "is" "nice" "+")
Erin is rough.
("Erin" "is" "rough" "+")
All green, red people are rough.
((("someone" "is" "green" "+") ("someone" "is" "red" "+")) -> ("someone" "is" "rough" "+"))
If someone is nice and big then they are rough.
((("someone" "is" "nice" "+") ("someone" "is" "big" "+")) -> ("someone" "is" "rough" "+"))
Red, green people are furry.
((("someone" "is" "red" "+") ("someone" "is" "green" "+")) -> ("someone" "is" "furry" "+"))
Red people are big.
((("someone" "is" "red" "+")) -> ("someone" "is" "big" "+"))
All furry people are green.
((("someone" "is" "furry" "+")) -> ("someone" "is" "green" "+"))
If someone is nice and not rough then they are not blue.
((("someone" "is" "nice" "+") ("someone" "is" "rough" "~")) -> ("someone" "is" "blue" "-"))
Anne is nice.
True
1
proof
[(triple3)]
("Anne" "is" "nice" "+")
triple3
Erin is not blue.
False
1
inv-proof
[(triple7)]
("Erin" "is" "blue" "-")
triple7
@0: Anne is furry.[(triple2)] Anne is nice.[(triple3)] Anne is not blue.[(triple1)] Anne is red.[(triple4)] Anne is rough.[(triple5 OR ((triple3 ((triple4) -> rule4)) -> rule2) OR ((((triple2) -> rule5) triple4) -> rule1))] Erin is big.[(triple6)] Erin is blue.[(triple7)] Erin is furry.[(triple8)] Erin is nice.[(triple9)] Erin is rough.[(triple10 OR ((triple9 triple6) -> rule2))] @1: Anne is big.[(((triple4) -> rule4))] Anne is green.[(((triple2) -> rule5))] Erin is green.[(((triple8) -> rule5))]
Anne is furry.
("Anne" "is" "furry" "+")
triple2
Anne is nice.
("Anne" "is" "nice" "+")
triple3
Anne is not blue.
("Anne" "is" "blue" "-")
triple1
Anne is red.
("Anne" "is" "red" "+")
triple4
Anne is rough.
("Anne" "is" "rough" "+")
triple5
((triple3 ((triple4) -> (rule4 % int2))) -> (rule2 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
int2
((((triple2) -> (rule5 % int2)) triple4) -> (rule1 % int1))
Anne is rough.
("Anne" "is" "rough" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
int2
Erin is big.
("Erin" "is" "big" "+")
triple6
Erin is blue.
("Erin" "is" "blue" "+")
triple7
Erin is furry.
("Erin" "is" "furry" "+")
triple8
Erin is nice.
("Erin" "is" "nice" "+")
triple9
Erin is rough.
("Erin" "is" "rough" "+")
triple10
((triple9 triple6) -> (rule2 % int1))
Erin is rough.
("Erin" "is" "rough" "+")
int1
Anne is big.
("Anne" "is" "big" "+")
((triple4) -> (rule4 % int1))
Anne is big.
("Anne" "is" "big" "+")
int1
Anne is green.
("Anne" "is" "green" "+")
((triple2) -> (rule5 % int1))
Anne is green.
("Anne" "is" "green" "+")
int1
Erin is green.
("Erin" "is" "green" "+")
((triple8) -> (rule5 % int1))
Erin is green.
("Erin" "is" "green" "+")
int1