New Generation Computing

, Volume 9, Issue 3, pp 365–385

Classical negation in logic programs and disjunctive databases

  • Michael Gelfond
  • Vladimir Lifschitz
Special Issue

DOI: 10.1007/BF03037169

Cite this article as:
Gelfond, M. & Lifschitz, V. New Gener Comput (1991) 9: 365. doi:10.1007/BF03037169


An important limitation of traditional logic programming as a knowledge representation tool, in comparison with classical logic, is that logic programming does not allow us to deal directly with incomplete information. In order to overcome this limitation, we extend the class of general logic programs by including classical negation, in addition to negation-as-failure. The semantics of such extended programs is based on the method of stable models. The concept of a disjunctive database can be extended in a similar way. We show that some facts of commonsense knowledge can be represented by logic programs and disjunctive databases more easily when classical negation is available. Computationally, classical negation can be eliminated from extended programs by a simple preprocessor. Extended programs are identical to a special case of default theories in the sense of Reiter.


Disjunctive DatabasesIncomplete InformationLogic ProgrammingNegation as FailureNonmonotonic ReasoningStable Models

Copyright information

© Ohmsha, Ltd. and Springer 1991

Authors and Affiliations

  • Michael Gelfond
    • 1
  • Vladimir Lifschitz
    • 2
  1. 1.University of Texas at El PasoEl Paso
  2. 2.University of Texas at AustinAustin