Charlie is blue. Charlie is cold. Charlie is white. All white things are quiet. If something is big then it is kind. All quiet, blue things are big.
Charlie is blue.
("Charlie" "is" "blue" "+")
Charlie is cold.
("Charlie" "is" "cold" "+")
Charlie is white.
("Charlie" "is" "white" "+")
All white things are quiet.
((("something" "is" "white" "+")) -> ("something" "is" "quiet" "+"))
If something is big then it is kind.
((("something" "is" "big" "+")) -> ("something" "is" "kind" "+"))
All quiet, blue things are big.
((("something" "is" "quiet" "+") ("something" "is" "blue" "+")) -> ("something" "is" "big" "+"))
Charlie is cold.
True
1
proof
[(triple2)]
("Charlie" "is" "cold" "+")
triple2
Charlie is not cold.
False
1
inv-proof
[(triple2)]
("Charlie" "is" "cold" "-")
triple2
Charlie is quiet.
True
2
proof
[(((triple3) -> rule1))]
("Charlie" "is" "quiet" "+")
((triple3) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is not quiet.
False
2
inv-proof
[(((triple3) -> rule1))]
("Charlie" "is" "quiet" "-")
((triple3) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is big.
True
4
proof
[(((((triple3) -> rule1) triple1) -> rule3))]
("Charlie" "is" "big" "+")
((((triple3) -> (rule1 % int2)) triple1) -> (rule3 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is not big.
False
4
inv-proof
[(((((triple3) -> rule1) triple1) -> rule3))]
("Charlie" "is" "big" "-")
((((triple3) -> (rule1 % int2)) triple1) -> (rule3 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is kind.
True
5
proof
[(((((((triple3) -> rule1) triple1) -> rule3)) -> rule2))]
("Charlie" "is" "kind" "+")
((((((triple3) -> (rule1 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
Charlie is not kind.
False
5
inv-proof
[(((((((triple3) -> rule1) triple1) -> rule3)) -> rule2))]
("Charlie" "is" "kind" "-")
((((((triple3) -> (rule1 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3
@0: Charlie is blue.[(triple1)] Charlie is cold.[(triple2)] Charlie is white.[(triple3)] @1: Charlie is quiet.[(((triple3) -> rule1))] @2: Charlie is big.[(((((triple3) -> rule1) triple1) -> rule3))] @3: Charlie is kind.[(((((((triple3) -> rule1) triple1) -> rule3)) -> rule2))]
Charlie is blue.
("Charlie" "is" "blue" "+")
triple1
Charlie is cold.
("Charlie" "is" "cold" "+")
triple2
Charlie is white.
("Charlie" "is" "white" "+")
triple3
Charlie is quiet.
("Charlie" "is" "quiet" "+")
((triple3) -> (rule1 % int1))
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
((((triple3) -> (rule1 % int2)) triple1) -> (rule3 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int2
Charlie is kind.
("Charlie" "is" "kind" "+")
((((((triple3) -> (rule1 % int3)) triple1) -> (rule3 % int2))) -> (rule2 % int1))
Charlie is kind.
("Charlie" "is" "kind" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is quiet.
("Charlie" "is" "quiet" "+")
int3