Charlie is green. All cold people are rough. If someone is green then they are rough. If Charlie is rough then Charlie is not nice. If Charlie is round then Charlie is not nice. If someone is red then they are green. If Charlie is rough and Charlie is not red then Charlie is cold. If someone is green and not red then they are cold. If Charlie is not round then Charlie is green.
Charlie is green.
("Charlie" "is" "green" "+")
All cold people are rough.
((("someone" "is" "cold" "+")) -> ("someone" "is" "rough" "+"))
If someone is green then they are rough.
((("someone" "is" "green" "+")) -> ("someone" "is" "rough" "+"))
If Charlie is rough then Charlie is not nice.
((("Charlie" "is" "rough" "+")) -> ("Charlie" "is" "nice" "-"))
If Charlie is round then Charlie is not nice.
((("Charlie" "is" "round" "+")) -> ("Charlie" "is" "nice" "-"))
If someone is red then they are green.
((("someone" "is" "red" "+")) -> ("someone" "is" "green" "+"))
If Charlie is rough and Charlie is not red then Charlie is cold.
((("Charlie" "is" "rough" "+") ("Charlie" "is" "red" "~")) -> ("Charlie" "is" "cold" "+"))
If someone is green and not red then they are cold.
((("someone" "is" "green" "+") ("someone" "is" "red" "~")) -> ("someone" "is" "cold" "+"))
If Charlie is not round then Charlie is green.
((("Charlie" "is" "round" "~")) -> ("Charlie" "is" "green" "+"))
Charlie is green.
True
1
proof
[(triple1)]
("Charlie" "is" "green" "+")
triple1
Charlie is not green.
False
1
inv-proof
[(triple1)]
("Charlie" "is" "green" "-")
triple1
Charlie is rough.
True
2
proof
[(((triple1) -> rule2))]
("Charlie" "is" "rough" "+")
((triple1) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is not rough.
False
2
inv-proof
[(((triple1) -> rule2))]
("Charlie" "is" "rough" "-")
((triple1) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is not nice.
True
3
proof
[(((((triple1) -> rule2)) -> rule3))]
("Charlie" "is" "nice" "-")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is nice.
False
3
inv-proof
[(((((triple1) -> rule2)) -> rule3))]
("Charlie" "is" "nice" "+")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2
Charlie is not cold.
Unknown
inv-rconc
[@1: Charlie is cold.[CWA. Example of deepest failure = (rule6 <- FAIL)]]
("Charlie" "is" "cold" "-")
Charlie is red.
Unknown
random
[@0: Charlie is red.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "red" "+")
Charlie is not white.
Unknown
inv-random
[@0: Charlie is white.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "white" "-")
Charlie is round.
Unknown
random
[@0: Charlie is round.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "round" "+")
@0: Charlie is green.[(triple1)] @1: Charlie is rough.[(((triple1) -> rule2))] @2: Charlie is not nice.[(((((triple1) -> rule2)) -> rule3))]
Charlie is green.
("Charlie" "is" "green" "+")
triple1
Charlie is rough.
("Charlie" "is" "rough" "+")
((triple1) -> (rule2 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is not nice.
("Charlie" "is" "nice" "-")
((((triple1) -> (rule2 % int2))) -> (rule3 % int1))
Charlie is not nice.
("Charlie" "is" "nice" "-")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
int2