The treatment of negation in logic programs for representing legislation
Robert Kowalski · 1989
Logic programs represent knowledge in the form of implications A if B1 and … Bn, n ≥ 0 where the conclusion A is an atomic formula and each condition Bi is either an atomic formula or the negation of an atomic formula. Any variables are assumed to be universally quantified, with a scope which is the entire sentence. A negated condition “not Ai” is deemed to hold if the corresponding positive condition Ai can be shown to fail to hold. This interpretation of negative conditions is called negation by failure (NBF) [Cl 78]. It has the characteristic that only the positive “if-half” of a definition needs to be given explicity. The negative “only-if” half is given implicitly by NBF.