Published online by Cambridge University Press: 21 June 2006
We propose and study algorithms to compute minimal models, stable models and answer sets of $t$-CNF theories, and normal and disjunctive $t$-programs. We are especially interested in algorithms with non-trivial worst-case performance bounds. The bulk of the paper is concerned with the classes of 2- and 3-CNF theories, and normal and disjunctive 2- and 3-programs, for which we obtain significantly stronger results than those implied by our general considerations. We show that one can find all minimal models of 2-CNF theories and all answer sets of disjunctive 2-programs in time $O(m1\mbox{.}4422\mbox{..}^n)$. Our main results concern computing stable models of normal 3-programs, minimal models of 3-CNF theories and answer sets of disjunctive 3-programs. We design algorithms that run in time $O(m1\mbox{.}6701\mbox{..}^n)$, in the case of the first problem, and in time $O(mn^2 2\mbox{.}2782\mbox{..}^n)$, in the case of the latter two. All these bounds improve by exponential factors the best algorithms known previously. We also obtain closely related upper bounds on the number of minimal models, stable models and answer sets a $t$-CNF theory, a normal $t$-program or a disjunctive $t$-program may have.