  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).
