Abstract
Answer Set Programming (ASP) is a rule-based language rooted in traditional Logic Programming, Databases, Knowledge Representation, and Nonmonotonic Reasoning. It offers a flexible language for declarative problem solving, with support of efficient general-purpose solvers and reasoners. The larger part of this article provides an introduction to ASP, with a historical perspective, a definition of the core language, a guideline to knowledge representation, and an overview of existing ASP solvers. One part focuses on one commonly used feature: aggregates and generalized atoms. The inclusion of aggregates in ASP (and Logic Programming at large) has long been motivated, however there are some issues with semantics to be addressed, in particular when aggregates occur in recursive definitions. Very similar considerations are needed when coupling ASP with other formalisms, which we collectively refer to as “generalized atoms”. An overview of these semantic challenges and proposals for addressing them is provided, along with an overview of complexity results and system support.
Parts of this work are based on [70].
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
- 2.
In positive programs negation as failure (\(\mathrm {not} \)) does not occur, while strong negation (\(\lnot \)) may be present.
- 3.
Actually, since the language does not contain function symbols and since rules are required to be safe, this extra constant is not needed. However, we have kept the classic definition in order to avoid confusion.
- 4.
A substitution here is a set of instructions for replacing variables by terms (here constants). An application of these replacements is denoted by postfixing the substitution to the structure, in which the replacements should be applied.
- 5.
In the example, we adopted the syntax of the DLV system, the same aggregate functions can be specified also by exploiting other ASP dialects.
- 6.
- 7.
The input is usually read from text files, but some systems also interface to relational databases for retrieving facts stored in relational tables.
References
Abiteboul, S., Hull, R., Vianu, V.: Foundations of Databases. Addison-Wesley, Boston (1995)
Aiello, L.C., Massacci, F.: Verifying security protocols as planning in logic programming. ACM Trans. Comput. Logic 2(4), 542–580 (2001)
Alviano, M., et al.: The fourth answer set programming competition: preliminary report. In: Cabalar, P., Son, T.C. (eds.) Logic Programming and Nonmonotonic Reasoning, 12th International Conference, LPNMR 2013, Corunna, Spain, 15–19 September 2013. Proceedings. Lecture Notes in Computer Science, vol. 8148, pp. 42–53. Springer (2013). https://doi.org/10.1007/978-3-642-40564-8_5
Alviano, M., et al.: The ASP system DLV2. In: Balduccini, M., Janhunen, T. (eds.) Logic Programming and Nonmonotonic Reasoning - 14th International Conference, LPNMR 2017, Espoo, Finland, July 3–6, 2017, Proceedings. Lecture Notes in Computer Science, vol. 10377, pp. 215–221. Springer (2017). https://doi.org/10.1007/978-3-319-61660-5_19
Alviano, M., Faber, W.: Dynamic magic sets and super-coherent answer set programs. AI Commun. Eur. J. Artif. Intell. 24(2), 125–145 (2011). https://doi.org/10.3233/AIC-2011-0492
Alviano, M., Faber, W.: The complexity boundary of answer set programming with generalized atoms under the FLP semantics. In: Cabalar, P., Tran, S.C. (eds.) Logic Programming and Nonmonotonic Reasoning – 12th International Conference (LPNMR 2013), Lecture Notes in AI (LNAI), vol. 8148, pp. 67–72. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-40564-8_7
Alviano, M., Faber, W.: Supportedly stable answer sets for logic programs with generalized atoms. In: Ten Cate, B., Mileo, A. (eds.) 9th International Conference on Web Reasoning and Rule Systems (RR 2015). Lecture Notes in Computer Science, vol. 9209, pp. 30–44. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-319-22002-4_4
Alviano, M., Faber, W.: Chain answer sets for logic programs with generalized atoms. In: Calimeri, F., Leone, N., Manna, M. (eds.) Proceedings of the 16th European Conference on Logics in Artificial Intelligence (JELIA 2019). Lecture Notes in AI (LNAI), vol. 11468, pp. 462–478. Springer, Heidelberg (2019). https://doi.org/10.1007/978-3-030-19570-0_30
Alviano, M., Faber, W., Gebser, M.: Rewriting recursive aggregates in answer set programming: back to monotonicity. In: Theory and Practice of Logic Programming, 31st International Conference on Logic Programming (ICLP 2015) Special Issue, vol. 15, no. 4–5, 5, pp. 59–573 (2015). https://doi.org/10.1017/S1471068415000228
Alviano, M., Faber, W., Greco, G., Leone, N.: Magic sets for disjunctive datalog programs. Artif. Intell. 187–187, 156–192 (2012). https://doi.org/10.1016/j.artint.2012.04.008, http://arxiv.org/abs/1204.6346
Alviano, M., Faber, W., Leone, N.: Disjunctive ASP with functions: decidable queries and effective computation. In: Theory and Practice of Logic Programming, 26th International Conference on Logic Programming (ICLP 2010) Special Issue, vol. 10, no. 4–6, pp. 497–512 (2010). https://doi.org/10.1017/S1471068410000244
Alviano, M., Faber, W., Leone, N., Manna, M.: Disjunctive datalog with existential quantifiers: Semantics, decidability, and complexity issues. Theory and Practice of Logic Programming, 28th International Conference on Logic Programming (ICLP 2012) Special Issue, vol. 12, no. 4–5, pp. 701–718 (2012). https://doi.org/10.1017/S1471068412000257
Apt, K.R., Blair, H.A., Walker, A.: Towards a Theory of Declarative Knowledge. In: Minker [132], pp. 89–148 (1988)
Arora, S., Barak, B.: Computational Complexity: A Modern Approach. Cambridge University Press, Cambridge (2009)
Baader, F., Calvanese, D., McGuinness, D.L., Nardi, D., Patel-Schneider, P.F. (eds.): The Description Logic Handbook: Theory, Implementation, and Applications. Cambridge University Press, Cambridge (2003)
Lierler, Y., Maratea, M.: Cmodels-2: SAT-based answer set solver enhanced to non-tight programs. In: Lifschitz, V., Niemela, I. (eds.) Logic Programming and Nonmonotonic Reasoning. LPNMR 2004. Lecture Notes in Computer Science, vol. 2923 (2003). Springer, Heidelberg. https://doi.org/10.1007/978-3-540-24609-1_32, http://www.cs.utexas.edu/users/tag/cmodels.html
Balduccini, M., Gelfond, M.: Logic programs with consistency-restoring rules. In: Doherty, J.P., McCarthy, M.W. (ed.) International Symposium on Logical Formalization of Commonsense Reasoning, AAAI 2003 Spring Symposium Series (2003). citeseer.ist.psu.edu/balduccini03logic.html
Baral, C.: Knowledge Representation, Reasoning and Declarative Problem Solving. Cambridge University Press, Cambridge (2003)
Baral, C., Uyan, C.: Declarative specification and solution of combinatorial auctions using logic programming. In: Eiter, T., Faber, W., Truszczyński, M. (eds.) Proceedings of the 6th International Conference on Logic Programming and Nonmonotonic Reasoning (LPNMR-01). Lecture Notes in AI (LNAI), vol. 2173, pp. 186–199. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45402-0_14
Baselice, S., Bonatti, P.A., Criscuolo, G.: On finitely recursive programs. Theory Pract. Logic Program. 9(2), 213–238 (2009)
Ben-Eliyahu, R., Dechter, R.: Propositional semantics for disjunctive logic programs. Ann. Math. Artif. Intell. 12, 53–87 (1994). https://doi.org/10.1007/BF01530761
Bertino, E., Mileo, A., Provetti, A.: User preferences vs minimality in PPDL. In: Buccafurri, F. (ed.) Proceedings of the Joint Conference on Declarative Programming APPIA-GULP-PRODE 2003, pp. 110–122, September 2003
Bidoit, N., Froidevaux, C.: Minimalism subsumes default logic and circumscription in stratified logic programming. In: Proceedings of the Symposium on Logic in Computer Science (LICS 1987), pp. 89–97. IEEE (1987)
Bonatti, P.A.: Reasoning with infinite stable models II: disjunctive programs. In: Proceedings of the 18th International Conference on Logic Programming (ICLP 2002). LNCS, vol. 2401, pp. 333–346. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45619-8_23
Bonatti, P.A.: Reasoning with infinite stable models. Artif. Intell. 156(1), 75–111 (2004)
Brain, M., De Vos, M.: Debugging logic programs under the answer set semantics. In: de Vos, M., Provetti, A. (eds.) Proceedings ASP05 - Answer Set Programming: Advances in Theory and Implementation, Bath, UK, July 2005
Brewka, G.: Logic programming with ordered disjunction. In: Proceedings of the 9th International Workshop on Non-Monotonic Reasoning (NMR 2002), pp. 67–76, April 2002
Brewka, G.: Answer sets: from constraint programming towards qualitative optimization. In: Lifschitz, V., Niemelä, I. (eds.) Proceedings of the 7th International Conference on Logic Programming and Non-Monotonic Reasoning (LPNMR-7). LNAI, vol. 2923, pp. 34–46. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24609-1_6
Brewka, G., Eiter, T.: Preferred answer sets for extended logic programs. Artif. Intell. 109(1–2), 297–356 (1999)
Brewka, G., Niemelä, I., Truszczyński, M.: Answer set optimization. In: Gottlob, G., Walsh, T. (eds.) IJCAI-03, Proceedings of the Eighteenth International Joint Conference on Artificial Intelligence, Acapulco, Mexico, pp. 867–872. Morgan Kaufmann (2003)
Buccafurri, F., Caminiti, G.: A Social Semantics for Multi-agent Systems. In: Baral, C., Greco, G., Leone, N., Terracina, G. (eds.) Logic Programming and Nonmonotonic Reasoning – 8th International Conference, LPNMR’05, Diamante, Italy. Lecture Notes in Computer Science, vol. 3662, pp. 317–329. Springer, Heidelberg (2005). https://doi.org/10.1007/11546207_25
Buccafurri, F., Leone, N., Rullo, P.: Enhancing disjunctive datalog by constraints. IEEE Trans. Knowl. Data Eng. 12(5), 845–860 (2000)
Cabalar, P.: Partial functions and equality in answer set programming. In: Proceedings of the 24th International Conference on Logic Programming (ICLP 2008). Lecture Notes in Computer Science, vol. 5366, pp. 392–406. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89982-2_36
Cadoli, M., Eiter, T., Gottlob, G.: Default logic as a query language. IEEE Trans. Knowl. Data Eng. 9(3), 448–463 (1997)
Calì, A., Gottlob, G., Kifer, M.: Taming the infinite chase: query answering under expressive relational constraints. In: Brewka, G., Lang, J. (eds.) Proceedings of the Eleventh International Conference on Principles of Knowledge Representation and Reasoning (KR 2008), pp. 70–80. AAAI Press (2008)
Calì, A., Gottlob, G., Lukasiewicz, T.: A general datalog-based framework for tractable query answering over ontologies. J. Web Semant. 14, 57–83 (2012)
Calì, A., Gottlob, G., Pieris, A.: Advanced processing for ontological queries. Proc. VLDB Endow. 3(1), 554–565 (2010)
Calì, A., Gottlob, G., Pieris, A.: Towards more expressive ontology languages: the query answering problem. Artif. Intell. 193, 87–128 (2012)
Calimeri, F., Cozza, S., Ianni, G., Leone, N.: Computable functions in ASP: theory and implementation. In: Proceedings of the 24th International Conference on Logic Programming (ICLP 2008). Lecture Notes in Computer Science, vol. 5366, pp. 407–424. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89982-2_37
Calimeri, F., Cozza, S., Ianni, G., Leone, N.: Magic sets for the bottom-up evaluation of finitely recursive programs. In: Erdem, E., Lin, F., Schaub, T. (eds.) Logic Programming and Nonmonotonic Reasoning – 10th International Conference (LPNMR 2009). Lecture Notes in Computer Science, vol. 5753, pp. 71–86. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04238-6_9
Calimeri, F., Dodaro, C., Fuscà, D., Perri, S., Zangari, J.: Efficiently coupling the I-DLV grounder with ASP solvers. Theory Pract. Log. Program. 20(2), 205–224 (2020). https://doi.org/10.1017/S1471068418000546
Calimeri, F., et al.: Asp-core-2 input language format. Theory Pract. Logic Program. 20(2), 294–309 (2020). https://doi.org/10.1017/S1471068419000450
Calimeri, F., Faber, W., Leone, N., Perri, S.: Declarative and computational properties of logic programs with aggregates. In: Nineteenth International Joint Conference on Artificial Intelligence (IJCAI 2005), pp. 406–411, August 2005
Calimeri F., Ianni G., Ielpa G., Pietramala A., Santoro M.C.: A system with template answer set programs. In: Alferes, J.J., Leite, J. (eds.) Logics in Artificial Intelligence. JELIA 2004. Lecture Notes in Computer Science, vol. 3229. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30227-8_59
Calimeri, F., Ianni, G., Ricca, F.: The third open answer set programming competition. Theory Pract. Logic Program. 14(1), 117–135 (2014). https://doi.org/10.1017/S1471068412000105
Cat, B.D., Bogaerts, B., Bruynooghe, M., Janssens, G., Denecker, M.: Predicate logic as a modeling language: the IDP system. In: Kifer, M., Liu, Y.A. (eds.) Declarative Logic Programming: Theory, Systems, and Applications, pp. 279–323. ACM/Morgan & Claypool (2018). https://doi.org/10.1145/3191315.3191321
Clark, K.L.: Negation as failure. In: Gallaire, H., Minker, J. (eds.) Logic and Data Bases, pp. 293–322. Plenum Press, New York (1978)
Colmerauer, A., Roussel, P.: The Birth of Prolog. ACM, New York (1996)
Costantini, S., Tocchio, A.: The DALI logic programming agent-oriented language. In: Alferes, J.J., Leite, J. (eds.) Proceedings of the 9th European Conference on Artificial Intelligence (JELIA 2004). Lecture Notes in AI (LNAI), vol. 3229, pp. 685–688. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30227-8_57
Cumbo, C., Faber, W., Greco, G., Leone, N.: Enhancing the magic-set method for disjunctive datalog programs. In: Proceedings of the the 20th International Conference on Logic Programming - ICLP 2004. Lecture Notes in Computer Science, vol. 3132, pp. 371–385. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-27775-0_26
Cumbo, C., Iiritano, S., Rullo, P.: Reasoning-based knowledge extraction for text classification. In: Suzuki, E., Arikawa, S. (eds.) DS 2004. LNCS (LNAI), vol. 3245, pp. 380–387. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30214-8_34
Curia, R., Ettorre, M., Gallucci, L., Iiritano, S., Rullo, P.: Textual document pre-processing and feature extraction in OLEX. In: Proceedings of Data Mining 2005, Skiathos, Greece (2005)
Dantsin, E., Eiter, T., Gottlob, G., Voronkov, A.: Complexity and expressive power of logic programming. ACM Comput. Surv. 33(3), 374–425 (2001)
Dao-Tran, M., Eiter, T., Fink, M., Weidinger, G., Weinzierl, A.: OMiGA: an open minded grounding on-the-fly answer set solver. In: del Cerro, L.F., Herzig, A., Mengin, J. (eds.) JELIA 2012. LNCS (LNAI), vol. 7519, pp. 480–483. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-33353-8_38
De Vos, M., Schaub, T. (eds.): SEA 2007: software engineering for answer set programming, vol. 281. CEUR (2007). http://CEUR-WS.org/Vol-281/
Delgrande, J.P., Schaub, T., Tompits, H.: A Framework for Compiling Preferences in Logic Programs. Theory Pract. Logic Program. 3(2), 129–187 (2003)
Dell’Armi, T., Faber, W., Ielpa, G., Leone, N., Pfeifer, G.: Aggregate functions in disjunctive logic programming: semantics, complexity, and implementation in DLV. In: Proceedings of the 18th International Joint Conference on Artificial Intelligence (IJCAI) 2003, pp. 847–852. Morgan Kaufmann Publishers, Acapulco (2003)
Dell’Armi, T., Faber, W., Ielpa, G., Leone, N., Pfeifer, G.: Aggregate functions in DLV. In: de Vos, M., Provetti, A. (eds.) Proceedings ASP03 - Answer Set Programming: Advances in Theory and Implementation, Messina, Italy, pp. 274–288 (2003). http://CEUR-WS.org/Vol-78/
Denecker, M., Pelov, N., Bruynooghe, M.: Ultimate well-founded and stable semantics for logic programs with aggregates. In: Codognet, P. (eds) Logic Programming. ICLP 2001. Lecture Notes in Computer Science, vol. 2237, pp. 212–226. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45635-X_22
Dimopoulos, Y., Kakas, A.C., Michael, L.: Reasoning about actions and change in answer set programming. In: Lifschitz, V., Niemelä, I. (eds.) LPNMR 2004. LNCS (LNAI), vol. 2923, pp. 61–73. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-24609-1_8
Dix, J., Gottlob, G., Marek, V.W.: Reducing disjunctive to non-disjunctive semantics by shift-operations. Fundam. Inform. 28, 87–100 (1996)
Drescher, C., Gebser, M., Grote, T., Kaufmann, B., König, A., Ostrowski, M., Schaub, T.: Conflict-driven disjunctive answer set solving. In: Brewka, G., Lang, J. (eds.) Proceedings of the Eleventh International Conference on Principles of Knowledge Representation and Reasoning (KR 2008), pp. 422–432. AAAI Press, Sydney (2008)
Eiter, T., Faber, W., Leone, N., Pfeifer, G.: Declarative problem-solving using the DLV system. In: Minker, J. (ed.) Logic-Based Artificial Intelligence, pp. 79–103. Kluwer Academic Publishers (2000)
Eiter, T., Faber, W., Leone, N., Pfeifer, G., Polleres, A.: A logic programming approach to knowledge-state planning: semantics and complexity. ACM Trans. Comput. Logic 5(2), 206–263 (2004)
Eiter, T., Ianni, G., Schindlauer, R., Tompits, H.: A uniform integration of higher-order reasoning and external evaluations in answer set programming. In: International Joint Conference on Artificial Intelligence (IJCAI) 2005, Edinburgh, UK, pp. 90–96, August 2005
Eiter, T., Lukasiewicz, T., Schindlauer, R., Tompits, H.: Combining answer set programming with description logics for the semantic web. In: Principles of Knowledge Representation and Reasoning: Proceedings of the Ninth International Conference (KR2004), Whistler, Canada, pp. 141–151: Extended report RR-1843-03-13, p. 2003. Institut für Informationssysteme, TU Wien (2004)
Eiter, T., Simkus, M.: Bidirectional answer set programs with function symbols. In: Boutilier, C. (ed.) Proceedings of the 21st International Joint Conference on Artificial Intelligence (IJCAI-09), Pasadena, CA, USA, pp. 765–771, July 2009
El-Khatib, O., Pontelli, E., Son, T.C.: Justification and debugging of answer set programs in ASP. In: Jeffery, C., Choi, J.D., Lencevicius, R. (eds.) Proceedings of the Sixth International Workshop on Automated Debugging, California, USA. ACM (2005)
Erdem, E., Lifschitz, V., Nakhleh, L., Ringe, D.: Reconstructing the evolutionary history of Indo-European languages using answer set programming. In: Dahl, V., Wadler, P. (eds.) Practical Aspects of Declarative Languages, 5th International Symposium (PADL 2003). Lecture Notes in Computer Science, vol. 2562, pp. 160–176. Springer, Heidelberg (2003). https://doi.org/10.1007/3-540-36388-2_12
Faber, W.: Answer set programming. In: Rudolph, S., Gottlob, G., Horrocks, I., van Harmelen, F. (eds.) Reasoning Web. Semantic Technologies for Intelligent Data Access - 9th International Summer School 2013, Mannheim, Germany, 30 July–2 August 2013, Proceedings, vol. 8067, pp. 162–193. Lecture Notes in Computer Science. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-39784-4_4
Faber, W., Greco, G., Leone, N.: Magic sets and their application to data integration. In: Eiter, T., Libkin, L. (eds.) ICDT 2005. LNCS, vol. 3363, pp. 306–320. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30570-5_21
Faber, W., Greco, G., Leone, N.: Magic sets and their application to data integration. J. Comput. Syst. Sci. 73(4), 584–609 (2007). https://doi.org/10.1016/j.jcss.2006.10.012
Faber, W., Leone, N.: On the complexity of answer set programming with aggregates. In: Baral, C., Brewka, G., Schlipf, J.S. (eds.) Logic Programming and Nonmonotonic Reasoning – 9th International Conference, LPNMR 2007. Lecture Notes in AI (LNAI), vol. 4483, pp. 97–109. Springer, Heidelberg (2007)
Faber, W., Leone, N., Pfeifer, G.: Representing school timetabling in a disjunctive logic programming language. In: Egly, U., Tompits, H. (eds.) Proceedings of the 13th Workshop on Logic Programming (WLP’98), Vienna, Austria, pp. 43–52, October 1998
Faber, W., Leone, N., Pfeifer, G.: Recursive aggregates in disjunctive logic programs: semantics and complexity. In: Alferes, J.J., Leite, J. (eds.) JELIA 2004. LNCS (LNAI), vol. 3229, pp. 200–212. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30227-8_19
Faber, W., Leone, N., Pfeifer, G.: Semantics and complexity of recursive aggregates in answer set programming. Artif. Intell. 175(1), 278–298 (2011). https://doi.org/10.1016/j.artint.2010.04.002. Special Issue: John McCarthy’s Legacy
Fagin, R., Kolaitis, P.G., Miller, R.J., Popa, L.: Data exchange: semantics and query answering. Theoret. Comput. Sci. 336(1), 89–124 (2005)
Falkner, A.A., Friedrich, G., Schekotihin, K., Taupe, R., Teppan, E.C.: Industrial applications of answer set programming. KI 32(2–3), 165–176 (2018). https://doi.org/10.1007/s13218-018-0548-6
Ferraris, P.: Answer sets for propositional theories. In: Baral, C., Greco, G., Leone, N., Terracina, G. (eds.) Logic Programming and Nonmonotonic Reasoning – 8th International Conference, LPNMR 2005, Diamante, Italy, September 2005, Proceedings. Lecture Notes in Computer Science, vol. 3662, pp. 119–131. Springer, Heidelberg (2005). https://doi.org/10.1007/11546207_10
Ferraris, P.: Logic programs with propositional connectives and aggregates. ACM Trans. Comput. Logic 12(4), 25 (2011). https://doi.org/10.1145/1970398.1970401
Ferraris, P., Lee, J., Lifschitz, V.: A new perspective on stable models. In: Twentieth International Joint Conference on Artificial Intelligence (IJCAI 2007), pp. 372–379, January 2007
Garro, A., Palopoli, L., Ricca, F.: Exploiting agents in e-learning and skills management context. AI Commun. Eur. J. Artif. Intell. 19(2), 137–154 (2006)
Gebser, M., Kaminski, R., Kaufmann, B., Schaub, T.: Clingo = ASP + control: Preliminary report. CoRR abs/1405.3694 (2014)
Gebser, M., Kaminski, R., Kaufmann, B., Schaub, T.: Multi-shot ASP solving with clingo. Theory Pract. Log. Program. 19(1), 27–82 (2019). https://doi.org/10.1017/S1471068418000054
Gebser, M., Kaufmann, B., Neumann, A., Schaub, T.: Conflict-driven answer set solving. In: Twentieth International Joint Conference on Artificial Intelligence (IJCAI-07), pp. 386–392. Morgan Kaufmann Publishers (2007)
Gebser, M., Schaub, T., Thiele, S.: GrinGo: a new grounder for answer set programming. In: Baral, C., Brewka, G., Schlipf, J. (eds.) LPNMR 2007. LNCS (LNAI), vol. 4483, pp. 266–271. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-72200-7_24
Gelfond, M.: On stratified autoepistemic theories. In: Proceedings of the Sixth National Conference on Artificial Intelligence (AAAI 1987), pp. 207–211 (1987)
Gelfond, M.: Representing knowledge in A-Prolog. In: Kakas, A.C., Sadri, F. (eds.) Computational Logic: Logic Programming and Beyond. LNCS (LNAI), vol. 2408, pp. 413–451. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45632-5_16
Gelfond, M., Leone, N.: Logic Programming and knowledge representation - the A-Prolog perspective. Artif. Intell. 138(1–2), 3–38 (2002)
Gelfond, M., Lifschitz, V.: The stable model semantics for logic programming. In: Logic Programming: Proceedings Fifth International Conference and Symposium, pp. 1070–1080. MIT Press, Cambridge (1988)
Gelfond, M., Lifschitz, V.: Classical negation in logic programs and disjunctive databases. New Gener. Comput. 9, 365–385 (1991). https://doi.org/10.1007/BF03037169
Gelfond, M., Zhang, Y.: Vicious circle principle, aggregates, and formation of sets in ASP based languages. Artif. Intell. 275, 28–77 (2019). https://doi.org/10.1016/j.artint.2019.04.004
Goldreich, O.: Computational Complexity: A Conceptual Perspective. Cambridge University Press, Cambridge (2008)
Gottlob, G., Manna, M., Morak, M., Pieris, A.: On the complexity of ontological reasoning under disjunctive existential rules. In: Rovan, B., Sassone, V., Widmayer, P. (eds.) Proceedings of the 37th International Symposium Mathematical Foundations of Computer Science (MFCS 2012). Lecture Notes in Computer Science, vol. 7464, pp. 1–18. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-32589-2_1
Greco, G., Greco, S., Zumpano, E.: A logical framework for querying and repairing inconsistent databases. IEEE Trans. Knowl. Data Eng. 15(6), 1389–1408 (2003)
Greco, G., Guzzo, A., Saccà, D.: A logic programming approach for planning workflows evolutions. In: Buccafurri, F. (ed.) Proceedings of the Joint Conference on Declarative Programming APPIA-GULP-PRODE 2003, pp. 75–85, September 2003
Greco, S.: Binding propagation techniques for the optimization of bound disjunctive queries. IEEE Trans. Knowl. Data Eng. 15(2), 368–385 (2003)
Hella, L., Libkin, L., Nurmonen, J., Wong, L.: Logics with aggregate operators. J. ACM 48(4), 880–907 (2001)
Heymans, S., Van Nieuwenborgh, D., Vermeir, D.: Semantic Web reasoning with conceptual logic programs. In: Antoniou, G., Boley, H. (eds.) RuleML 2004. LNCS, vol. 3323, pp. 113–127. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30504-0_9
Heyting, A.: Die formalen Regeln der intuitionistischen Logik. Sitzungsberichte der Preussischen Akademie der Wissenschaften, Physikalisch-Mathematische Klasse, pp. 42–56 (1930)
Hustadt, U., Motik, B., Sattler, U.: Reducing SHIQ-description logic to disjunctive datalog programs. In: Principles of Knowledge Representation and Reasoning: Proceedings of the Ninth International Conference (KR2004), Whistler, Canada, pp. 152–162 (2004)
Hustadt, U., Motik, B., Sattler, U.: Reasoning in description logics by a reduction to disjunctive datalog. J. Autom. Reason. 39(3), 351–384 (2007). https://doi.org/10.1007/s10817-007-9080-3
International Organization for Standardization: ISO/IEC 13211–1:1995: Information technology – Programming languages – Prolog – Part 1: General core. International Organization for Standardization, Geneva, Switzerland (1995)
Janhunen, T., Niemelä, I., Seipel, D., Simons, P., You, J.H.: Unfolding partiality and disjunctions in stable model semantics. Technical report, cs.AI/0303009. arXiv.org (2003)
Kakas, A.C., Kowalski, R.A., Toni, F.: Abductive logic programming. J. Logic Comput. 2(6), 719–770 (1992)
Kemp, D.B., Stuckey, P.J.: Semantics of logic programs with aggregates. In: Saraswat, V.A., Ueda, K. (eds.) Proceedings of the International Symposium on Logic Programming (ISLP 1991), pp. 387–401. MIT Press (1991)
Kowalski, R.A.: Predicate logic as programming language. In: IFIP Congress, pp. 569–574 (1974)
Kowalski, R.A.: Algorithm = Logic + Control. Commun. ACM 22(7), 424–436 (1979)
Krötzsch, M., Rudolph, S.: Extending decidable existential rules by joining acyclicity and guardedness. In: Walsh, T. (ed.) Proceedings of the 22nd International Joint Conference on Artificial Intelligence (IJCAI-11), pp. 963–968 (2011)
Lefèvre, C., Béatrix, C., Stéphan, I., Garcia, L.: ASPeRiX, a first-order forward chaining approach for answer set computing. Theory Pract. Log. Program. 17(3), 266–310 (2017). https://doi.org/10.1017/S1471068416000569
Lembo, D., Lenzerini, M., Rosati, R.: Integrating inconsistent and incomplete data sources. In: Proceedings of SEBD 2002, Portoferraio, Isola d’Elba, pp. 299–308 (2002)
Lembo, D., Lenzerini, M., Rosati, R.: Source inconsistency and incompleteness in data integration. In: Proceedings of the Knowledge Representation meets Databases International Workshop (KRDB-02). CEUR Electronic Workshop Proceedings, Toulouse, France (2002). http://sunsite.informatik.rwth-aachen.de/Publications/CEUR-WS/Vol-54/
Leone, N., et al.: The INFOMIX system for advanced integration of incomplete and inconsistent data. In: Proceedings of the 24th ACM SIGMOD International Conference on Management of Data (SIGMOD 2005), Baltimore, Maryland, USA, pp. 915–917. ACM Press (2005)
Leone, N., Manna, M., Terracina, G., Veltri, P.: Efficiently computable datalog\(^\exists \) programs. In: Brewka, G., Eiter, T., McIlraith, S. (eds.) Proceedings of the 13th International Conference on Principles of Knowledge Representation and Reasoning (KR 2012). AAAI Press (2012)
Leone, N., et al.: The DLV system for knowledge representation and reasoning. ACM Trans. Comput. Logic 7(3), 499–562 (2006)
Leone, N., Rullo, P., Scarcello, F.: Disjunctive stable models: unfounded sets, fixpoint semantics and computation. Inf. Comput. 135(2), 69–112 (1997)
Lierler, Y.: Disjunctive answer set programming via satisfiability. In: Baral, C., Greco, G., Leone, N., Terracina, G. (eds.) Logic Programming and Nonmonotonic Reasoning – 8th International Conference, LPNMR’05, Diamante, Italy, September 2005, Proceedings. Lecture Notes in Computer Science, vol. 3662, pp. 447–451. Springer, Heidelberg (2005). https://doi.org/10.1007/11546207_44
Lierler, Y.: Relating constraint answer set programming languages and algorithms. Artif. Intell. 207, 1–22 (2014). https://doi.org/10.1016/j.artint.2013.10.004
Lierler, Y., Lifschitz, V.: One more decidable class of finitely ground programs. In: Hill, P.M., Warren, D.S. (eds.) ICLP 2009. LNCS, vol. 5649, pp. 489–493. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-02846-5_40
Lifschitz, V.: Twelve definitions of a stable model. In: Garcia de la Banda, M., Pontelli, E. (eds.) ICLP 2008. LNCS, vol. 5366, pp. 37–51. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89982-2_8
Lifschitz, V.: Thirteen definitions of a stable model. In: Blass, A., Dershowitz, N., Reisig, W. (eds.) Fields of Logic and Computation, Essays Dedicated to Yuri Gurevich on the Occasion of His 70th Birthday, Lecture Notes in Computer Science, vol. 6300, pp. 488–503. Springer, Heidelberg (2010). https://doi.org/10.1007/978-3-642-15025-8_24
Lifschitz, V., Pearce, D., Valverde, A.: Strongly equivalent logic programs. ACM Trans. Comput. Logic 2(4), 526–541 (2001)
Lin, F., Wang, Y.: Answer set programming with functions. In: Proceedings of Eleventh International Conference on Principles of Knowledge Representation and Reasoning (KR2008), Sydney, Australia, pp. 454–465. AAAI Press (2008)
Lin, F., Zhao, Y.: ASSAT: computing answer sets of a logic program by SAT solvers. In: Proceedings of the Eighteenth National Conference on Artificial Intelligence (AAAI-2002), Edmonton, Alberta, Canada. AAAI Press/MIT Press (2002)
Marek, V.W., Truszczyński, M.: Nonmonotonic Logics - Context-Dependent Reasoning. Springer, Heidelberg (1993)
Mariën, M., Gilis, D., Denecker, M.: On the relation between ID-logic and answer set programming. In: Alferes, J.J., Leite, J. (eds.) JELIA 2004. LNCS (LNAI), vol. 3229, pp. 108–120. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-30227-8_12
Marriott, K., Stuckey, P.J.: Programming with Constraints: An Introduction. MIT Press, Cambridge (1998)
McCarthy, J.: Programs with common sense. In: Proceedings of the Teddington Conference on the Mechanization of Thought Processes, pp. 75–91. Her Majesty’s Stationery Office (1959)
McCarthy, J.: Elaboration Tolerance (1999). http://www-formal.stanford.edu/jmc/elaboration.html
McCarthy, J., Hayes, P.J.: Some philosophical problems from the standpoint of artificial intelligence. In: Meltzer, B., Michie, D. (eds.) Machine Intelligence, vol. 4, pp. 463–502. Edinburgh University Press (1969)
Minker, J.: On indefinite data bases and the closed world assumption. In: Loveland, D.W. (ed.) Proceedings \(6^{th}\) Conference on Automated Deduction (CADE ’82). Lecture Notes in Computer Science, vol. 138, pp. 292–308. Springer, New York (1982). https://doi.org/10.1007/BFb0000066
Minker, J. (ed.): Foundations of Deductive Databases and Logic Programming. Morgan Kaufmann Publishers Inc., Washington DC (1988)
Niemelä, I., Simons, P.: Smodels—an implementation of the stable model and well-founded semantics for normal logic programs. In: Dix, J., Furbach, U., Nerode, A. (eds.) LPNMR 1997. LNCS, vol. 1265, pp. 420–429. Springer, Heidelberg (1997). https://doi.org/10.1007/3-540-63255-7_32
Palù, A.D., Dovier, A., Pontelli, E., Rossi, G.: GASP: answer set programming with lazy grounding. Fundam. Inform. 96(3), 297–322 (2009). https://doi.org/10.3233/FI-2009-180
Papadimitriou, C.H.: Computational Complexity. Addison-Wesley, Boston (1994)
Pearce, D.: Equilibrium logic. Ann. Math. Artif. Intell. 47(1–2), 3–41 (2006). https://doi.org/10.1007/s10472-006-9028-z
Pearce, D., Sarsakov, V., Schaub, T., Tompits, H., Woltran, S.: A polynomial translation of logic programs with nested expressions into disjunctive logic programs: preliminary report. In: Proceedings of the 9th International Workshop on Non-Monotonic Reasoning (NMR 2002) (2002)
Pearce, D., Tompits, H., Woltran, S.: Encodings for equilibrium logic and logic programs with nested expressions. In: Brazdil, P., Jorge, A. (eds.) EPIA 2001. LNCS (LNAI), vol. 2258, pp. 306–320. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45329-6_31
Pearce, D., Valverde, A.: Quantified equilibrium logic and foundations for answer set programs. In: Garcia de la Banda, M., Pontelli, E. (eds.) ICLP 2008. LNCS, vol. 5366, pp. 546–560. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-89982-2_46
Pelov, N.: Semantics of logic programs with aggregates. Ph.D. thesis, Katholieke Universiteit Leuven, April 2004
Pelov, N., Denecker, M., Bruynooghe, M.: Well-founded and stable semantics of logic programs with aggregates. Theory Pract. Logic Program. 7(3), 301–353 (2007)
Perri, S., Scarcello, F., Leone, N.: Abductive logic programs with penalization: semantics, complexity and implementation. Theory Pract. Logic Program. 5(1–2), 123–159 (2005)
Pierre Bourhis, M.M., Pieris, A.: The impact of disjunction on ontological query answering under guarded-based existential rules. In: Proceedings of the 23rd International Joint Conference on Artificial Intelligence (IJCAI-13) (2013)
Przymusinski, T.C.: Stable semantics for disjunctive programs. New Gener. Comput. 9, 401–424 (1991). https://doi.org/10.1007/BF03037171
Radziszowski, S.P.: Small ramsey numbers. Electron. J. Comb. 1 (1994). Revision 9: 15 July 2002
Reiter, R.: On closed world data bases. In: Gallaire, H., Minker, J. (eds.) Logic and Data Bases, pp. 55–76. Plenum Press, New York (1978)
Ricca, F.: The DLV Java wrapper. In: de Vos, M., Provetti, A. (eds.) Proceedings ASP03 - Answer Set Programming: Advances in Theory and Implementation, pp. 305–316. Messina, Italy, September 2003. http://CEUR-WS.org/Vol-78/
Ricca, F., Leone, N.: Disjunctive logic programming with types and objects: the DLV\(^{+}\) system. J. Appl. Logics 5(3), 545–573 (2007)
Robinson, J.A.: A machine-oriented logic based on the resolution principle. J. ACM 12(1), 23–41 (1965)
Ruffolo, M., Leone, N., Manna, M., Saccà, D., Zavatto, A.: Exploiting ASP for semantic information extraction. In: de Vos, M., Provetti, A. (eds.) Proceedings ASP05 - Answer Set Programming: Advances in Theory and Implementation, Bath, UK, pp. 248–262, July 2005
Schaub, T., Wang, K.: A comparative study of logic programs with preference. In: Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence (IJCAI) 2001, pp. 597–602. Morgan Kaufmann Publishers, Seattle (2001)
Šimkus, M., Eiter, T.: \(\mathbb{FDNC}\): decidable non-monotonic disjunctive logic programs with function symbols. In: Dershowitz, N., Voronkov, A. (eds.) LPAR 2007. LNCS (LNAI), vol. 4790, pp. 514–530. Springer, Heidelberg (2007). https://doi.org/10.1007/978-3-540-75560-9_37
Simons, P.: Smodels, since 1996. http://www.tcs.hut.fi/Software/smodels/
Simons, P., Niemelä, I., Soininen, T.: Extending and implementing the stable model semantics. Artif. Intell. 138, 181–234 (2002)
Soininen, T., Niemelä, I.: Developing a declarative rule language for applications in product configuration. In: Gupta, G. (ed.) PADL 1999. LNCS, vol. 1551, pp. 305–319. Springer, Heidelberg (1998). https://doi.org/10.1007/3-540-49201-1_21
Son, T.C., Pontelli, E.: A constructive semantic characterization of aggregates in ASP. Theory Pract. Logic Program. 7, 355–375 (2007)
Syrjänen, T.: A rule-based formal model for software configuration. Technical report A55, Digital Systems Laboratory, Department of Computer Science, Helsinki University of Technology, Espoo, Finland (1999)
Syrjänen, T.: Omega-restricted logic programs. In: Eiter, T., Faber, W., Truszczyński, M. (eds.) LPNMR 2001. LNCS (LNAI), vol. 2173, pp. 267–280. Springer, Heidelberg (2001). https://doi.org/10.1007/3-540-45402-0_20
Syrjänen, T.: Lparse 1.0 User’s Manual (2002). http://www.tcs.hut.fi/Software/smodels/lparse.ps.gz
van Emden, M.H., Kowalski, R.A.: The semantics of predicate logic as a programming language. J. ACM 23(4), 733–742 (1976)
Van Gelder, A.: Negation as failure using tight derivations for general logic programs. In: Minker [132], pp. 1149–1176 (1989)
Van Gelder, A., Ross, K.A., Schlipf, J.S.: Unfounded sets and well-founded semantics for general logic programs. In: Proceedings of the Seventh Symposium on Principles of Database Systems (PODS 1988), pp. 221–230 (1988)
Van Gelder, A., Ross, K.A., Schlipf, J.S.: The well-founded semantics for general logic programs. J. ACM 38(3), 620–650 (1991)
Wang, K., Zhou, L.: Comparisons and computation of well-founded semantics for disjunctive logic programs. ACM Trans. Comput. Logic 6(2), 295–327 (2005)
Wang, K., Zhou, L., Lin, F.: Alternating fixpoint theory for logic programs with priority. In: Lloyd, J., et al. (eds.) CL 2000. LNCS (LNAI), vol. 1861, pp. 164–178. Springer, Heidelberg (2000). https://doi.org/10.1007/3-540-44957-4_11
Weinzierl, A.: Blending lazy-grounding and CDNL search for answer-set solving. In: Balduccini, M., Janhunen, T. (eds.) Logic Programming and Nonmonotonic Reasoning - 14th International Conference, LPNMR 2017, Espoo, Finland, 3–6 July 2017, Proceedings. Lecture Notes in Computer Science, vol. 10377, pp. 191–204. Springer, Heidelberg (2017). https://doi.org/10.1007/978-3-319-61660-5_17
Yahya, A.H., Henschen, L.J.: Deduction in non-horn databases. J. Autom. Reason. 1(2), 141–160 (1985). https://doi.org/10.1007/BF00244994
Zhao, Y.: ASSAT, since 2002. http://assat.cs.ust.hk/
Acknowledgements
The author thanks all his co-authors over the years, for the discussions and the work that laid the foundation to this overview; in particular Nicola Leone and Francesco Ricca, with whom I co-authored a description, on which the present work has been partially based. The author would also like to thank the ASP community at large, it is great to be part of such a stimulating and critical, yet amiable crowd.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Faber, W. (2020). An Introduction to Answer Set Programming and Some of Its Extensions. In: Manna, M., Pieris, A. (eds) Reasoning Web. Declarative Artificial Intelligence. Reasoning Web 2020. Lecture Notes in Computer Science(), vol 12258. Springer, Cham. https://doi.org/10.1007/978-3-030-60067-9_6
Download citation
DOI: https://doi.org/10.1007/978-3-030-60067-9_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-60066-2
Online ISBN: 978-3-030-60067-9
eBook Packages: Computer ScienceComputer Science (R0)