Abstract
Pure prolog has certain defects as a programming language. To resolve such problems, some extensions of prolog which go beyond horn logic, or alternatively, some non-logical mechanisms need to be introduced. Non-logical mechanisms, however, often do not work as the programmer expects.
In this paper, a simple extension of prolog based on the procedural interpretation of ordinary prolog is discussed. The extended prolog can deal with negative knowledge as well as positive in a unified manner, and improve the terminability of programs.
Utilization of non-monotonicity to express knowledge such as default and inheritance, and the problems attached to the extension are also discussed.
References
Kowalski, R.: Predicate Logic as Programming Language, IFIP 74 (North-Holland, 1974) 569.
Fifth Generation Computer Systems, ed. T. Moto-oka (North-Holland, 1982).
Aida, H.: Heiretsu Prolog System “Paralog” ni tsuite (on the Parallel Prolog System “Paralog”), Proc. of Prolog Conf. (Tsukuba, 1982) 18. [in Japanese]
Warren, D. H. D.: Implementing Prolog—Compiling Predicate Logic Programs, D. A. I. Research reports,39–40 (University of Edinburgh, 1977).
McDermott, D. and Doyle, J.: Non-Monotonic Logic I, Artificial Intelligence13, (North-Holland, 1980) 41.
Author information
Authors and Affiliations
About this article
Cite this article
Aida, H., Tanaka, H. & Moto-Oka, T. A prolog extension for handling negative knowledge. NGCO 1, 87–91 (1983). https://doi.org/10.1007/BF03037025
Issue Date:
DOI: https://doi.org/10.1007/BF03037025