Negation as failure is an inference rule that derives not p
from failure to derive p
. This is notably different from, and weaker than, explicit logical negation.
It's possible to write things in NAF that don't have obviously correct interpretations, e.g.:
p → not q
q → not p
Therefore, there are competing semantic models for NAF: