Anne is furry. Anne is red. Anne is young. If something is round and green then it is furry. If something is green and red then it is round. If Anne is young then Anne is furry.
Anne is furry.
("Anne" "is" "furry" "+")
Anne is red.
("Anne" "is" "red" "+")
Anne is young.
("Anne" "is" "young" "+")
If something is round and green then it is furry.
((("something" "is" "round" "+") ("something" "is" "green" "+")) -> ("something" "is" "furry" "+"))
If something is green and red then it is round.
((("something" "is" "green" "+") ("something" "is" "red" "+")) -> ("something" "is" "round" "+"))
If Anne is young then Anne is furry.
((("Anne" "is" "young" "+")) -> ("Anne" "is" "furry" "+"))
Anne is furry.
True
1
proof
[(triple1 OR ((triple3) -> rule3))]
("Anne" "is" "furry" "+")
triple1
((triple3) -> (rule3 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is not young.
False
1
inv-proof
[(triple3)]
("Anne" "is" "young" "-")
triple3
Anne is not round.
Unknown
inv-rconc
[@1: Anne is round.[CWA. Example of deepest failure = (rule2 <- FAIL)]]
("Anne" "is" "round" "-")
Anne is rough.
Unknown
random
[@0: Anne is rough.[CWA. Example of deepest failure = (FAIL)]]
("Anne" "is" "rough" "+")
@0: Anne is furry.[(triple1 OR ((triple3) -> rule3))] Anne is red.[(triple2)] Anne is young.[(triple3)]
Anne is furry.
("Anne" "is" "furry" "+")
triple1
((triple3) -> (rule3 % int1))
Anne is furry.
("Anne" "is" "furry" "+")
int1
Anne is red.
("Anne" "is" "red" "+")
triple2
Anne is young.
("Anne" "is" "young" "+")
triple3