Anne is red. Anne is rough. Charlie is white. White things are big. Kind, green things are quiet. If Anne is kind and Anne is rough then Anne is green. If something is big then it is rough. If Charlie is green then Charlie is white. If something is green and red then it is white. All red, kind things are green. All red, green things are rough.
Anne is red.
("Anne" "is" "red" "+")
Anne is rough.
("Anne" "is" "rough" "+")
Charlie is white.
("Charlie" "is" "white" "+")
White things are big.
((("something" "is" "white" "+")) -> ("something" "is" "big" "+"))
Kind, green things are quiet.
((("something" "is" "kind" "+") ("something" "is" "green" "+")) -> ("something" "is" "quiet" "+"))
If Anne is kind and Anne is rough then Anne is green.
((("Anne" "is" "kind" "+") ("Anne" "is" "rough" "+")) -> ("Anne" "is" "green" "+"))
If something is big then it is rough.
((("something" "is" "big" "+")) -> ("something" "is" "rough" "+"))
If Charlie is green then Charlie is white.
((("Charlie" "is" "green" "+")) -> ("Charlie" "is" "white" "+"))
If something is green and red then it is white.
((("something" "is" "green" "+") ("something" "is" "red" "+")) -> ("something" "is" "white" "+"))
All red, kind things are green.
((("something" "is" "red" "+") ("something" "is" "kind" "+")) -> ("something" "is" "green" "+"))
All red, green things are rough.
((("something" "is" "red" "+") ("something" "is" "green" "+")) -> ("something" "is" "rough" "+"))
Anne is rough.
True
1
proof
[(triple2)]
("Anne" "is" "rough" "+")
triple2
Charlie is not white.
False
1
inv-proof
[(triple3)]
("Charlie" "is" "white" "-")
triple3
Charlie is big.
True
2
proof
[(((triple3) -> rule1))]
("Charlie" "is" "big" "+")
((triple3) -> (rule1 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is not big.
False
2
inv-proof
[(((triple3) -> rule1))]
("Charlie" "is" "big" "-")
((triple3) -> (rule1 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is rough.
True
3
proof
[(((((triple3) -> rule1)) -> rule4))]
("Charlie" "is" "rough" "+")
((((triple3) -> (rule1 % int2))) -> (rule4 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is not rough.
False
3
inv-proof
[(((((triple3) -> rule1)) -> rule4))]
("Charlie" "is" "rough" "-")
((((triple3) -> (rule1 % int2))) -> (rule4 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2
Charlie is not green.
Unknown
inv-rconc
[@1: Charlie is green.[CWA. Example of deepest failure = (rule7 <- FAIL)]]
("Charlie" "is" "green" "-")
Anne is green.
Unknown
rconc
[@1: Anne is green.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Anne" "is" "green" "+")
Anne is not quiet.
Unknown
inv-rconc
[@1: Anne is quiet.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Anne" "is" "quiet" "-")
Charlie is red.
Unknown
random
[@0: Charlie is red.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "red" "+")
Charlie is not kind.
Unknown
inv-random
[@0: Charlie is kind.[CWA. Example of deepest failure = (FAIL)]]
("Charlie" "is" "kind" "-")
Anne is kind.
Unknown
random
[@0: Anne is kind.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "kind" "+")
@0: Anne is red.[(triple1)] Anne is rough.[(triple2)] Charlie is white.[(triple3)] @1: Charlie is big.[(((triple3) -> rule1))] @2: Charlie is rough.[(((((triple3) -> rule1)) -> rule4))]
Anne is red.
("Anne" "is" "red" "+")
triple1
Anne is rough.
("Anne" "is" "rough" "+")
triple2
Charlie is white.
("Charlie" "is" "white" "+")
triple3
Charlie is big.
("Charlie" "is" "big" "+")
((triple3) -> (rule1 % int1))
Charlie is big.
("Charlie" "is" "big" "+")
int1
Charlie is rough.
("Charlie" "is" "rough" "+")
((((triple3) -> (rule1 % int2))) -> (rule4 % int1))
Charlie is rough.
("Charlie" "is" "rough" "+")
int1
Charlie is big.
("Charlie" "is" "big" "+")
int2