Anne is blue. Anne is cold. Anne is green. Anne is rough. Anne is white. Charlie is blue. Charlie is cold. Charlie is green. Charlie is nice. Charlie is quiet. Charlie is rough. Charlie is white. Nice, rough things are blue. All green things are nice.
Anne is blue.
("Anne" "is" "blue" "+")
Anne is cold.
("Anne" "is" "cold" "+")
Anne is green.
("Anne" "is" "green" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Anne is white.
("Anne" "is" "white" "+")
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is green.
("Charlie" "is" "green" "+")
Charlie is nice.
("Charlie" "is" "nice" "+")
Charlie is quiet.
("Charlie" "is" "quiet" "+")
Charlie is rough.
("Charlie" "is" "rough" "+")
Charlie is white.
("Charlie" "is" "white" "+")
Nice, rough things are blue.
((("something" "is" "nice" "+") ("something" "is" "rough" "+")) -> ("something" "is" "blue" "+"))
All green things are nice.
((("something" "is" "green" "+")) -> ("something" "is" "nice" "+"))
Anne is white.
True
1
proof
[(triple5)]
("Anne" "is" "white" "+")
triple5
Anne is not blue.
False
1
inv-proof
[(triple1 OR ((((triple3) -> rule2) triple4) -> rule1))]
("Anne" "is" "blue" "-")
triple1
((((triple3) -> (rule2 % int2)) triple4) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is nice.
True
2
proof
[(((triple3) -> rule2))]
("Anne" "is" "nice" "+")
((triple3) -> (rule2 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
Anne is not nice.
False
2
inv-proof
[(((triple3) -> rule2))]
("Anne" "is" "nice" "-")
((triple3) -> (rule2 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1
@0: Anne is blue.[(triple1 OR ((((triple3) -> rule2) triple4) -> rule1))] Anne is cold.[(triple2)] Anne is green.[(triple3)] Anne is rough.[(triple4)] Anne is white.[(triple5)] Charlie is blue.[(triple6 OR ((triple9 triple11) -> rule1) OR ((((triple8) -> rule2) triple11) -> rule1))] Charlie is cold.[(triple7)] Charlie is green.[(triple8)] Charlie is nice.[(triple9 OR ((triple8) -> rule2))] Charlie is quiet.[(triple10)] Charlie is rough.[(triple11)] Charlie is white.[(triple12)] @1: Anne is nice.[(((triple3) -> rule2))]
Anne is blue.
("Anne" "is" "blue" "+")
triple1
((((triple3) -> (rule2 % int2)) triple4) -> (rule1 % int1))
Anne is blue.
("Anne" "is" "blue" "+")
int1
Anne is nice.
("Anne" "is" "nice" "+")
int2
Anne is cold.
("Anne" "is" "cold" "+")
triple2
Anne is green.
("Anne" "is" "green" "+")
triple3
Anne is rough.
("Anne" "is" "rough" "+")
triple4
Anne is white.
("Anne" "is" "white" "+")
triple5
Charlie is blue.
("Charlie" "is" "blue" "+")
triple6
((triple9 triple11) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
((((triple8) -> (rule2 % int2)) triple11) -> (rule1 % int1))
Charlie is blue.
("Charlie" "is" "blue" "+")
int1
Charlie is nice.
("Charlie" "is" "nice" "+")
int2
Charlie is cold.
("Charlie" "is" "cold" "+")
triple7
Charlie is green.
("Charlie" "is" "green" "+")
triple8
Charlie is nice.
("Charlie" "is" "nice" "+")
triple9
((triple8) -> (rule2 % int1))
Charlie is nice.
("Charlie" "is" "nice" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
triple10
Charlie is rough.
("Charlie" "is" "rough" "+")
triple11
Charlie is white.
("Charlie" "is" "white" "+")
triple12
Anne is nice.
("Anne" "is" "nice" "+")
((triple3) -> (rule2 % int1))
Anne is nice.
("Anne" "is" "nice" "+")
int1