Splitting Answer Set Programs with respect to Intensionality Statements (Extended Version)
This work addresses a specific bottleneck in answer set programming for practitioners, offering an incremental improvement over prior methods.
The authors tackled the problem of splitting logic programs for improved solving performance and correctness proofs by generalizing splitting conditions to include predicate arguments and context, enabling splitting of previously unsplittable practical programs.
Splitting a logic program allows us to reduce the task of computing its stable models to similar tasks for its subprograms. This can be used to increase solving performance and prove program correctness. We generalize the conditions under which this technique is applicable, by considering not only dependencies between predicates but also their arguments and context. This allows splitting programs commonly used in practice to which previous results were not applicable.