{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,9,26]],"date-time":"2026-09-26T19:34:20Z","timestamp":1790451260490,"version":"4.1.0"},"reference-count":63,"publisher":"Cambridge University Press (CUP)","issue":"2","license":[{"start":{"date-parts":[[2018,12,10]],"date-time":"2018-12-10T00:00:00Z","timestamp":1544400000000},"content-version":"unspecified","delay-in-days":0,"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":[[2020,3]]},"abstract":"<jats:p>Answer set programming (ASP) is a successful declarative formalism for knowledge representation and reasoning. The evaluation of ASP programs is nowadays based on the conflict-driven clause learning (CDCL) backtracking search algorithm. Recent work suggested that the performance of CDCL-based implementations can be considerably improved on specific benchmarks by extending their solving capabilities with custom heuristics and propagators. However, embedding such algorithms into existing systems requires expert knowledge of the internals of ASP implementations. The development of effective solver extensions can be made easier by providing suitable programming interfaces. In this paper, we present the interface for extending the CDCL-based ASP solver wasp. The interface is both <jats:italic>general<\/jats:italic>, that is, it can be used for providing either new branching heuristics or propagators, and <jats:italic>external<\/jats:italic>, that is, the implementation of new algorithms requires no internal modifications of wasp. Moreover, we review the applications of the interface witnessing it can be successfully used to extend wasp for solving effectively hard instances of both real-world and synthetic problems.<\/jats:p>","DOI":"10.1017\/s1471068418000558","type":"journal-article","created":{"date-parts":[[2018,12,10]],"date-time":"2018-12-10T05:29:39Z","timestamp":1544419779000},"page":"225-248","source":"Crossref","is-referenced-by-count":10,"title":["The External Interface for Extending WASP"],"prefix":"10.1017","volume":"20","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-5617-5286","authenticated-orcid":false,"given":"CARMINE","family":"DODARO","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8218-3178","authenticated-orcid":false,"given":"FRANCESCO","family":"RICCA","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"56","published-online":{"date-parts":[[2018,12,10]]},"reference":[{"key":"S1471068418000558_ref42","first-page":"4327","volume-title":"AAAI Conference on Artificial Intelligence","author":"Gebser","year":"2016"},{"key":"S1471068418000558_ref39","doi-asserted-by":"publisher","DOI":"10.1016\/j.artint.2012.04.001"},{"key":"S1471068418000558_ref37","first-page":"15","volume-title":"European Conference on Artificial Intelligence","volume":"178","author":"Gebser","year":"2008"},{"key":"S1471068418000558_ref31","doi-asserted-by":"publisher","DOI":"10.1093\/logcom\/ext065"},{"key":"S1471068418000558_ref48","doi-asserted-by":"publisher","DOI":"10.1609\/aimag.v37i3.2672"},{"key":"S1471068418000558_ref24","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-61660-5_27"},{"key":"S1471068418000558_ref22","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068416000284"},{"key":"S1471068418000558_ref27","doi-asserted-by":"publisher","DOI":"10.1609\/aimag.v37i3.2678"},{"key":"S1471068418000558_ref16","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-23264-5_13"},{"key":"S1471068418000558_ref14","doi-asserted-by":"publisher","DOI":"10.1007\/11562931_7"},{"key":"S1471068418000558_ref33","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-23264-5_31"},{"key":"S1471068418000558_ref21","first-page":"99","volume-title":"Italian Conference on Computational Logic","volume":"810","author":"Dodaro","year":"2011"},{"key":"S1471068418000558_ref13","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-11558-0_37"},{"key":"S1471068418000558_ref8","doi-asserted-by":"publisher","DOI":"10.3233\/AIC-2011-0493"},{"key":"S1471068418000558_ref11","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9780511543357"},{"key":"S1471068418000558_ref7","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068418000133"},{"key":"S1471068418000558_ref6","first-page":"468","volume-title":"AI*IA","volume":"10640","author":"Alviano","year":"2017"},{"key":"S1471068418000558_ref4","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-40564-8_6"},{"key":"S1471068418000558_ref41","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-23264-5_44"},{"key":"S1471068418000558_ref2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-61660-5_19"},{"key":"S1471068418000558_ref23","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-22002-4_7"},{"key":"S1471068418000558_ref1","doi-asserted-by":"publisher","DOI":"10.3233\/FI-2016-1396"},{"key":"S1471068418000558_ref15","first-page":"405","volume-title":"SAT","volume":"9340","author":"Biere","year":"2015"},{"key":"S1471068418000558_ref40","volume-title":"International Joint Conference on Artificial Intelligence","author":"Gebser","year":"2013"},{"key":"S1471068418000558_ref29","unstructured":"Friedrich, G. 2015. Industrial success stories of ASP and CP: What\u2019s still open? Joint invited talk at ICLP and CP 2015. http:\/\/booleconferences.ucc.ie\/iclp2015speakers."},{"key":"S1471068418000558_ref59","doi-asserted-by":"publisher","DOI":"10.1016\/S1574-6526(06)80005-2"},{"key":"S1471068418000558_ref9","first-page":"439","volume-title":"International Conference on Logic Programming and Nonmonotonic Reasoning","volume":"2173","author":"Balduccini","year":"2001"},{"key":"S1471068418000558_ref63","first-page":"279","volume-title":"IEEE\/ACM International Conference on Computer-Aided Design","author":"Zhang","year":"2001"},{"key":"S1471068418000558_ref55","doi-asserted-by":"crossref","first-page":"545","DOI":"10.1016\/j.datak.2010.01.005","article-title":"The consistency extractor system: Answer set programs for consistent query answering in databases","volume":"69","author":"Marileo","year":"2010","journal-title":"Data and Knowledge Engineering"},{"key":"S1471068418000558_ref17","doi-asserted-by":"publisher","DOI":"10.3233\/FI-2016-1398"},{"key":"S1471068418000558_ref25","first-page":"1","volume-title":"International RCRA Workshop on Experimental Evaluation of Algorithms for Solving Problems with Combinatorial Explosion","volume":"1745","author":"Dodaro","year":"2016"},{"key":"S1471068418000558_ref38","volume-title":"AAAI Conference on Artificial Intelligence","author":"Gebser","year":"2013"},{"key":"S1471068418000558_ref18","doi-asserted-by":"publisher","DOI":"10.1145\/2043174.2043195"},{"key":"S1471068418000558_ref36","doi-asserted-by":"publisher","DOI":"10.3233\/AIC-2011-0491"},{"key":"S1471068418000558_ref26","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-24605-3_37"},{"key":"S1471068418000558_ref53","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068415000320"},{"key":"S1471068418000558_ref30","first-page":"137","article-title":"Exploiting agents in e-learning and skills management context","volume":"19","author":"Garro","year":"2006","journal-title":"AI Communications"},{"key":"S1471068418000558_ref5","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-23264-5_5"},{"key":"S1471068418000558_ref49","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068415000265"},{"key":"S1471068418000558_ref43","doi-asserted-by":"publisher","DOI":"10.1613\/jair.5373"},{"key":"S1471068418000558_ref28","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068413000598"},{"key":"S1471068418000558_ref10","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068417000102"},{"key":"S1471068418000558_ref32","volume-title":"International Conference on Logic Programming (Technical Communications)","volume":"52","author":"Gebser","year":"2016"},{"key":"S1471068418000558_ref45","doi-asserted-by":"publisher","DOI":"10.1007\/BF03037169"},{"key":"S1471068418000558_ref52","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068411000640"},{"key":"S1471068418000558_ref46","doi-asserted-by":"publisher","DOI":"10.1609\/aimag.v37i3.2671"},{"key":"S1471068418000558_ref47","first-page":"978","volume-title":"AAAI Conference on Artificial Intelligence","author":"Janhunen","year":"2016"},{"key":"S1471068418000558_ref50","doi-asserted-by":"publisher","DOI":"10.1609\/aimag.v37i3.2675"},{"key":"S1471068418000558_ref56","first-page":"530","volume-title":"Design Automation Conference","author":"Moskewicz","year":"2001"},{"key":"S1471068418000558_ref58","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068412000142"},{"key":"S1471068418000558_ref54","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-33353-8_39"},{"key":"S1471068418000558_ref61","doi-asserted-by":"publisher","DOI":"10.1109\/12.769433"},{"key":"S1471068418000558_ref62","volume-title":"International Conference on Logic Programming (Technical Communications)","volume":"52","author":"Susman","year":"2016"},{"key":"S1471068418000558_ref19","doi-asserted-by":"publisher","DOI":"10.1017\/S1471068417000254"},{"key":"S1471068418000558_ref51","doi-asserted-by":"publisher","DOI":"10.1609\/aimag.v37i3.2670"},{"key":"S1471068418000558_ref3","first-page":"886","volume-title":"International Joint Conference on Artificial Intelligence","author":"Alviano","year":"2016"},{"key":"S1471068418000558_ref20","unstructured":"Dodaro, C. 2015. Computational Tasks in Answer Set Programming: Algorithms and Implementations. Ph.D. dissertation, University of Calabria."},{"key":"S1471068418000558_ref34","doi-asserted-by":"publisher","DOI":"10.2200\/S00457ED1V01Y201211AIM019"},{"key":"S1471068418000558_ref35","unstructured":"Gebser, M. , Kaminski, R. , Kaufmann, B. and Schaub, T. 2014. Clingo = ASP + control: Preliminary report. CoRR abs\/1405.3694."},{"key":"S1471068418000558_ref60","doi-asserted-by":"publisher","DOI":"10.3233\/FI-2016-1446"},{"key":"S1471068418000558_ref44","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-23264-5_32"},{"key":"S1471068418000558_ref12","first-page":"718","volume-title":"International Joint Conference on Artificial Intelligence","author":"Bartholomew","year":"2013"},{"key":"S1471068418000558_ref57","doi-asserted-by":"publisher","DOI":"10.1145\/1217856.1217859"}],"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\/S1471068418000558","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,2,12]],"date-time":"2020-02-12T06:45:01Z","timestamp":1581489901000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.cambridge.org\/core\/product\/identifier\/S1471068418000558\/type\/journal_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,12,10]]},"references-count":63,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2020,3]]}},"alternative-id":["S1471068418000558"],"URL":"https:\/\/doi.org\/10.1017\/s1471068418000558","relation":{},"ISSN":["1471-0684","1475-3081"],"issn-type":[{"value":"1471-0684","type":"print"},{"value":"1475-3081","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,12,10]]}}}