 Michael Gelfond and Yulia Kahl (Gelfond and Kahl 2014, 131–151) discuss how to develop algorithms for efficiently computing answer sets for logic programming. They describe inference engines that can act as answer-set programming solvers.