# selp: A Single-Shot Epistemic Logic Program Solver

arXiv: https://arxiv.org/abs/2001.01089 · HTML: https://mlsanity.com/paper/2001.01089/

## Key facts

- Cited by 7 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 4 Jan 2020.

## Built on by (most cited first, 7 of 7)

- [Treewidth-aware Reductions of Normal ASP to SAT -- Is Normal ASP Harder than SAT after All?](https://mlsanity.com/paper/2210.03553/) (2022)
- [Thirty years of Epistemic Specifications](https://mlsanity.com/paper/2108.07669/) (2021)
- [Utilizing Treewidth for Quantitative Reasoning on Epistemic Logic Programs](https://mlsanity.com/paper/2108.03022/) (2021)
- [Epistemic Logic Programs: Non-Ground and Counting Complexity](https://mlsanity.com/paper/2503.04731/) (2025)
- [Characterizing Structural Hardness of Logic Programs: What makes Cycles and Reachability Hard for Treewidth?](https://mlsanity.com/paper/2301.07472/) (2023)
- [Extended Version of: On the Structural Hardness of Answer Set Programming: Can Structure Efficiently Confine the Power of Disjunctions?](https://mlsanity.com/paper/2402.03539/) (2024)
- [Solving Epistemic Logic Programs using Generate-and-Test with Propagation](https://mlsanity.com/paper/2410.22130/) (2024)

## Abstract (arXiv)

Epistemic Logic Programs (ELPs) are an extension of Answer Set Programming (ASP) with epistemic operators that allow for a form of meta-reasoning, that is, reasoning over multiple possible worlds. Existing ELP solving approaches generally rely on making multiple calls to an ASP solver in order to evaluate the ELP. However, in this paper, we show that there also exists a direct translation from ELPs into non-ground ASP with bounded arity. The resulting ASP program can thus be solved in a single shot. We then implement this encoding method, using recently proposed techniques to handle large, non-ground ASP rules, into the prototype ELP solving system "selp", which we present in this paper. This solver exhibits competitive performance on a set of ELP benchmark instances. Under consideration in Theory and Practice of Logic Programming (TPLP).
