Table of Contents
Fetching ...

An XAI View on Explainable ASP: Methods, Systems, and Perspectives

Thomas Eiter, Tobias Geibinger, Zeynep G. Saribatur

TL;DR

This paper addresses explainability for Answer Set Programming (ASP) from an XAI perspective, mapping user questions to a diverse set of explanation techniques and tools. It distinguishes local explanations for computed answer sets from global explanations of general program behavior, and surveys methods such as justifications, ABA-based approaches, causal and support graphs, why-not provenance, and counterfactual/contrastive explanations. The study identifies gaps—in language support (disjunction, aggregates, weak constraints), scalability, and handling complex, multi-answer-set questions—and proposes directions like solver integration and interactive, user-centric explanations. Its structured synthesis provides researchers and practitioners with a taxonomy of ASP explanations and practical guidance for selecting or combining methods to address real-world user questions and decision-support needs.

Abstract

Answer Set Programming (ASP) is a popular declarative reasoning and problem solving approach in symbolic AI. Its rule-based formalism makes it inherently attractive for explainable and interpretive reasoning, which is gaining importance with the surge of Explainable AI (XAI). A number of explanation approaches and tools for ASP have been developed, which often tackle specific explanatory settings and may not cover all scenarios that ASP users encounter. In this survey, we provide, guided by an XAI perspective, an overview of types of ASP explanations in connection with user questions for explanation, and describe how their coverage by current theory and tools. Furthermore, we pinpoint gaps in existing ASP explanations approaches and identify research directions for future work.

An XAI View on Explainable ASP: Methods, Systems, and Perspectives

TL;DR

This paper addresses explainability for Answer Set Programming (ASP) from an XAI perspective, mapping user questions to a diverse set of explanation techniques and tools. It distinguishes local explanations for computed answer sets from global explanations of general program behavior, and surveys methods such as justifications, ABA-based approaches, causal and support graphs, why-not provenance, and counterfactual/contrastive explanations. The study identifies gaps—in language support (disjunction, aggregates, weak constraints), scalability, and handling complex, multi-answer-set questions—and proposes directions like solver integration and interactive, user-centric explanations. Its structured synthesis provides researchers and practitioners with a taxonomy of ASP explanations and practical guidance for selecting or combining methods to address real-world user questions and decision-support needs.

Abstract

Answer Set Programming (ASP) is a popular declarative reasoning and problem solving approach in symbolic AI. Its rule-based formalism makes it inherently attractive for explainable and interpretive reasoning, which is gaining importance with the surge of Explainable AI (XAI). A number of explanation approaches and tools for ASP have been developed, which often tackle specific explanatory settings and may not cover all scenarios that ASP users encounter. In this survey, we provide, guided by an XAI perspective, an overview of types of ASP explanations in connection with user questions for explanation, and describe how their coverage by current theory and tools. Furthermore, we pinpoint gaps in existing ASP explanations approaches and identify research directions for future work.
Paper Structure (32 sections, 8 equations, 1 figure, 2 tables)

This paper contains 32 sections, 8 equations, 1 figure, 2 tables.

Figures (1)

  • Figure 1: Explanation for of $\mathit{sold}(d)$ in $I \in \mathit{AS}(P_1)$

Theorems & Definitions (9)

  • Example 1
  • Example 2: Ex. \ref{['ex:initial']} cont'd
  • Example 3: Ex. \ref{['ex:initial']} cont'd
  • Example 4: Ex. \ref{['ex:initial']} cont'd
  • Example 5: Example \ref{['ex:agg']} cont'd
  • Example 6: Ex. \ref{['ex:initial']} cont'd
  • Example 7: Ex. \ref{['ex:initial']} cont'd
  • Example 8: Ex. \ref{['ex:initial']} cont'd
  • Example 9: Ex. \ref{['ex:initial']} cont'd