Book contents
- Frontmatter
- Contents
- List of contributors
- Preface
- Acknowledgments
- 1 Introduction
- 2 The formal foundations of AI
- Non-monotonic reasoning versus logic programming: a new perspective
- Prolegomena to a theory of mechanized formal reasoning
- 3 Levels of theory
- 4 Programs and theories
- 5 The role of representations
- 6 The role of programs in AI
- 7 Rational reconstruction as an AI methodology
- 8 Is AI special in regard to its methodology?
- 9 Does connectionism provide a new paradigm for AI?
- 10 The role of correctness in AI
- 11 Limitations on current AI technology
- 12 Annotated bibliography on the foundations of AI
- Index of names
Non-monotonic reasoning versus logic programming: a new perspective
Published online by Cambridge University Press: 03 May 2010
- Frontmatter
- Contents
- List of contributors
- Preface
- Acknowledgments
- 1 Introduction
- 2 The formal foundations of AI
- Non-monotonic reasoning versus logic programming: a new perspective
- Prolegomena to a theory of mechanized formal reasoning
- 3 Levels of theory
- 4 Programs and theories
- 5 The role of representations
- 6 The role of programs in AI
- 7 Rational reconstruction as an AI methodology
- 8 Is AI special in regard to its methodology?
- 9 Does connectionism provide a new paradigm for AI?
- 10 The role of correctness in AI
- 11 Limitations on current AI technology
- 12 Annotated bibliography on the foundations of AI
- Index of names
Summary
Introduction
The area of non-monotonic reasoning and the area of logic programming are of crucial and growing significance to artificial intelligence and to the whole field of computer science. It is therefore important to achieve a better understanding of the relationship existing between these two fields.
The major goal in the area of non-monotonic reasoning is to find adequate and sufficiently powerful formalizations of various types of non-monotonic reasoning – including common-sense reasoning – and to develop efficient ways of their implementation. Most of the currently existing formalizations are based on mathematical logic.
Logic programming introduced to computer science the important concept of declarative – as opposed to procedural – programming, based on mathematical logic. Logic programs, however, do not use logical negation, but instead rely on a non-monotonic operator – often referred to as negation as failure – which represents a procedural form of negation.
Non-monotonic reasoning and logic programming are closely related. The importance of logic programming to the area of non-monotontic reasoning follows from the fact that, as observed by several researchers (see e.g. Reiter, [to appear]) the non-monotonic character of procedural negation used in logic programming often makes it possible to efficiently implement other non-monotonic formalisms in Prolog or in other logic programming languages. Logic programming can also be used to provide formalizations for special forms of non-monotonic reasoning. For example, Kowalski and Sergot's calculus of events (1986) uses Prolog's negation-asfailure operator to formalize the temporal persistence problem in AI.
- Type
- Chapter
- Information
- The Foundations of Artificial IntelligenceA Sourcebook, pp. 49 - 71Publisher: Cambridge University PressPrint publication year: 1990
- 2
- Cited by