Classical negation in logic programs and disjunctive databases.

*(English)*Zbl 0735.68012
New Gener. Comput. 9, No. 3-4, 365-385 (1991).

The authors extend logic programs by including classical negation in addition to negation as failure. They can distinguish between a query which fails in the sense that it doesn’t succeed and a query which fails in the stronger sense that its negation succeeds. The semantics of an extended program is based on the method of stable models. A ”well- behaved” extended program has exactly one answer set, and this set is consistent. Moreover, an extended program can be viewed as a special case of default theories.

On the other hand, an extended program \(P\) can be reduced to a general program \(P'\) and under rather general conditions it is possible to use a query evaluation for \(P'\).

The paper also discusses examples when the use of classical negation leads to more natural results than with negation-as-failure. Finally, extended disjunctive databases are studied. They contain non-classical disjunction in their rule heads. The paper overcomes an important limitation of traditional logic programming in comparison with classical logic in the sense of expressing incomplete information.

On the other hand, an extended program \(P\) can be reduced to a general program \(P'\) and under rather general conditions it is possible to use a query evaluation for \(P'\).

The paper also discusses examples when the use of classical negation leads to more natural results than with negation-as-failure. Finally, extended disjunctive databases are studied. They contain non-classical disjunction in their rule heads. The paper overcomes an important limitation of traditional logic programming in comparison with classical logic in the sense of expressing incomplete information.

Reviewer: J.Pokorny

##### MSC:

68N17 | Logic programming |

68T15 | Theorem proving (deduction, resolution, etc.) (MSC2010) |

68T30 | Knowledge representation |