Answering the "why" in Answer Set Programming - A Survey of Explanation
  Approaches
  Artificial Intelligence (AI) approaches to problem-solving and
decision-making are becoming more and more complex, leading to a decrease in
the understandability of solutions. The European Union's new General Data
Protection Regulation tries to tackle this problem by stipulating a "right to
explanation" for decisions made by AI systems. One of the AI paradigms that may
be affected by this new regulation is Answer Set Programming (ASP). Thanks to
the emergence of efficient solvers, ASP has recently been used for
problem-solving in a variety of domains, including medicine, cryptography, and
biology. To ensure the successful application of ASP as a problem-solving
paradigm in the future, explanations of ASP solutions are crucial. In this
survey, we give an overview of approaches that provide an answer to the
question of why an answer set is a solution to a given problem, notably
off-line justifications, causal graphs, argumentative explanations and why-not
provenance, and highlight their similarities and differences. Moreover, we
review methods explaining why a set of literals is not an answer set or why no
solution exists at all.
