  We argue that turning a logic program into a set of completed definitions can
be sometimes thought of as the "reverse engineering" process of generating a
set of conditions that could serve as a specification for it. Accordingly, it
may be useful to define completion for a large class of ASP programs and to
automate the process of generating and simplifying completion formulas.
Examining the output produced by this kind of software may help programmers to
see more clearly what their program does, and to what degree its behavior
conforms with their expectations. As a step toward this goal, we propose here a
definition of program completion for a large class of programs in the input
language of the ASP grounder GRINGO, and study its properties. This note is
under consideration for publication in Theory and Practice of Logic
Programming.
