Skip to main content
Log in

What is failure? An approach to constructive negation

  • Published:
Acta Informatica Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Apt, K., Bol, R.: Logic programming and negation: a survey. Technical Report CS-R9402, CWI Amsterdam, 1994. To appear in Journal of Logic Programming

  2. 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: 1990

    Google Scholar 

  3. 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, 1993

  4. 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. 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. Cavedon, L.: On completeness of SLDNF resolution. Master's thesis, Dept. of Computer Science, University of Melbourne, 1988. Technical Report 88/17

  7. 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, 1988

  8. 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, 1989

  9. Chomicki, J., Imieliński, T.: Finite representation of infinite query answers. ACM Transactions on Database Systems18 (2), 181–223 (1993)

    Google Scholar 

  10. Comon, H., Lescanne, P.: Equational problems and disunification. J. Symbolic Computation 7, 371–425 (1989)

    Google Scholar 

  11. Drabent, W., Martelli, M.: Strict completion of logic programs. New Generation Computing 9, 69–79 (1991)

    Google Scholar 

  12. Drabent, W.: On completeness of SLDNF-resolution. Submitted. Modified version of Technical Report LiTH-IDA-R-93-38, Linköping University, 1993

  13. 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 1993

  14. 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. Fitting, M.: A Kripke-Kleene semantics for logic programs. J. of Logic Programming 2(4), 295–312 (1985)

    Google Scholar 

  16. Gelder, A. van, Ross, K., Schlipf, J.: The well-founded semantics for general logic programs. J ACM 38, 620–650 (1991)

    Google Scholar 

  17. Khabaza, T.: Negation as failure and parallelism. In: Proc. IEEE Conf. on Logic Programming, pp. 70–75. IEEE Press, 1984

  18. Kunen, K.: Negation in logic programming. J. Logic Programming 4 289–308 (1987)

    Google Scholar 

  19. Kunen, K.: Signed data dependencies in logic programs. J. of Logic Programming 7(3), 231–245 (1989)

    Google Scholar 

  20. Lloyd, J.W.: Foundations of Logic Programming. Springer-Verlag, 2nd, extended edn., 1987

  21. 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, 1989

  22. 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)

  23. 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. 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, 1989

  25. Näslund, T.: Sldfa-resolution. Licentiate thesis. Department of Computer and Information Science, Linköping University, 1990

  26. Plaza, J.A.: Fully declarative logic programming. In: Programming Language Implementation and Logic Programming, Proceedings 1992, pp. 415–427. Springer, 1992 (LNCS, vol. 631)

  27. Przymusinski, T.C.: On constructive negation in logic programming. In: Proc. North American Conference on Logic Programming, Addendum. MIT Press, 1989

  28. Przymusinski, T.C.: On the declarative and procedural semantics of logic programs. Journal of Automated Reasoning 5, 167–205 (1989)

    Google Scholar 

  29. Przymusinski, T.C.: The well-founded semantics coincides with the three-valued stable semantics. Fundamenta Informaticae XIII(4), 445–463 (1990)

    Google Scholar 

  30. 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, 1991

  31. 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. 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-08

  33. 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, 1988

  34. 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, 1991

  35. Sato, T., Tamaki, H.: Transformational logic program synthesis. In: Proceedings of the International Conference on Fifth Generation Computer Systems, pp. 195–201, 1984

  36. 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 225

  37. Stuckey, P.: Constructive negation for constraint logic programming. In: 6th Annual IEEE Symposium on Logic in Computer Science (LICS'91), July 1991

  38. Teusink, F.: Using SLDFA-resolution with abductive logic programs. In: ILPS'93 post-conference workshop “Logic Programming with Incomplete Information”, 1993

  39. 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, 1987

  40. Wallace, M.: Tight, consistent and computable completions for unrestricted logic programs. J. of Logic Programming 15(3), 243–274 (1993)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Drabent, W. What is failure? An approach to constructive negation. Acta Informatica 32, 27–59 (1995). https://doi.org/10.1007/BF01185404

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01185404

Keywords

Navigation