Gary is furry. If something is furry then it is white. All white, big things are furry. If something is green and red then it is big. All big things are green. Kind things are not green. If something is furry and white then it is not red.
Gary is furry.
("Gary" "is" "furry" "+")
If something is furry then it is white.
((("something" "is" "furry" "+")) -> ("something" "is" "white" "+"))
All white, big things are furry.
((("something" "is" "white" "+") ("something" "is" "big" "+")) -> ("something" "is" "furry" "+"))
If something is green and red then it is big.
((("something" "is" "green" "+") ("something" "is" "red" "+")) -> ("something" "is" "big" "+"))
All big things are green.
((("something" "is" "big" "+")) -> ("something" "is" "green" "+"))
Kind things are not green.
((("something" "is" "kind" "+")) -> ("something" "is" "green" "-"))
If something is furry and white then it is not red.
((("something" "is" "furry" "+") ("something" "is" "white" "+")) -> ("something" "is" "red" "-"))
Gary is furry.
True
1
proof
[(triple1)]
("Gary" "is" "furry" "+")
triple1
Gary is not furry.
False
1
inv-proof
[(triple1)]
("Gary" "is" "furry" "-")
triple1
Gary is white.
True
2
proof
[(((triple1) -> rule1))]
("Gary" "is" "white" "+")
((triple1) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is not white.
False
2
inv-proof
[(((triple1) -> rule1))]
("Gary" "is" "white" "-")
((triple1) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is not green.
Unknown
inv-rconc
[@2: Gary is green.[CWA. Example of deepest failure = (rule4 <- rule3 <- FAIL)]]
("Gary" "is" "green" "-")
Gary is big.
Unknown
rconc
[@1: Gary is big.[CWA. Example of deepest failure = (rule3 <- FAIL)]]
("Gary" "is" "big" "+")
Gary is not kind.
Unknown
inv-random
[@0: Gary is kind.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "kind" "-")
Gary is young.
Unknown
random
[@0: Gary is young.[CWA. Example of deepest failure = (FAIL)]]
("Gary" "is" "young" "+")
@0: Gary is furry.[(triple1)] @1: Gary is white.[(((triple1) -> rule1))] @2: Gary is not red.[(((triple1 ((triple1) -> rule1)) -> rule6))]
Gary is furry.
("Gary" "is" "furry" "+")
triple1
Gary is white.
("Gary" "is" "white" "+")
((triple1) -> (rule1 % int1))
Gary is white.
("Gary" "is" "white" "+")
int1
Gary is not red.
("Gary" "is" "red" "-")
((triple1 ((triple1) -> (rule1 % int2))) -> (rule6 % int1))
Gary is not red.
("Gary" "is" "red" "-")
int1
Gary is white.
("Gary" "is" "white" "+")
int2