Abstract

This chapter seeks to give an overview of the main computational techniques and methods leading to implementations of nonmonotonic reasoning. However, to make the chapter self-contained, it gives compact overviews of the main nonmonotonic logics and semantics of logic programs. It turns out that logic programming techniques as well as methods that originated in automated reasoning, like resolution or tableau calculi, can be successfully applied. This can be compared with the programming language PROLOG that proved to be successful because it is based on a subset of first-order predicate logic, so-called Horn-clauses, or definite logic programs. Although already definite programs give rise to nonmonotonic semantics, full nonmonotonicity comes in when definite programs are extended by negation and/or disjunction. Consequently, the chapter distinguishes between general nonmonotonic logics and semantics of logic programs with negation and disjunction. The latter class is syntactically more restricted (no negation in the head) but has also features which make it incomparable to general theories.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call