Negation as failure
Negation as failure (NAF, for short) is a non-monotonic inference rule in logic programming, used to derive n o t p {\displaystyle \mathrm {not} ~p} (i.e. that p {\displaystyle p} is assumed not to hold) from failure to derive p {\displaystyle p} .