{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,15]],"date-time":"2026-01-15T04:21:38Z","timestamp":1768450898482,"version":"3.49.0"},"reference-count":43,"publisher":"Cambridge University Press (CUP)","issue":"5-6","license":[{"start":{"date-parts":[[2019,9,20]],"date-time":"2019-09-20T00:00:00Z","timestamp":1568937600000},"content-version":"unspecified","delay-in-days":19,"URL":"https:\/\/www.cambridge.org\/core\/terms"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Theory and Practice of Logic Programming"],"published-print":{"date-parts":[[2019,9]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Answer Set Programming (ASP) is a well-known declarative formalism in logic programming. Efficient implementations made it possible to apply ASP in many scenarios, ranging from deductive databases applications to the solution of hard combinatorial problems. State-of-the-art ASP systems are based on the traditional ground&amp;solve approach and are general-purpose implementations, i.e., they are essentially built once for any kind of input program. In this paper, we propose an extended architecture for ASP systems, in which parts of the input program are compiled into an ad-hoc evaluation algorithm (i.e., we obtain a specific binary for a given program), and might not be subject to the grounding step. To this end, we identify a condition that allows the compilation of a sub-program, and present the related partial compilation technique. Importantly, we have implemented the new approach on top of a well-known ASP solver and conducted an experimental analysis on publicly-available benchmarks. Results show that our compilation-based approach improves on the state of the art in various scenarios, including cases in which the input program is stratified or the grounding blow-up makes the evaluation unpractical with traditional ASP systems.<\/jats:p>","DOI":"10.1017\/s1471068419000231","type":"journal-article","created":{"date-parts":[[2019,9,20]],"date-time":"2019-09-20T09:06:21Z","timestamp":1568970381000},"page":"857-873","source":"Crossref","is-referenced-by-count":9,"title":["Partial Compilation of ASP Programs"],"prefix":"10.1017","volume":"19","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-5164-9123","authenticated-orcid":false,"given":"BERNARDO","family":"CUTERI","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5617-5286","authenticated-orcid":false,"given":"CARMINE","family":"DODARO","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8218-3178","authenticated-orcid":false,"given":"FRANCESCO","family":"RICCA","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-1837-126X","authenticated-orcid":false,"given":"PETER","family":"SCH\u00dcLLER","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"56","published-online":{"date-parts":[[2019,9,20]]},"reference":[{"key":"S1471068419000231_ref13","first-page":"653","article-title":"Combining answer set programming and domain heuristics for solving hard industrial problems (application paper)","volume":"5","author":"Dodaro","year":"2016","journal-title":"TPLP 16"},{"key":"S1471068419000231_ref15","first-page":"418","article-title":"A model building framework for answer set programming with external computations","volume":"4","author":"Eiter","year":"2016","journal-title":"TPLP 16"},{"key":"S1471068419000231_ref18","first-page":"35","article-title":"Generating explanations for biomedical queries","volume":"1","author":"Erdem","year":"2015","journal-title":"TPLP 15"},{"key":"S1471068419000231_ref16","first-page":"40","volume-title":"Reasoning Web","volume":"5689","author":"Eiter","year":"2009"},{"key":"S1471068419000231_ref26","doi-asserted-by":"crossref","first-page":"365","DOI":"10.1007\/BF03037169","article-title":"Classical negation in logic programs and disjunctive databases","volume":"9","author":"Gelfond","year":"1991","journal-title":"New Generation Comput"},{"key":"S1471068419000231_ref20","volume-title":"Database systems - the complete book (2. ed.)","author":"Garcia-Molina","year":"2009"},{"key":"S1471068419000231_ref43","unstructured":"Weinzierl, A. 2017. Blending Lazy-Grounding and CDNL Search for Answer-Set Solving. In LPNMR. LNCS, vol. 10377. 191\u2013204."},{"key":"S1471068419000231_ref1","unstructured":"Alviano, M. , Dodaro, C. , Leone, N. , and Ricca, F. 2015. Advances in WASP. In LPNMR. LNCS, vol. 9345. Springer, 40\u201354."},{"key":"S1471068419000231_ref42","unstructured":"Ullman, J. D. 1988. Principles of Database and Knowledge-Base Systems, Volume I. Principles of computer science series, vol. 14. Computer Science Press."},{"key":"S1471068419000231_ref39","doi-asserted-by":"crossref","unstructured":"Nogueira, M. , Balduccini, M. , Gelfond, M. , Watson, R. , and Barry, M. 2001. An A Prolog decision support system for the space shuttle. In Answer Set Programming.","DOI":"10.1007\/3-540-45241-9_12"},{"key":"S1471068419000231_ref34","doi-asserted-by":"crossref","first-page":"45","DOI":"10.1609\/aimag.v37i3.2675","article-title":"Systems, engineering environments, and competitions","volume":"37","author":"Lierler","year":"2016","journal-title":"AI Magazine"},{"key":"S1471068419000231_ref32","first-page":"312","volume-title":"LPNMR","volume":"11481","author":"Leone","year":"2019"},{"key":"S1471068419000231_ref24","unstructured":"Gebser, M. , Leone, N. , Maratea, M. , Perri, S. , Ricca, F. , and Schaub, T. 2018. Evaluation techniques and systems for answer set programming: a survey. In IJCAI. ijcai.org, 5450\u20135456."},{"key":"S1471068419000231_ref22","first-page":"368","volume-title":"LPNMR","volume":"9345","author":"Gebser","year":"2015"},{"key":"S1471068419000231_ref2","unstructured":"Amendola, G. , Greco, G. , Leone, N. , and Veltri, P. 2016. Modeling and reasoning about NTU games via answer set programming. In IJCAI. IJCAI\/AAAI Press, 38\u201345."},{"key":"S1471068419000231_ref4","first-page":"462","article-title":"Constraint answer set solver EZCSP and why integration schemas matter","volume":"4","author":"Balduccini","year":"2017","journal-title":"TPLP 17"},{"key":"S1471068419000231_ref5","first-page":"529","volume-title":"JELIA","volume":"8761","author":"Bartholomew","year":"2014"},{"key":"S1471068419000231_ref9","doi-asserted-by":"crossref","unstructured":"Ceri, S. , Gottlob, G. , and Tanca, L. 1990. Logic Programming and Databases. Surveys in computer science. Springer.","DOI":"10.1007\/978-3-642-83952-8"},{"key":"S1471068419000231_ref40","first-page":"485","article-title":"ASP modulo CSP: the clingcon system","volume":"4","author":"Ostrowski","year":"2012","journal-title":"TPLP 12"},{"key":"S1471068419000231_ref10","first-page":"780","article-title":"Constraints, lazy constraints, or propagators in ASP solving: An empirical analysis","volume":"17","author":"Cuteri","year":"2017","journal-title":"TPLP"},{"key":"S1471068419000231_ref11","first-page":"526","volume-title":"JELIA","volume":"11468","author":"Cuteri","year":"2019"},{"key":"S1471068419000231_ref12","doi-asserted-by":"crossref","first-page":"297","DOI":"10.3233\/FI-2009-180","article-title":"GASP: answer set programming with lazy grounding","volume":"96","author":"Dal Pal\u00f9","year":"2009","journal-title":"Fundam. Inform"},{"key":"S1471068419000231_ref14","doi-asserted-by":"crossref","unstructured":"Dodaro, C. and Ricca, F. 2018. The external interface for extending WASP. TPLP in press CORR abs\/1811.01692.","DOI":"10.1017\/S1471068418000558"},{"key":"S1471068419000231_ref17","doi-asserted-by":"crossref","first-page":"53","DOI":"10.1609\/aimag.v37i3.2678","article-title":"Applications of answer set programming","volume":"3","author":"Erdem","year":"2016","journal-title":"AI Magazine 37"},{"key":"S1471068419000231_ref21","unstructured":"Gebser, M. , Kaminski, R. , Kaufmann, B. , Ostrowski, M. , Schaub, T. , and Wanko, P. 2016. Theory solving made easy with clingo 5. In ICLP TCs. OASICS, vol. 52. 2:1\u20132:15."},{"key":"S1471068419000231_ref23","unstructured":"Gebser, M. , Kaminski, R. , K\u00f6nig, A. , and Schaub, T. 2011. Advances in gringo series 3. In LPNMR. LNCS, vol. 6645. Springer, 345\u2013351."},{"key":"S1471068419000231_ref25","unstructured":"Gebser, M. , Ryabokon, A. , and Schenner, G. 2015. Combining heuristics for configuration problems using answer set programming. In LPNMR. Springer, 384\u2013397."},{"key":"S1471068419000231_ref27","doi-asserted-by":"crossref","first-page":"671","DOI":"10.1093\/logcom\/exn043","article-title":"Efficiently querying RDF(S) ontologies with answer set programming","volume":"4","author":"Ianni","year":"2009","journal-title":"J. Log. Comput. 19"},{"key":"S1471068419000231_ref29","first-page":"86","volume-title":"SCM","volume":"2649","author":"Kojo","year":"2003"},{"key":"S1471068419000231_ref31","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068416000569"},{"key":"S1471068419000231_ref33","doi-asserted-by":"crossref","first-page":"499","DOI":"10.1145\/1149114.1149117","article-title":"The DLV system for knowledge representation and reasoning","volume":"3","author":"Leone","year":"2006","journal-title":"ACM TOCL 7"},{"key":"S1471068419000231_ref38","volume-title":"Advanced Compiler Design and Implementation","author":"Muchnick","year":"1997"},{"key":"S1471068419000231_ref41","doi-asserted-by":"publisher","DOI":"10.1016\/S0004-3702(02)00187-X"},{"key":"S1471068419000231_ref30","first-page":"604","article-title":"Optimizing phylogenetic supertrees using answer set programming","volume":"4","author":"Koponen","year":"2015","journal-title":"TPLP 15"},{"key":"S1471068419000231_ref3","doi-asserted-by":"crossref","unstructured":"Aschinger, M. , Drescher, C. , Friedrich, G. , Gottlob, G. , Jeavons, P. , Ryabokon, A. , and Thorstensen, E. 2011. Optimization methods for the partner units problem. In CPAIOR. 4\u201319.","DOI":"10.1007\/978-3-642-21311-3_4"},{"key":"S1471068419000231_ref28","unstructured":"Janhunen, T. , Oikarinen, E. , Tompits, H. , and Woltran, S. 2009. Modularity Aspects of Disjunctive Stable Models. Journal Of Artificial Intelligence Research 35, 813\u2013857."},{"key":"S1471068419000231_ref36","first-page":"696","article-title":"Taming primary key violations to query large inconsistent data via ASP","volume":"4","author":"Manna","year":"2015","journal-title":"TPLP 15"},{"key":"S1471068419000231_ref35","unstructured":"Lifschitz, V. and Turner, H. 1994. Splitting a logic program. In ICLP. MIT Press, 23\u201337."},{"key":"S1471068419000231_ref8","doi-asserted-by":"crossref","first-page":"5","DOI":"10.3233\/IA-170104","article-title":"I-DLV: the new intelligent grounder of DLV","volume":"11","author":"Calimeri","year":"2017","journal-title":"Intelligenza Artificiale"},{"key":"S1471068419000231_ref7","doi-asserted-by":"crossref","first-page":"92","DOI":"10.1145\/2043174.2043195","article-title":"Answer set programming at a glance","volume":"12","author":"Brewka","year":"2011","journal-title":"Commun. ACM 54"},{"key":"S1471068419000231_ref37","first-page":"545","article-title":"The consistency extractor system: Answer set programs for consistent query answering in databases","volume":"6","author":"Marileo","year":"2010","journal-title":"Data Knowl. Eng. 69"},{"key":"S1471068419000231_ref6","doi-asserted-by":"crossref","unstructured":"Bogaerts, B. and Weinzierl, A. 2018. Exploiting justifications for lazy grounding of answer set programs. In IJCAI. 1737\u20131745.","DOI":"10.24963\/ijcai.2018\/240"},{"key":"S1471068419000231_ref19","doi-asserted-by":"crossref","first-page":"247","DOI":"10.1007\/978-3-642-30743-0_17","volume-title":"Correct Reasoning","volume":"7265","author":"Faber","year":"2012"}],"container-title":["Theory and Practice of Logic Programming"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.cambridge.org\/core\/services\/aop-cambridge-core\/content\/view\/S1471068419000231","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,12,7]],"date-time":"2019-12-07T12:22:21Z","timestamp":1575721341000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S1471068419000231\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,9]]},"references-count":43,"journal-issue":{"issue":"5-6","published-print":{"date-parts":[[2019,9]]}},"alternative-id":["S1471068419000231"],"URL":"https:\/\/doi.org\/10.1017\/s1471068419000231","relation":{},"ISSN":["1471-0684","1475-3081"],"issn-type":[{"value":"1471-0684","type":"print"},{"value":"1475-3081","type":"electronic"}],"subject":[],"published":{"date-parts":[[2019,9]]}}}