A tutorial on hybrid answer set solving with clingo. (English) Zbl 1491.68217

Ianni, Giovambattista (ed.) et al., Reasoning web. Semantic interoperability on the web. 13th international summer school 2017, London, UK, July 7–11, 2017. Tutorial lectures. Cham: Springer. Lect. Notes Comput. Sci. 10370, 167-203 (2017).
Summary: Answer Set Programming (ASP) has become an established paradigm for Knowledge Representation and Reasoning, in particular, when it comes to solving knowledge-intense combinatorial (optimization) problems. ASP’s unique pairing of a simple yet rich modeling language with highly performant solving technology has led to an increasing interest in ASP in academia as well as industry. To further boost this development and make ASP fit for real world applications it is indispensable to equip it with means for an easy integration into software environments and for adding complementary forms of reasoning.
In this tutorial, we describe how both issues are addressed in the ASP system clingo. At first, we outline features of clingo’s application programming interface (API) that are essential for multi-shot ASP solving, a technique for dealing with continuously changing logic programs. This is illustrated by realizing two exemplary reasoning modes, namely branch-and-bound-based optimization and incremental ASP solving. We then switch to the design of the API for integrating complementary forms of reasoning and detail this in an extensive case study dealing with the integration of difference constraints. We show how the syntax of these constraints is added to the modeling language and seamlessly merged into the grounding process. We then develop in detail a corresponding theory propagator for difference constraints and present how it is integrated into clingo’s solving process.
For the entire collection see [Zbl 1398.68031].


68T30 Knowledge representation
68N17 Logic programming


Full Text: DOI