Cooperating Answer Set Programming

  • Davy Van Nieuwenborgh
  • Stijn Heymans
  • Dirk Vermeir
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4079)


We present a formalism for logic program cooperation based on the answer set semantics. The system consists of independent logic programs that are connected via a sequential communication channel. When presented with an input set of literals from its predecessor, a logic program computes its output as an answer set of itself, enriched with the input.

It turns out that the communication strategy makes the system quite expressive: essentially a sequence of a fixed number of programs n captures the complexity class \({\ensuremath{\Sigma}^P_n}\), i.e. the n-th level of the polynomial hierarchy. On the other hand, unbounded sequences capture the polynomial hierarchy \(\mathcal{PH}\). These results make the formalism suitable for complex applications such as hierarchical decision making and preference-based diagnosis on ordered theories. In addition, such systems can be realized by implementing an appropriate control strategy on top of existing solvers such as dlv or smodels, possibly in a distributed environment.


Logic Program Logic Programming Weak Constraint Check Program Stable Model Semantic 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alferes, J.J., Leite, J.A., Pereira, L.M., Przymusinska, H., Przymusinski, T.C.: Dynamic logic programming. In: Proceedings of the 6th International Conference on Principles of Knowledge Representation and Reasoning, pp. 98–111. Morgan Kaufmann, San Francisco (1998)Google Scholar
  2. 2.
    Baral, C.: Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge Press, Cambridge (2003)zbMATHCrossRefGoogle Scholar
  3. 3.
    Brewka, G.: Logic programming with ordered disjunction. In: Proceedings of the 18th National Conference on Artificial Intelligence and Fourteenth Conference on Innovative Applications of Artificial Intelligence, pp. 100–105. AAAI Press, Menlo Park (2002)Google Scholar
  4. 4.
    Brewka, G., Niemelä, I., Syrjänen, T.: Implementing Ordered Disjunction Using Answer Set Solvers for Normal Programs. In: Flesca, S., Greco, S., Leone, N., Ianni, G. (eds.) JELIA 2002. LNCS, vol. 2424, pp. 444–455. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  5. 5.
    Brewka, G., Niemelä, I., Truszczynski, M.: Answer set optimization. In: Gottlob, G., Walsh, T. (eds.) IJCAI, pp. 867–872. Morgan Kaufmann, San Francisco (2003)Google Scholar
  6. 6.
    Buccafurri, F., Leone, N., Rullo, P.: Strong and weak constraints in disjunctive datalog. In: Fuhrbach, U., Dix, J., Nerode, A. (eds.) LPNMR 1997. LNCS, vol. 1265, pp. 2–17. Springer, Heidelberg (1997)Google Scholar
  7. 7.
    Dantsin, E., Eiter, T., Gottlob, G., Voronkov, A.: Complexity and expressive power of logic programming. ACM Computing Surveys 33(3), 374–425 (2001)CrossRefGoogle Scholar
  8. 8.
    Denzinger, J., Kronenburg, M.: Planning for distributed theorem proving: The teamwork approach. In: Görz, G., Hölldobler, S. (eds.) KI 1996. LNCS, vol. 1137, pp. 43–56. Springer, Heidelberg (1996)Google Scholar
  9. 9.
    Eiter, T., Faber, W., Leone, N., Pfeifer, G.: The diagnosis frontend of the dlv system. AI Communications 12(1-2), 99–111 (1999)MathSciNetGoogle Scholar
  10. 10.
    Eiter, T., Fink, M., Sabbatini, G., Tompits, H.: Considerations on Updates of Logic Programs. In: Brewka, G., Moniz Pereira, L., Ojeda-Aciego, M., de Guzmán, I.P. (eds.) JELIA 2000. LNCS (LNAI), vol. 1919, pp. 2–20. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  11. 11.
    Eiter, T., Gottlob, G.: The complexity of logic-based abduction. Journal of the Association for Computing Machinery 42(1), 3–42 (1995)zbMATHMathSciNetGoogle Scholar
  12. 12.
    Eiter, T., Gottlob, G., Gurevich, Y.: Normal forms for second-order logic over finite structures, and classification of np optimization problems. Annals of Pure and Applied Logic 78(1-3), 111–125 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Eiter, T., Gottlob, G., Leone, N.: Abduction from logic programs: Semantics and complexity. Theoretical Computer Science 189(1-2), 129–177 (1997)zbMATHCrossRefMathSciNetGoogle Scholar
  14. 14.
    Eiter, T., Gottlob, G., Mannila, H.: Adding disjunction to datalog. In: Proceedings of the Thirteenth ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems, pp. 267–278. ACM Press, New York (1994)CrossRefGoogle Scholar
  15. 15.
    Eiter, T., Polleres, A.: Towards Automated Integration of Guess and Check Programs in Answer Set Programming. In: Lifschitz, V., Niemelä, I. (eds.) LPNMR 2004. LNCS (LNAI), vol. 2923, pp. 100–113. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  16. 16.
    Faber, W., Pfeifer, G.: dlv homepage,
  17. 17.
    Fisher, M.: An open approach to concurrent theorem-proving. Parallel Processing for Artificial Intelligence 3 (1997)Google Scholar
  18. 18.
    Gelfond, M., Lifschitz, V.: The stable model semantics for logic programming. In: Logic Programming, Proceedings of the Fifth International Conference and Symposium, Seattle, Washington, pp. 1070–1080. MIT Press, Cambridge (1988)Google Scholar
  19. 19.
    Heymans, S., Van Nieuwenborgh, D., Vermeir, D.: Hierarchical Decision Making by Autonomous Agents. In: Alferes, J.J., Leite, J.A. (eds.) JELIA 2004. LNCS (LNAI), vol. 3229, pp. 44–56. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  20. 20.
    Lifschitz, V.: Answer set programming and plan generation. Journal of Artificial Intelligence 138(1-2), 39–54 (2002)zbMATHCrossRefMathSciNetGoogle Scholar
  21. 21.
    Sakama, C., Inoue, K.: Coordination Between Logical Agents. In: Leite, J.A., Torroni, P. (eds.) CLIMA 2004. LNCS (LNAI), vol. 3487, pp. 161–177. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  22. 22.
    Simons, P.: smodels homepage,
  23. 23.
    Soininen, T., Niemelä, I.: Developing a Declarative Rule Language for Applications in Product Configuration. In: Gupta, G. (ed.) PADL 1999. LNCS, vol. 1551, p. 305. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  24. 24.
    Stockmeyer, L., Meyer, A.: Word problems requiring exponential time. In: Proceedings of the 5th ACM Symposium on Theory of Computing (STOC 1973), pp. 1–9 (1973)Google Scholar
  25. 25.
    Van Nieuwenborgh, D., Heymans, S., Vermeir, D.: Cooperating answer set programming. Technical report. Vrije Universiteit Brussel, Dept. of Computer Science (2006),
  26. 26.
    Van Nieuwenborgh, D., Heymans, S., Vermeir, D.: On Programs with Linearly Ordered Multiple Preferences. In: Demoen, B., Lifschitz, V. (eds.) ICLP 2004. LNCS, vol. 3132, pp. 180–194. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  27. 27.
    Van Nieuwenborgh, D., Vermeir, D.: Ordered programs as abductive systems. In: Proceedings of the APPIA-GULP-PRODE Conference on Declarative Programming (AGP 2003), Regio di Calabria, Italy, pp. 374–385 (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Davy Van Nieuwenborgh
    • 1
  • Stijn Heymans
    • 2
  • Dirk Vermeir
    • 1
  1. 1.Dept. of Computer ScienceVrije Universiteit Brussel, VUBBrusselsBelgium
  2. 2.Digital Enterprise Research Institute (DERI)University of InnsbruckAustria

Personalised recommendations