Acta Informatica

, Volume 32, Issue 1, pp 27–59 | Cite as

What is failure? An approach to constructive negation

  • Wlodzimierz Drabent
Article

Abstract

A standard approach to negation in logic programming is negation as failure. Its major drawback is that it cannot produce answer substitutions to negated queries. Approaches to overcoming this limitation are termed constructive negation. This work proposes an approach based on construction offailed trees for some instances of a negated query. For this purpose a generalization of the standard notion of a failed tree is needed. We show that a straightforward generalization leads to unsoundness and present a correct one.

The method is applicable to arbitrary normal programs. If finitely failed trees are concerned then its semantics is given by Clark completion in 3-valued logic (and our approach is a proper extension of SLDNF-resolution). If infinite failed trees are allowed then we obtain a method for the well-founded semantics. In both cases soundness and completeness are proved.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [AB94]
    Apt, K., Bol, R.: Logic programming and negation: a survey. Technical Report CS-R9402, CWI Amsterdam, 1994. To appear in Journal of Logic ProgrammingGoogle Scholar
  2. [Apt90]
    Apt, K.: Logic Programming. In: Leeuwen, J. van (ed.) Handbook of theoretical computer science, vol. B, chapter 10, pp. 493–574. Elsevier Science Publishers B. V. Amsterdam: 1990Google Scholar
  3. [BD93]
    Bol, R., Degerstedt, L.: Tabulated resolution for well founded semantics. In: Miller, D. (ed.) Logic programming—Proceedings of the 1993 International Symposium, pp. 199–219. The MIT Press, 1993Google Scholar
  4. [BMPT90]
    Barbuti, R., Mancarella, D., Pedreschi, D., Turini, F.: A transformational approach to negation in logic programming J. of Logic Programming 8(3), 201–228 (1990)Google Scholar
  5. [BNN91]
    Bonnier, S., Nilsson, U., Näslund, T.: A simple fixed point characterization of three-valued stable model semantics. Information Processing Letters 40, 73–78 (1991)Google Scholar
  6. [Cav88]
    Cavedon, L.: On completeness of SLDNF resolution. Master's thesis, Dept. of Computer Science, University of Melbourne, 1988. Technical Report 88/17Google Scholar
  7. [Cha88]
    Chan, D.: Constructive negation based on the completed database. In: Kowalski R.A., Bowen, K.A. (eds.) Proc. Fifth International Conference and Symposium on Logic Programming, Seattle, pp. 111–125. MIT Press, 1988Google Scholar
  8. [Cha89]
    Chan, D.: An extension of constructive negation and its application in coroutining. In: Lusk, E.L., Overbeek, R.A. (eds.) Proc. North American Conference on Logic Programming, Cleveland, pp. 477–493. MIT Press, 1989Google Scholar
  9. [CI93]
    Chomicki, J., Imieliński, T.: Finite representation of infinite query answers. ACM Transactions on Database Systems18 (2), 181–223 (1993)Google Scholar
  10. [CL89]
    Comon, H., Lescanne, P.: Equational problems and disunification. J. Symbolic Computation 7, 371–425 (1989)Google Scholar
  11. [DM91]
    Drabent, W., Martelli, M.: Strict completion of logic programs. New Generation Computing 9, 69–79 (1991)Google Scholar
  12. [Dra93a]
    Drabent, W.: On completeness of SLDNF-resolution. Submitted. Modified version of Technical Report LiTH-IDA-R-93-38, Linköping University, 1993Google Scholar
  13. [Dra93b]
    Drabent, W.: SLS-resolution without floundering. In: Pereira, L.M., Norode, A. (eds.) Proc. 2nd International Workshop on Logic Programming and Non-Monotonic Reasoning, pp. 82–98. MIT Press, June 1993Google Scholar
  14. [FD93]
    Ferrand, G., Deransart, P.: Proof method of partial correctness and weak completeness for normal logic programs. J. Logic Programming17, 265–278 (1993)Google Scholar
  15. [Fit85]
    Fitting, M.: A Kripke-Kleene semantics for logic programs. J. of Logic Programming 2(4), 295–312 (1985)Google Scholar
  16. [GRS91]
    Gelder, A. van, Ross, K., Schlipf, J.: The well-founded semantics for general logic programs. J ACM 38, 620–650 (1991)Google Scholar
  17. [Kha84]
    Khabaza, T.: Negation as failure and parallelism. In: Proc. IEEE Conf. on Logic Programming, pp. 70–75. IEEE Press, 1984Google Scholar
  18. [Kun87]
    Kunen, K.: Negation in logic programming. J. Logic Programming 4 289–308 (1987)Google Scholar
  19. [Kun89]
    Kunen, K.: Signed data dependencies in logic programs. J. of Logic Programming 7(3), 231–245 (1989)Google Scholar
  20. [Llo87]
    Lloyd, J.W.: Foundations of Logic Programming. Springer-Verlag, 2nd, extended edn., 1987Google Scholar
  21. [Lug89]
    Lugiez, D.: A deduction procedure for first order programs. In: Levi, G., Martelli, M. (eds.) Proc. of Sixth International Conf. on Logic Programming, Lisbon, pp. 585–599. MIT Press, 1989Google Scholar
  22. [Mah88]
    Maher, M.: Complete axiomatization of the algebras of finite, rational and infinite trees. In: Proc. 3rd Symposium on Logic in Computer Science, pp. 348–357 (1988)Google Scholar
  23. [MMP88]
    Mancarella, P., Martini, S., Pedreschi, D.: Complete logic programs with domain closure axiom. J. of Logic Programming 5(3), 263–276 (1988)Google Scholar
  24. [MN89]
    Maluszyński, J., Näslund, T., Fail substitutions for negation as failure. In: Lusk, E.L., Overbeck, R.A. (eds.) Proc. North American Conference on Logic Programming, Cleveland, pp. 461–476. MIT Press, 1989Google Scholar
  25. [Näs90]
    Näslund, T.: Sldfa-resolution. Licentiate thesis. Department of Computer and Information Science, Linköping University, 1990Google Scholar
  26. [Pla92]
    Plaza, J.A.: Fully declarative logic programming. In: Programming Language Implementation and Logic Programming, Proceedings 1992, pp. 415–427. Springer, 1992 (LNCS, vol. 631)Google Scholar
  27. [Prz89a]
    Przymusinski, T.C.: On constructive negation in logic programming. In: Proc. North American Conference on Logic Programming, Addendum. MIT Press, 1989Google Scholar
  28. [Prz89b]
    Przymusinski, T.C.: On the declarative and procedural semantics of logic programs. Journal of Automated Reasoning 5, 167–205 (1989)Google Scholar
  29. [Prz90]
    Przymusinski, T.C.: The well-founded semantics coincides with the three-valued stable semantics. Fundamenta Informaticae XIII(4), 445–463 (1990)Google Scholar
  30. [Prz89a]
    Przymusinski, T.C.: Well-founded completions of logic programs. In: Furukawa, K. (ed.) Proceedings of the Eighth International Conference on Logic Programming. Paris, pp. 726–741. MIT Press, 1991Google Scholar
  31. [She89]
    Shepherdson, J.C.: A sound and complete semantics for a version of negation as failure. Theoretical Computer Science 65, 343–371 (1989)Google Scholar
  32. [She91]
    Shepherdson, J.C.: Language and equality theory in logic programming. Technical Report PM-91-02, School of Mathematics, University of Bristol, 1991. Newer version of PM-88-08Google Scholar
  33. [SI88]
    Seki, H., Itoh, H.: A query evaluation method for stratified programs under the extended CWA. In: Kowalski, R.A., Bowen K.A. (eds.) Proc. of the Fifth International Conference and Symposium on Logic Programming, pp. 195–211. MIT Press, 1988Google Scholar
  34. [SM91]
    Sato, T., Motoyoshi, F.: A complete top-down interpreter for first order logic programs. In: Logic Programming, Proc. of the 1991 International Symposium, pp. 35–53. MIT Press, 1991Google Scholar
  35. [ST84]
    Sato, T., Tamaki, H.: Transformational logic program synthesis. In: Proceedings of the International Conference on Fifth Generation Computer Systems, pp. 195–201, 1984Google Scholar
  36. [ST86]
    Sato, T., Tamaki, H.: OLD-resolution with tabulation. In: Shapiro, E. (ed.) Proceedings of the third International Conference on Logic Programming, pp. 84–98. Springer, 1986. LNCS 225Google Scholar
  37. [Stu91]
    Stuckey, P.: Constructive negation for constraint logic programming. In: 6th Annual IEEE Symposium on Logic in Computer Science (LICS'91), July 1991Google Scholar
  38. [Teu93]
    Teusink, F.: Using SLDFA-resolution with abductive logic programs. In: ILPS'93 post-conference workshop “Logic Programming with Incomplete Information”, 1993Google Scholar
  39. [Wal87]
    Wallace, M.: Negation by constraints: A sound and efficient implementation of negation in deductive databases. In: Proc. 1987 Symposium on Logic Programming, San Francisco, pp. 253–263. IEEE Computer Society Press, 1987Google Scholar
  40. [Wal93]
    Wallace, M.: Tight, consistent and computable completions for unrestricted logic programs. J. of Logic Programming 15(3), 243–274 (1993)Google Scholar

Copyright information

© Springer-Verlag 1995

Authors and Affiliations

  • Wlodzimierz Drabent
    • 1
    • 2
  1. 1.IPI PANPolish Academy of SciencesWarszawaPoland
  2. 2.IDALinköping UniversityLinköpingSweden

Personalised recommendations