Negation in conclog

  • J. -M. Jacquet
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 591)


This paper presents a new constructive form of the negation-as-failure rule dedicated to concurrent executions and, based on it, a parallel execution model of general Horn clauses. Referring to the completion understanding of the programs, this model has been proved sound and as complete as possible when the resolution rule and the negation-as-failure rule are used. Furthermore, it does not suffer from the floundering problem: in contrast, negative literals can be used to produce computed answers as the positive literals can.

This new form of negation is based on an equational framework. It introduces generalizations of substitutions, terms and related concepts of instantiation and unification. A theory of such concepts is also presented in the paper.


constructive negation parallel logic programming parallel language theory of substitutions and terms 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [Apt, 1990]
    APT K.P., Introduction to Logic Programming, in: J. van Leuwen (editor), Handbook of Theoretical Computer Science, volume B: Formal Models and Semantics, Elsevier and The MIT Press, 1990, pp. 493–574.Google Scholar
  2. [Barbuti et al., 1987]
    BARBUTI R., MANCARELLA P., PEDRESCHI D., TURINI F., Intensional Negation in Logic Programs: Examples and Implementation Techniques, Proc. TAPSOFT '87, LNCS 250, 1987, pp. 96–110.Google Scholar
  3. [Barbuti et al., 1990]
    BARBUTI R., MANCARELLA P., PEDRESCHI D., TURINI F., A Transformational Approach to Negation in Logic Programming, Journal of Logic Programming 8, 1990, pp. 201–228.Google Scholar
  4. [Chan, 1988]
    CHAN D., Constructive Negation Based on the Completed Database, Proc. 5th Conf. on Logic Programming, 1988, pp. 111–125.Google Scholar
  5. [Chan, 1989]
    CHAN D., An Extension of Constructive Negation and its Application in Coroutining, Proc. of the North American Conference on Logic Programming, 1989, pp. 477–496.Google Scholar
  6. [Clocksin and Mellish, 1981]
    CLOCKSIN W.F., MELLISH C.S., Programming in Prolog, Springer Verlag, 1981.Google Scholar
  7. [Conery, 1983]
    CONERY J.S., The And/Or Process Model for Parallel Interpretation of Logic Programs, Ph.D. thesis, University of California, 1983.Google Scholar
  8. [Deville, 1990]
    DEVILLE Y., Logic Programming: Systematic Program Development, Addison-Wesley, 1990.Google Scholar
  9. [Eder, 1985]
    EDER E., Properties of Substitutions and Unifications, Journal of Symbolic Computation, 1, 1985, pp. 31–46.Google Scholar
  10. [Giannesini et al., 1986]
    GIANNESINI F., KANOUI H., PASSERO R., VAN CANEGHEM M., Prolog, Intereditions, 1986.Google Scholar
  11. [Jacquet, 1989]
    JACQUET J.-M., Conclog: a Methodological Approach to Concurrent Logic Programming, Ph.D. thesis, University of Namur, Belgium, November 1989, to appear as Lecture Notes in Computer Science, Springer-Verlag.Google Scholar
  12. [Kalé, 1987]
    KALE L.V., Parallel Execution of Logic Programs: the REDUCE-OR Process Model, Proc. 4th Int. Conf. on Logic Programming, May 1987, pp. 616–632.Google Scholar
  13. [Khabaza, 1984]
    KHABAZA T., Negation as Failure and Parallelism, Proc. Int. Conf. on Logic Programming, 1984, pp. 70–75.Google Scholar
  14. [Lassez et al., 1988]
    LASSEZ J.L., MAHER M.J., MARRIOT K., Unification revisited, In Minker J. (editor), Foundations of deductive databses and logic programming, Morgan Kaufmann, Los Altos, 1988, pp. 587–626.Google Scholar
  15. [Li and Martin, 1986]
    LI P.P., MARTIN A.J., The Sync Model: A Parallel Execution Method for Logic Programming, Proc. Symp. on Logic Programming, 1986, pp 223–235.Google Scholar
  16. [Lloyd, 1987]
    LLOYD J.W., Foundation of Logic Programming, Springer Verlag, 1987.Google Scholar
  17. [Lugiez, 1989]
    LUGIEZ D., A Deduction Procedure for First Order Programs, Proc. 6th Int. Conf. on Logic Programming, 1989, pp. 585–599.Google Scholar
  18. [Maluszynski and Näslund, 1989]
    MALUSZINSKI J., NASLUND T., Fail Substitutions for Negation as Failure, Proc. of the North American Conference on Logic Programming, 1989, pp. 461–476.Google Scholar
  19. [Martelli and Montanari, 1982]
    MARTELLI A., MONTANARI U., An Efficient Unification Algorithm, TOPLAS, vol. 4, No. 2, April 1982, pp. 258–282.CrossRefGoogle Scholar
  20. [Naish, 1985]
    NAISH L., Negation and Control in Prolog, Ph.D. Thesis, University of Melbourne, Australia, 1985.Google Scholar
  21. [Palamidessi, 1990]
    PALAMIDESSI C., Algebraic Properties of Idempotent Substitutions, Proc. of the 17th ICALP, 1990, pp. 386–399.Google Scholar
  22. [Pollard, 1981]
    POLLARD G.H., Parallel Execution of Horn Clause Programs, Ph. D. thesis, Dept. of Computing, Imperial College, London, 1981.Google Scholar
  23. [Przymusinski, 1989]
    PRZYMUSINSKI T., On Constructive Negation in Logic Programming, Proc. of the North American Conference on Logic Programming, 1989.Google Scholar
  24. [Sato and Tamaki, 1984]
    SATO T., TAMAKI H., Transformational Logic Program Synthesis, Proc. of FGCS, 1984, pp. 195–201.Google Scholar
  25. [Tarnlund, 1977]
    TARNLUND S.A., Horn clause computability, BIT 17, pp. 215–226, 1977.Google Scholar
  26. [Turi, 1991]
    TURI D., Extending S-Models to Logic Programs with Negation, to appear in Proc. 8th Int. Conf. on Logic Programming, 1991.Google Scholar
  27. [Wallace, 1987]
    WALLACE M., Negation By Constraints: a Sound and Efficient Implementation of Negation in Deductive Databases, Proc. Int. Symp. on Logic Programming, 1987, pp. 253–263.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  • J. -M. Jacquet
    • 1
  1. 1.Center for Mathematics and Computer ScienceAB AmsterdamThe Netherlands

Personalised recommendations