Hostname: page-component-78c5997874-m6dg7 Total loading time: 0 Render date: 2024-11-18T10:12:27.521Z Has data issue: false hasContentIssue false

Contextual hypotheses and semantics of logic programs

Published online by Cambridge University Press:  25 July 2011

ÉRIC A. MARTIN*
Affiliation:
School of Computer Science and Engineering, The University of New South Wales, Sydney, NSW 2052, Australia e-mail: emartin@cse.unsw.edu.au

Abstract

Logic programming has developed as a rich field, built over a logical substratum whose main constituent is a nonclassical form of negation, sometimes coexisting with classical negation. The field has seen the advent of a number of alternative semantics, with Kripke–Kleene semantics, the well-founded semantics, the stable model semantics, and the answer-set semantics standing out as the most successful. We show that all aforementioned semantics are particular cases of a generic semantics, in a framework where classical negation is the unique form of negation and where the literals in the bodies of the rules can be ‘marked’ to indicate that they can be the targets of hypotheses. A particular semantics then amounts to choosing a particular marking scheme and choosing a particular set of hypotheses. When a literal belongs to the chosen set of hypotheses, all marked occurrences of that literal in the body of a rule are assumed to be true, whereas the occurrences of that literal that have not been marked in the body of the rule are to be derived in order to contribute to the firing of the rule. Hence the notion of hypothetical reasoning that is presented in this framework is not based on making global assumptions, but more subtly on making local, contextual assumptions, taking effect as indicated by the chosen marking scheme on the basis of the chosen set of hypotheses. Our approach offers a unified view on the various semantics proposed in logic programming, classical in that only classical negation is used, and links the semantics of logic programs to mechanisms that endow rule-based systems with the power to harness hypothetical reasoning.

Type
Regular Papers
Copyright
Copyright © Cambridge University Press 2011

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Alferes, J. J., Pereira, L. M. and Przymusinski, T. C. 1996. Strong and explicit negation in non-monotonic reasoning and logic programming. In Proceedings of the European Workshop on Logics in Artificial Intelligence. Lecture Notes in Computer Science, vol. 1126. Springer-Verlag, London, 143163.CrossRefGoogle Scholar
Alferes, J. J., Pereira, L. M. and Przymusinski, T. C. 1998. ‘Classical’ negation in nonmonotonic reasoning and logic programming. Journal of Automated Reasoning 20, 1–2 (April), 107142.Google Scholar
Apt, K. R. and Bol, R. 1994. Logic programming and negation: A survey. Journal of Logic Programming 19–20, Supplement 1 (May–July), 971.CrossRefGoogle Scholar
Clark, K. L. 1987. Negation as failure. In Readings in Nonmonotonic Reasoning, Ginsberg, M. L., Ed. Morgan Kaufmann Publishers Inc., San Francisco, CA, 311325.Google Scholar
Denecker, M., Bruynooghe, M. and Marek, V. 2001. Logic programming revisited: Logic programs as inductive definitions. ACM Transactions on Computational Logic 2, 4 (October), 623654.Google Scholar
Emden, M. H. V. and Kowalski, R. A. 1976. The semantics of predicate logic as a programming language. Journal of the Association for Computing Machinery 23, 4 (October), 733742.CrossRefGoogle Scholar
Fitting, M. 1985. A Kripke–Kleene semantics for logic programs. Journal of Logic Programming 2, 4 (December), 295312.CrossRefGoogle Scholar
Fitting, M. 1999. Fixpoint semantics for logic programming – A survey. Theoretical Computer Science 278, 2551.CrossRefGoogle Scholar
Gelder, A. V., Ross, K. A. and Schlipf, J. S. 1991. The well-founded semantics for general logic programs. Journal of the Association for Computing Machinery 38, 3 (July), 620650.Google Scholar
Gelfond, M. and Lifschitz, V. 1988. The stable model semantics for logic programming. In Logic Programming: Proceedings of the Fifth International Conference and Symposium, Kowalski, R. A. and Bowen, K. A., Eds. MIT Press Series in Logic Programming, vol. 2. MIT Press, Manchester, UK, 10701080.Google Scholar
Gelfond, M. and Lifschitz, V. 1991. Classical negation in logic programs and disjunctive databases. New Generation Computing 9, 3–4, 365385.Google Scholar
Hitzler, P. 2005. Towards a systematic account of different semantics for logic programs. Journal of Logic and Computation 15, 3 (June), 391404.Google Scholar
Jäger, G. and Stärk, R. F. 1993. The defining power of stratified and hierarchical logic programs. Journal of Logic Programming 15, 1–2 (January), 5577.Google Scholar
Kaminski, M. and Rey, G. 2002. Revisiting quantification in autoepistemic logic. ACM Transactions on Computational Logic 3, 4 (October), 542561.CrossRefGoogle Scholar
Lloyd, J. W. 1987. Foundations of Logic Programming, 2nd ed.Springer-Verlag, New York.Google Scholar
Loyer, Y., Spyratos, N. and Stamate, D. 2003. Parametrized semantics of logic programs: A unifying framework. Theoretical Computer Science 308, 1–3 (November), 429447.Google Scholar
Marek, W. and Truszczyński, M. 1991. Autoepistemic logic. Journal of the Association for Computing Machinery 38, 3 (July), 587618.Google Scholar
Martin, E. 2006. Quantification over names and modalities. In Advances in Modal Logic, vol. 6, Governatori, G., Hodkinson, I. and Venema, Y., Eds. College Publications, London, 353372.Google Scholar
Minker, J. 1993. An overview of nonmonotonic reasoning and logic programming. Journal of Logic Programming 17, 2–4 (November), 95126.Google Scholar
Minker, J. and Seipel, D. 2002. Disjunctive logic programming: A survey and assessment. In Computational Logic: Logic Programming and Beyond, Essays in Honour of Robert A. Kowalski, Kakas, A. C. and Sadri, F., Eds. Lecture Notes in Computer Science, vol. 2407–2408. Springer-Verlag, London, 472511.CrossRefGoogle Scholar
Moore, R. C. 1985. Semantical considerations on nonmonotonic logic. Artificial Intelligence 25, 1 (January), 7594.Google Scholar
Pearce, D. 2006. Equilibrium logic. Annals of Mathematics and Artificial Intelligence 47, 1–2 (June), 341.CrossRefGoogle Scholar
Pedreschi, D., Ruggieri, S. and Smaus, J.-G. 2002. Classes of terminating logic programs. Theory and Practice of Logic Programming 2, 3 (May), 369418.CrossRefGoogle Scholar