{'fraction_non_alphanumeric': 0.051442361656751596, 'fraction_numerical': 0.010360309799079582, 'mean_word_length': 3.7875221666935355, 'pattern_counts': {'":': 1, '<': 6, '<?xml version=': 0, '>': 2, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 17, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
First-Order Stable Model Semantics and First-Order Loop Formulas

Lin and Zhaos theorem on loop formulas states that in the propositional case the stable model semantics of a logic program can be completely characterized by propositional loop formulas, but this result does not fully carry over to the first-order case. We investigate the precise relationship between the first-order stable model semantics and first-order loop formulas, and study conditions under which the former can be represented by the latter. In order to facilitate the comparison, we extend the definition of a first-order loop formula which was limited to a nondisjunctive program, to a disjunctive program and to an arbitrary first-order theory. Based on the studied relationship we extend the syntax of a logic program with explicit quantifiers, which allows us to do reasoning involving non-Herbrand stable models using first-order reasoners. Such programs can be viewed as a special class of first-order theories under the stable model semantics, which yields more succinct loop formulas than the general language due to their restricted syntax.


Introduction
According to the theorem on loop formulas (Lin & Zhao, 2004), the stable models of a logic program (Gelfond & Lifschitz, 1988) can be characterized as the models of the logic program that satisfy all its loop formulas. This idea has turned out to be widely applicable in relating the stable model semantics to propositional logic, and has resulted in an efficient method for computing answer sets using SAT solvers. Since the original invention of loop formulas for nondisjunctive logic programs by Lin and Zhao (2004), the theorem has been extended to more general classes of logic programs, such as disjunctive programs (Lee & Lifschitz, 2003), infinite programs and programs containing classical negation (Lee, 2005;Lee, Lierler, Lifschitz, & Yang, 2010), arbitrary propositional formulas under the stable model semantics (Ferraris, Lee, & Lifschitz, 2006), and programs containing aggregates (Liu & Truszczynski, 2006;You & Liu, 2008). The theorem has also been applied to other nonmonotonic formalisms, such as nonmonotonic causal theories (Lee, 2004) and McCarthy's circumscription (Lee & Lin, 2006). The notion of a loop was further refined as an "elementary loop" (Gebser & Schaub, 2005;Gebser, Lee, & Lierler, 2006. However, all this work is restricted to the propositional case. Variables contained in a program are first eliminated by grounding-the process which replaces every variable with every object constant-and then loop formulas are obtained from the ground program. As a result, loop formulas were defined as formulas in propositional logic.
In order to facilitate the comparison, we extend the definition of a first-order loop formula which was limited to nondisjunctive programs, to disjunctive programs and to arbitrary first-order theories. Also we present a reformulation of SM [F ] in the style of loop formulas, which includes the characterization of a loop by a syntactic formula. From this formulation, we derive several conditions, under which a first-order theory under the stable model semantics can be equivalently rewritten as first-order loop formulas.
Based on the relationship between the first-order stable model semantics and first-order loop formulas, we extend the syntax of logic programs with explicit quantifiers, which may be useful in overcoming some limitations of traditional answer set programs in reasoning about non-Herbrand models. We define the semantics of such extended programs by identifying them as a special class of first-order theories under the stable model semantics. Such programs inherit from the general language the ability to handle nonmonotonic reasoning under the stable model semantics even in the absence of the unique name and the domain closure assumptions that are built into the grounding-based answer set semantics. On the other hand, the restricted syntax of an extended program leads to more succinct loop formulas. The following program Π 1 is a simple insurance policy example represented in this syntax.
The second and the third rules express that Married (x) and HasWife(x) are synonymous to each other when x is a Man. The last rule states that x is eligible for some discount plan (with the name unknown) if x is married and has no record of accident. The quantifier in the first rule can be dropped without affecting the meaning, but the other quantifiers cannot. We will say that a program Π entails a query F (under the stable model semantics) if every stable model of Π satisfies F . For example, • Π 1 conjoined with Π 2 = {Man(John)} entails each of ¬∃x Married (x) and ¬∃xy Discount(x, y).
The nonmonotonic reasoning of this kind requires non-Herbrand models since the names (or identifiers) of discount plans, spouses and accident records may be unknown. However, the traditional answer set semantics is limited to Herbrand models due to the reference to grounding. By turning the program into first-order loop formulas we can automate the example reasoning using a first-order theorem prover.
The paper is organized as follows. The next section reviews the first-order stable model semantics by Ferraris et al. (2007Ferraris et al. ( , 2011. Section 3 reviews the theorem on first-order loop formulas by Chen et al. (2006) and extends it to disjunctive programs and to arbitrary first-order sentences, limiting attention to Herbrand stable models. Section 4 extends these results to allow non-Herbrand stable models as well (possibly allowing functions) under a certain semantic condition, and compare the first-order stable model semantics with loop formulas by reformulating the former in terms of the latter. In Section 5, we present a series of syntactic conditions that imply the semantic condition in Section 4. Section 6 provides an extension of logic programs that contain explicit quantifiers and shows how query answering for such extended programs can sometimes be reduced to entailment checking in first-order logic via loop formulas. In Section 7, the results are further extended to distinguish between intensional and non-intensional predicates. Related work is described in Section 8, and long proofs are given in Appendix A.
This article is an extended version of a conference paper by Lee and Meng (2008).

Review of the First-Order Stable Model Semantics
This review follows a journal paper by Ferraris et al. (2011) that extends a conference paper by the same authors (Ferraris et al., 2007) by distinguishing between intensional and non-intensional predicates.
A formula is defined the same as in first-order logic. A signature consists of function constants and predicate constants. Function constants of arity 0 are called object constants. We assume the following set of primitive propositional connectives and quantifiers: ⊥ (falsity), ∧, ∨, →, ∀, ∃ .
¬F is an abbreviation of F → ⊥, symbol stands for ⊥ → ⊥, and F ↔ G stands for (F → G) ∧ (G → F ). We distinguish between atoms and atomic formulas as follows: an atom of a signature σ is an n-ary predicate constant followed by a list of n terms that can be formed from function constants in σ (including object constants) and object variables; atomic formulas of σ are atoms of σ, equalities between terms of σ, and the 0-place connective ⊥.
The stable models of F relative to a list of predicates p = (p 1 , . . . , p n ) are defined via the stable model operator with the intensional predicates p, denoted by SM[F ; p]. 2 Let u be a list of distinct predicate variables u 1 , . . . , u n of the same length as p. By u = p we denote the conjunction of the formulas ∀x(u i (x) ↔ p i (x)), where x is a list of distinct object variables of the same length as the arity of p i , for all i = 1, . . . , n. By u ≤ p we denote the conjunction of the formulas ∀x(u i (x) → p i (x)) for all i = 1, . . . , n, and u < p stands for (u ≤ p) ∧ ¬(u = p). For any first-order sentence F , the expression SM[F ; p] stands for the second-order sentence F ∧ ¬∃u((u < p) ∧ F * (u)), where F * (u) is defined recursively: • p i (t) * = u i (t) for any list t of terms; • F * = F for any atomic formula F (including ⊥ and equality) that does not contain members of p; • (F ∧ G) * = F * ∧ G * ; • (F ∨ G) * = F * ∨ G * ; • (F → G) * = (F * → G * ) ∧ (F → G); • (∀xF ) * = ∀xF * ; • (∃xF ) * = ∃xF * .
(There is no clause for negation here, because we treat ¬F as shorthand for F → ⊥.) A model of a sentence F (in the sense of first-order logic) is called p-stable if it satisfies SM[F ; p]. We will often simply write SM[F ] instead of SM[F ; p] when p is the list of all predicate constants occurring in F , and call a model of SM[F ] simply a stable model of F . We distinguish between the terms "stable models" and "answer sets" as follows. 3 By σ(F ) we denote the signature consisting of the function and predicate constants occurring in F .
If F contains at least one object constant, an Herbrand interpretation 4 of σ(F ) that satisfies SM [F ] is called an answer set of F . The answer sets of a logic program Π are defined as the answer sets of the FOL-representation of Π (i.e., the conjunction of the universal closures of implications corresponding to the rules).
Example 1 For program Π that contains three rules and SM[F ] is p(a) ∧ q(b) ∧ ∀x((p(x) ∧ ¬q(x)) → r(x)) ∧¬∃uvw (((u, v, w) which is equivalent to the first-order sentence (See Example 3 in the work of Ferraris et al., 2007). The stable models of F are any firstorder models of (3). The only answer set of F is the Herbrand model {p(a), q(b), r(a)}.

First-Order Loop Formulas and Herbrand Models
We review the definition of a first-order loop formula for a nondisjunctive program given by Chen et al. (2006) and extend it to a disjunctive program and to an arbitrary first-order sentence. Chen et al. (2006) We call a formula negative if every occurrence of every predicate constant in it belongs to the antecedent of an implication. For instance, any formula of the form ¬F is negative because this expression is shorthand for F → ⊥. An equality t 1 = t 2 is also negative because it contains no predicate constants. A nondisjunctive program is a finite set of rules of the form

Review of First-Order Loop Formulas Defined by
where A is an atom, B is a set of atoms, and N is a negative formula. The rules may contain function constants of positive arity. 5 We will say that a nondisjunctive program is in normal form if, for all rules (4) in it, A is of the form p(x) where x is a list of distinct variables. It is clear that every program can be turned into normal form using equality in the body. For instance, p(a, b) ← q(a) can be rewritten as p(x, y) ← x = a, y = b, q(a).
Let Π be a nondisjunctive program and let Norm(Π) be a normal form of Π. By σ(Π) we denote the signature consisting of function and predicate constants occurring in Π. Given a finite set Y of atoms, we assume that Norm(Π) does not contain variables in Y , by renaming the variables in Norm(Π). The (first-order) external support formula of Y for Π, denoted by ES Π (Y ), is the disjunction of for all rules (4) in Norm(Π), 6 where θ is a substitution that maps variables in A to terms occurring in Y , and z is the list of all variables that occur in (The expression Y in the antecedent stands for the conjunction of all elements of Y .) When Π is a propositional program, LF Π (Y ) is equivalent to a conjunctive loop formula as defined by Ferraris et al. (2006). The definition of a first-order dependency graph and the definition of a first-order loop are as follows. We say that an atom p(t) depends on an atom q(t ) in a rule (4) if p(t) is A and q(t ) is in B. The (first-order) dependency graph of Π is an infinite directed graph (V, E) such that • V is the set of atoms of signature σ(Π); 7 depends on q(t ) in a rule of Π and θ is a substitution that maps variables in t and t to terms (including variables) of σ(Π).
A nonempty subset L of V is called a (first-order) loop of Π if the subgraph of the first-order dependency graph of Π induced by L is strongly connected. Chen et al. (2006) does not allow function constants of positive arity. 6. For any lists of terms t = (t1, . . . , tn) and t = (t 1 , . . . , t n ) of the same length, t = t stands for (t1 = t 1 ) ∧ · · · ∧ (tn = t n ). 7. Note that V is infinite since infinitely many object variables can be used to form atoms.

The original definition by
Example 2 Let Π be the following program: The following sets of atoms are first-order loops (among many others): Example 3 Let Π be the one-rule program p(x) ← p(y). (8) The following is a reformulation of Theorem 1 from the work of Chen et al. (2006).
Theorem 1 Let Π be a nondisjunctive program that contains at least one object constant but no function constants of positive arity, and let I be an Herbrand interpretation of σ(Π) that satisfies Π. 8 The following conditions are equivalent to each other: (a) I is a stable model of Π; (b) for every nonempty finite set Y of atoms of σ(Π), I satisfies LF Π (Y ); 9 (c) for every finite first-order loop Y of Π, I satisfies LF Π (Y ).
The sets of first-order loop formulas considered in conditions (b) and (c) above have obvious redundancies. For instance, the loop formula of {p(x)} is equivalent to the loop formula of {p(y)}; the loop formula of {p(x), p(y)} entails the loop formula of {p(z)}. Following the definition by Chen et al. (2006), given two sets of atoms Y 1 and Y 2 , we say that Y 1 subsumes Y 2 if there is a substitution θ that maps variables in Y 1 to terms so that Proposition 1 (Chen et al., 2006, Proposition 7) For any nondisjunctive program Π and any loops Y 1 and Therefore in condition (c) from Theorem 1, it is sufficient to consider a set Γ of loops such that, for every loop L of Π, there is a loop L in Γ that subsumes L. Chen et al. (2006) called such Γ a complete set of loops. In Example 2, set {Y 1 , Y 2 , Y 3 , Y 4 } is a finite complete set of loops of program (7). Program (8) in Example 3 has no finite complete set of loops.
8. We say that I satisfies Π if I satisfies the FOL-representation of Π. 9. Note that Y may contain variables.

Extension to Disjunctive Programs
A disjunctive program is a finite set of rules of the form where A and B are sets of atoms, and N is a negative formula. Similar to a nondisjunctive program, we say that a disjunctive program is in normal form if, for all rules (10) in it, all atoms in A are of the form p(x) where x is a list of distinct variables. Let Π be a disjunctive program and let Norm(Π) be a normal form of Π. Given a finite set Y of atoms, we first rename variables in Norm(Π) so that no variables in Norm(Π) occur in Y . The (first-order) external support formula of Y for Π, denoted by ES Π (Y ), is the disjunction of for all rules (10) in Norm(Π), where θ is a substitution that maps variables in A to terms occurring in Y or to themselves, and z is the list of all variables that occur in Clearly, (11) is equivalent to (5) when Π is nondisjunctive. When Π and Y are propositional, LF Π (Y ) is equivalent to the conjunctive loop formula for a disjunctive program as defined by Ferraris et al. (2006).
Example 4 Let Π be the program Similar to the nondisjunctive case, we say that p(t) depends on q(t ) in Π if there is a rule (10) in Π such that p(t) is in A and q(t ) is in B. The definitions of a first-order dependency graph and a first-order loop are extended to disjunctive programs in a straightforward way. Using these extended notions, the following theorem extends Theorem 1 to a disjunctive program. It is also a generalization of the main theorem by Ferraris et al. (2006) which was restricted to a propositional disjunctive program.
Theorem 1 d Let Π be a disjunctive program that contains at least one object constant but no function constants of positive arity, and let I be an Herbrand interpretation of σ(Π) that satisfies Π. The following conditions are equivalent to each other: (a) I is a stable model of Π; (b) for every nonempty finite set Y of atoms of σ(Π), I satisfies LF Π (Y ); (c) for every finite first-order loop Y of Π, I satisfies LF Π (Y ).

Extension to Arbitrary Sentences
In this section we extend the definition of a first-order loop formula to an arbitrary firstorder sentence.
As with a propositional loop formula defined for an arbitrary propositional theory (Ferraris et al., 2006), it is convenient to introduce a formula whose negation is close to ES . We define formula NES F (Y ) ("Negation of (First-order) External Support Formula"), where F is a first-order formula and Y is a finite set of atoms, as follows. As before we assume that no variables in Y occur in F , by renaming variables.
Note that the definition of NES looks similar to the definition of F * given in Section 2. When F and Y are propositional, LF F (Y ) is equivalent to a conjunctive loop formula for a propositional formula that is defined by Ferraris et al. (2006). The following lemma tells us that the definition of a loop formula in this section generalizes the definition of a loop formula for a disjunctive program in the previous section.
Lemma 1 Let Π be a disjunctive program in normal form, F an FOL-representation of Π, and Y a finite set of atoms. Formula NES F (Y ) is equivalent to ¬ES Π (Y ) under the assumption F .
In order to extend the first-order dependency graph to an arbitrary formula, we introduce a few notions. We say that an occurrence of a subformula G in a formula F is positive if the number of implications in F containing that occurrence in the antecedent is even; it is strictly positive if that number is 0. A rule of a first-order formula F is an implication that occurs strictly positively in F . We will say that a formula is rectified if it has no variables that are both bound and free, and if all quantifiers in the formula refer to different variables. Any formula can be easily rewritten into a rectified formula by renaming bound variables.
We say that an atom p(t) depends on an atom q(t ) in an implication G → H if • p(t) has a strictly positive occurrence in H, and • q(t ) has a positive occurrence in G that does not belong to any negative subformula of G. 10 The definition of a first-order dependency graph is extended to formulas as follows. The (first-order) dependency graph of a rectified formula F is the infinite directed graph (V, E) such that • V is the set of atoms of signature σ(F ); depends on q(t ) in a rule of F and θ is a substitution that maps variables in t and t to terms of σ(F ).
Note that the rectified formula assumption is required in order to distinguish between dependency graphs of formulas such as ∀x(p(x) → q(x)) and ∀x p(x) → ∀x q(x).
Once the definition of a dependency graph is given, a loop of a first-order formula is defined in the same way as with a disjunctive program. Theorem 1 can be extended to first-order sentences using these extended notions.
Theorem 1 f Let F be a rectified sentence that contains at least one object constant but no function constants of positive arity, and let I be an Herbrand interpretation of σ(F ) that satisfies F . The following conditions are equivalent to each other: (c) for every finite first-order loop Y of F , I satisfies LF F (Y ).
Example 2 (continued) Consider the FOL-representation F of the program in Example 2, for which {Y 1 , Y 2 , Y 3 , Y 4 } is a complete set of loops. Under the assumption F , Proposition 1 can be straightforwardly extended to arbitrary sentences even without restricting the attention to loops.
Proposition 1 f For any sentence F and any nonempty finite sets of atoms Y 1 and where z is the set of all variables in Y 1 . If Y 1 subsumes Y 2 , by definition, there is a substitution θ from variables in Y 1 to terms in Y 2 such that Y 1 θ = Y 2 . It is clear that (13) entails ∀z where z is the set of all variables in Y 1 θ. (14) is exactly LF F (Y 2 ).
Theorem 2 from the work of Ferraris et al. (2006) is a special case of Theorem 1 f when F is restricted to a propositional formula.
Corollary 1 (Ferraris et al., 2006, Thm. 2) For any propositional formula F , the following formulas are equivalent to each other under the assumption F .

Comparing First-Order Stable Model Semantics and First-Order Loop Formulas
The theorems in the previous section were restricted to Herbrand stable models. This section extends the results to allow non-Herbrand stable models as well, and compare the idea of loop formulas with SM by reformulating the latter in the style of loop formulas.

Loop Formulas Relative to an Interpretation
Recall that Theorem 1 and its extensions do not allow function constants of positive arity and are limited to Herbrand models of the particular signature obtained from the given theory. Indeed, the statements become wrong if these conditions are dropped.
Example 5 The following program contains a unary function constant f .
The loops of this program are all singleton sets of atoms, and their loop formulas are satisfied by the Herbrand model {p(a), p(f (a)), p(f (f (a))), . . . } of the program, but this model is not stable.
Example 3 (continued) The mismatch can happen even in the absence of function constants of positive arity. Consider the program in Example 3 and an interpretation I such that the universe is the set of all integers, and p I contains all integers. Interpretation I satisfies all first-order loop formulas (9), but it is not a stable model.
These examples suggest that the mismatch between the first-order stable model semantics and the first-order loop formulas is related to the presence of an infinite path in the dependency graph that visits infinitely many vertices. In the following we will make this idea more precise, and extend Theorem 1 f to allow non-Herbrand interpretations under a certain condition.
First, we define a dependency graph relative to an interpretation. Let F be a rectified formula whose signature is σ and let I be an interpretation of σ. For each element ξ of the universe |I| of I, we introduce a new symbol ξ , called an object name. By σ I we denote the signature obtained from σ by adding all object names ξ as additional object constants. We will identify an interpretation I of signature σ with its extension to σ I defined by I(ξ ) = ξ (For details, see the work of Lifschitz, Morgenstern, & Plaisted, 2008).
The dependency graph of F w.r.t. I is the directed graph (V, E) where • V is the set of all atoms of the form p i (ξ ) where p i belongs to σ(F ) and ξ is a list of object names for |I|, and • (p i (ξ ), p j (η )) is in E if there are atoms p i (t), p j (t ) such that p i (t) depends on p j (t ) in a rule of F and there is a substitution θ that maps variables in t and t to object names such that (tθ) I = ξ and (t θ) I = η.
We call a nonempty subset L of V a loop of F w.r.t. I if the subgraph of the dependency graph of F w.r.t. I that is induced by L is strongly connected. We say that F is bounded w.r.t. I if every infinite path in the dependency graph of F w.r.t. I whose vertices are satisfied by I visits only finitely many vertices. If F is bounded w.r.t. I, then, clearly, every loop L of F w.r.t. I such that I |= L is finite. The definition is extended to a non-rectified formula by first rewriting it as a rectified formula. It also applies to the program syntax by referring to its FOL-representation.
Theorem 2 Let F be a rectified sentence of a signature σ (possibly containing function constants of positive arity), and let I be an interpretation of σ that satisfies F . If F is bounded w.r.t. I, then the following conditions are equivalent to each other: (b) for every nonempty finite set Y of atoms formed from predicate constants in σ(F ) and object names for |I|, I satisfies LF F (Y ); (c) for every finite loop Y of F w.r.t. I, I satisfies LF F (Y ).
The condition that F is bounded w.r.t. I is sufficient for ensuring the equivalence among (a), (b), and (c), but it is not a necessary condition. For instance, consider F to be ∀x p(x) ∧ ∀xy(p(x) → p(y)) and I to be a model of F whose universe is infinite. Formula F is not bounded w.r.t. I, but I satisfies every loop formula, as well as SM [F ].
When I is an Herbrand model of σ(F ), the dependency graph of F w.r.t. I is isomorphic to the subgraph of the first-order dependency graph of F that is induced by vertices containing ground atoms. A set of ground atoms of σ(F ) is a loop of F iff it is a loop of F w.r.t. I. Hence Theorem 2 is essentially a generalization of Theorem 1 f .
Note that the programs considered in Examples 3 and 5 are not bounded w.r.t. the interpretations considered there. Clearly, if the universe of I is finite, then F is bounded w.r.t. I. This fact leads to the following corollary.
Corollary 2 For any rectified sentence F and any model I of F whose universe is finite, conditions (a), (b), and (c) of Theorem 2 are equivalent to each other.
In view of Proposition 1 f and Corollary 2, if the size of the universe is known to be a finite number n, it is sufficient to consider at most 2 |p| − 1 loop formulas, where p is the set of all predicate constants occurring in the sentence. Each loop formula is to check the external support of p∈K {p(x 1 ), . . . , p(x n r )} for each K where • K is a nonempty subset of p; • r is the arity of p and each x i is a list of variables of the length r such that all variables in x 1 , . . . , x n r are pairwise distinct.
For instance, consider program (8). If the size of the universe is known to be 3, it is sufficient to consider only one loop formula (9) where k = 3. Theorem 1 f essentially follows from Corollary 2 as the Herbrand universe of σ(F ) is finite when F contains no function constants of positive arity.
Another corollary to Theorem 2 is acquired when F has only "trivial" loops. We say that a formula F is atomic-tight w.r.t. I if every path in the dependency graph of F w.r.t. I whose vertices are satisfied by I is finite. Clearly, this is a special case of boundedness condition, and every loop L of an atomic-tight formula F w.r.t. I such that I |= L is a singleton. The following is a corollary to Theorem 2, which tells us the condition under which stable models can be characterized by loop formulas of singleton loops only. By SLF[F ] ("loop formulas of singletons") we denote , and x is a list of distinct object variables whose length is the same as the arity of p}.
Corollary 3 Let F be a rectified sentence (possibly containing function constants of positive arity), and let I be a model of In the propositional case, the relationship between the loop formulas of singletons and the completion is studied by Lee (2005). Below we describe their relationship in the first-order case. A sentence F is in Clark normal form (Ferraris et al., 2011) if it is a conjunction of formulas of the form one for each predicate constant p occurring in F , where x is a list of distinct variables, and G has no free variables other than x. The completion of a sentence F in Clark normal form, denoted by Comp[F ], is obtained from F by replacing each conjunctive term (16) with Any nondisjunctive program can be turned into Clark normal form (Ferraris et al., 2011, Section 6.1).
Corollary 4 Let F be the FOL-representation of a nondisjunctive program Π, and let F be the Clark normal form of F as obtained by the process described in the work of Ferraris et al. (2011, Section 6 It is sufficient to show that, for each predicate constant p occurring in F , under the assumption that F is atomic-tight w.r.t. I, iff where z is the list of all free variables in p(x) ← (x = t ), B, N that are not in x.
Note that (17) is equivalent to saying that From the assumption that F is atomic-tight w.r.t. I, it follows that, for any rule p(t ) ← B, N in Π and any atom of p(t) in B, I |= ∀y(t = t ), where y is the list of all variables in t and t (otherwise we find a singleton loop with a self-cycle, which contradicts that F is atomic tight w.r.t. I). Consequently, (19) is equivalent to (18).
For example, let F be the FOL-representation of the program . The additional conjunctive term x = a can be dropped when we consider any model I of F , for which a I = b I . Corollary 4 is an enhancement of Theorem 11 from the work of Ferraris et al. (2011), which states the equivalence between SM[F ] and Comp[F ] for any tight sentence F in Clark normal form. (Tight sentences are defined in a similar way, but in terms of a predicate dependency graph, whose vertices are predicate constants instead of atoms.) Every tight sentence is atomic-tight w.r.t. any model of the sentence. On the other hand, program (20) is atomic-tight w.r.t. any model of the program, but is not tight.
Theorem 2 tells us that one of the limitations of first-order loop formulas is that, even if infinitely many first-order loop formulas are considered, they cannot ensure the external support of a certain infinite set that forms an infinite path in the dependency graph of F w.r.t. I. In the next section, by reformulating SM[F ], we show that the definition of SM[F ] essentially encompasses loop formulas, ensuring the external support of any sets of atoms, including those "difficult" infinite sets.

A Reformulation of SM
As before, let F be a first-order formula of a signature σ, let p = (p 1 , . . . , p n ) be the list of all predicate constants occurring in F , and let u and v be lists of predicate variables of the same length as p. We define NSES F (u) ("Negation of Second-Order External Support Formula") recursively as follows.
Lemma 2 Let F be a rectified sentence of a signature σ, I an interpretation of σ, p the list of predicate constants occurring in F , q a list of predicate names 11 of the same length as p and Y a set of atoms formed from predicate constants from σ(F ) and object names such that where ξ is a list of object names. If Y is finite, then Proof. By induction on F . We only list the case when F is an atom. The other cases are straightforward. Let F be an atom p i (ξ ).
SM [F ] can be written in terms of NSES as follows. By Nonempty(u) we denote the formula where each x i is a list of distinct variables whose length is the same as the arity of p i .
Now we represent the notion of a loop by a second-order formula. Given a rectified formula F , by E F (v, u) we denote 11. Like object names, for every n > 0, each subset of |I| n has a name, which is an n-ary predicate constant not from the underlying signature.
where z is the list of all object variables in t and t . By Loop F (u) we denote the second-order formula Formula (22) represents the concept of a loop without referring to the notion of a dependency graph explicitly. This is based on the following observation. Consider a finite propositional program Π. A nonempty set U of atoms that occur in Π is a loop of Π iff, for every nonempty proper subset V of U , there is an edge from an atom in V to an atom in U \ V in the dependency graph of Π (Gebser et al., 2006). Recall the definition of a dependency graph relative to an interpretation. Let F be a rectified sentence of a signature σ, and let I be an interpretation of σ. The following proposition describes the relationship between formula (22) and a loop of F w.r.t. I.
Proposition 3 Let q be a list of predicate names corresponding to p, and let Y be a set of atoms in the dependency graph of F w.r.t. I such that One might expect that, similar to the equivalence between conditions (a) and (c) from Theorem 2, formula SM[F ] is equivalent to the following formula: However, the equivalence does not hold in general, as the following example illustrates.
Example 6 Consider the FOL-representation F of the following program and an interpretation I whose universe is the set of all nonnegative integers such that Formula F is not bounded w.r.t. I since the dependency graph of F w.r.t. I contains an infinite path such as The interpretation I satisfies every loop formula of every finite loop of F w.r.t. I, but it is not a stable model.
In the example, what distinguishes the set from a loop is that, for every loop contained in (25), there is an outgoing edge in the dependency graph. This is an instance of what we call "unbounded set." Given a dependency graph of F w.r.t. I, we say that a nonempty set Y of vertices is unbounded w.r.t. I if, for every subset Z of Y that is a loop, there is an edge from a vertex in Z to a vertex in Y \ Z.
The following proposition tells us how an unbounded set can be characterized by a second-order formula.
Proposition 4 Let q be a list of predicate names corresponding to p, and let Y be a set of atoms in the dependency graph of F w.r.t. I such that where ξ is a list of object names. Then In order to check the stability of a model, we need to check the external support of every loop and every unbounded set. An extended loop of F w.r.t. I is a loop or an unbounded set of F w.r.t. I. We define Ext-Loop F (u) as From Propositions 3 and 4, it follows that (23), the formula is equivalent to SM[F ], as the following theorem states.
Theorem 3 For any rectified sentence F , the following sentences are equivalent to each other: In the following example we use the following fact to simplify the formulas.

SM[F ] is equivalent to
is equivalent to 3. Formula in Theorem 3 (c): Similar to (27) The proof of Theorem 2 follows from Theorem 3 using the following lemma.
Lemma 3 Let F be a rectified sentence of a signature σ (possibly containing function constants of positive arity), and let I be an interpretation of σ that satisfies F . If F is bounded w.r.t. I,

Representing First-Order Stable Model Semantics by First-Order Loop Formulas
We noted in the previous section that if a sentence is bounded w.r.t. a model, then loop formulas can be used to check the stability of the model. In this section, we provide a few syntactic counterparts of the boundedness condition.

Bounded Formulas
We say that a rectified formula F is bounded if every infinite path in the first-order dependency graph of F visits only finitely many vertices. If F is bounded, then, clearly, every loop of F is finite. Again, the definition is extended to a non-rectified formula by first rewriting it as a rectified formula. It also applies to a program by referring to its FOL-representation. One might wonder if the syntactic notion of boundedness ensures the semantic notion of boundedness: that is, if a formula is bounded, then it is bounded w.r.t. any interpretation. However, the following example tells us that this is not the case in general.
Example 7 Consider the FOL-representation F of the following program and an interpretation I whose universe |I| is the set of all nonnegative integers, a I = b I = 0, p I = {0} and q I = |I|. Formula (28) is bounded according to the above definition, but not bounded w.r.t. I: the dependency graph of F w.r.t. I contains an infinite path such as

Bounded Formulas and Clark's Equational Theory
On the other hand, such a relationship holds if the interpretation satisfies Clark's equational theory (1978). Clark's equational theory of a signature σ, denoted by CET σ , is the union of the universal closures of the following formulas for all pairs of distinct function constants f , g, for all function constants f of arity > 0, and where t is any term which contains the variable x.
Proposition 6 If a rectified formula F of a signature σ is bounded, then F is bounded w.r.t. any interpretation of σ that satisfies CET σ .
The following lemma relates loops and loop formulas of different notions of dependency graphs.
Proposition 7 For any rectified sentence F of a signature σ and for any interpretation I of σ that satisfies CET σ , I is a model of The following theorem follows from Theorem 2, Proposition 6 and Proposition 7.
Theorem 4 Let F be a rectified sentence of a signature σ (possibly containing function constants of positive arity), and let I be an interpretation of σ that satisfies F and CET σ . If F is bounded, then the following conditions are equivalent to each other: Proof. By Proposition 6, if F is bounded then F is bounded w.r.t. any interpretation that satisfies CET σ . Then the equivalence between (a) and (b) follows from the equivalence between (a) and (b) of Theorem 2. The equivalence between (a) and (c) follows from the equivalence between (a) and (c) of Theorem 2 and by Proposition 7.
As every Herbrand interpretation of σ satisfies CET σ , Theorem 4 applies to Herbrand interpretations as a special case.
The theorem also applies to logic programs, since they can be viewed as a special case of formulas. For example, consider the following program, which is bounded.
The set {p(a), p(f (a)), p(f (f (a))), q(a), q(f (a)), r(a), r(f (a))} is an answer set of (32). In accordance with Theorem 4, it is also the Herbrand interpretation of the signature obtained from the program that satisfies the FOL-representation of (32) and the loop formulas, which are the universal closures of Consider another example program by Bonatti (2004), where a, . . . , z, nil are object constants.
The expression [x|y] is a list whose head is x and whose tail is y, which stands for a function cons(x, y). The expression [x] stands for cons(x, nil) where nil is a special symbol for the empty list. This program is bounded. The only answer set of the program is the only Herbrand interpretation of the FOL-representation of (33) and the universal closures of y)).
In fact, the definitions of standard list processing predicates, such as member, append, and reverse (Bonatti, 2004, Figure 1) are bounded, so they can be represented by first-order formulas on Herbrand interpretations. 12 We say that a formula F is atomic-tight if the first-order dependency graph of F has no infinite paths. Every tight sentence is atomic-tight, but not vice versa. For example, the FOL-representations of programs (32) and (33) are atomic-tight, but are not tight. Similar to Proposition 6, if F is atomic-tight, then F is atomic-tight w.r.t. any interpretation that satisfies CET σ , so that the following statement is derived from Corollary 3.
Corollary 5 Let F be a rectified sentence of a signature σ (possibly containing function constants of positive arity), and let I be an interpretation of σ that satisfies F and CET σ .
The statement of Corollary 5 is restricted to interpretations that satisfy CET σ . Indeed, the statement becomes wrong if this restriction is dropped. For example, program (28) in Example 7 is atomic-tight, but the non-stable model considered there satisfies all loop formulas, including those of singleton loops.

Bounded Formulas and Normal Form
Normal form is another syntactic condition that can be imposed so that the syntactic notion of boundedness ensures the semantic notion of boundedness. We say that a formula is in normal form if every strictly positive occurrence of an atom is of the form p(x), where x is a list of distinct variables. It is clear that every formula can be turned into normal form using equality.
Proposition 8 If a rectified formula F in normal form is bounded, then F is bounded w.r.t. any interpretation.
Proposition 9 If a rectified sentence F in normal form is bounded, then for any interpretation I, I is a model of The following theorem follows from Theorem 2, Proposition 8 and Proposition 9.
Theorem 5 Let F be a rectified sentence in normal form (possibly containing function constants of positive arity). If F is bounded, then the following formulas are equivalent to each other: Proof. By Proposition 8, if F is bounded then F is bounded w.r.t. any interpretation I. Then the equivalence between (a) and (b) follows from the equivalence between (a) and (b) of Theorem 2. The equivalence between (a) and (c) follows from the equivalence between (a) and (c) of Theorem 2 and by Proposition 9.
Consider a program in normal form and an interpretation I such that |I| = {1}, a I = b I = 1 and p I = q I = {1}. This interpretation does not satisfy Clark's equational theory, and is not a stable model. In accordance with Theorem 5, I does not satisfy the loop formula of the loop On the other hand, consider another program in non-normal form that has the same stable models as (34): Program (35)  and I satisfies all loop formulas. This example illustrates the role of normal form assumption in Theorem 5 (in place of Clark's equational theory in Theorem 4). Note that a normal form conversion may turn a bounded sentence into a non-bounded sentence. For instance, the normal form of the bounded program (32) is which is not bounded.
Unlike in Corollary 5, if a program is in normal form, atomic-tightness is not more general than tightness. It is not difficult to check that a program in normal form is atomictight iff it is tight.

Decidability of Boundedness and Finite Complete Set of Loops
In general, checking whether F is bounded is not decidable, but it becomes decidable if F contains no function constants of positive arity. The same is the case for checking whether F is atomic-tight.
Proposition 10 For any rectified sentence F (allowing function constants of positive arity), (a) checking whether F is bounded is not decidable; (b) checking whether F is atomic-tight is not decidable.
If F contains no function constants of positive arity, (c) checking whether F is bounded is decidable; (d) checking whether F is atomic-tight is decidable.
The proof of Proposition 10 (c) is based on the following fact and the straightforward extension of Theorem 2 by Chen et al. (2006) to first-order formulas, which asserts that checking if F has a finite complete set of loops is decidable.
Proposition 11 For any rectified formula F that contains no function constants of positive arity, F is bounded iff F has a finite complete set of loops.
Note that Proposition 11 does not hold if F is allowed to contain function constants of positive arity. For instance, is not bounded, but has a finite complete set of loops {{p(x)}}.
The following corollary follows from Theorem 4 and Proposition 11.
Corollary 6 Let F be a rectified sentence of a signature σ that has no function constants of positive arity, and let I be an interpretation of σ that satisfies F and CET σ . If F has a finite complete set of loops, then conditions (a), (b), and (c) of Theorem 4 are equivalent to each other.
The following corollary follows from Theorem 5 and Proposition 11.
Corollary 7 Let F be a rectified sentence in normal form that has no function constants of positive arity. If F has a finite complete set of loops, formulas in (a), (b), and (c) of Theorem 5 are equivalent to each other.

Semi-Safe Formulas
Semi-safety is another decidable syntactic condition that ensures that SM[F ] can be expressed by first-order sentences. We assume that there are no function constants of positive arity. According to Lee, Lifschitz, and Palla (2009), a semi-safe sentence has the "small predicate property": the relation represented by any of its predicate constants p can hold for a tuple of arguments only if each member of the tuple is represented by an object constant occurring in F . We will show that any semi-safe sentence under the stable model semantics can be turned into a sentence in first-order logic.
First, we review the notion of semi-safety by Lee et al. (2009). 13 As a preliminary step, we assign to every formula F a set RV(F ) of its restricted variables as follows: • For an atomic formula F , if F is an equality between two variables, then RV(F ) = ∅; otherwise, RV(F ) is the set of all variables occurring in F ; We say that a variable x is restricted in F if x ∈ RV(F ). A rectified formula F is semisafe if every strictly positive occurrence of every variable x belongs to a subformula G → H where x is restricted in G.
If a sentence has no strictly positive occurrence of a variable, then it is obviously semisafe. The FOL-representation of a disjunctive program is semi-safe if, for each rule (10) of the program, every variable occurring in the head of the rule occurs in B as well.
Example 8 The FOL-representation of (8) is not semi-safe. Formula is semi-safe.
For any finite set c of object constants, in c (x) stands for the formula c∈c x = c.
13. The definition here is slightly more general in that it does not refer to prenex form. Instead we require a formula to be rectified.
The small predicate property can be expressed by the conjunction of the sentences for all predicate constants p occurring in F , where v 1 , . . . , v n are distinct variables. We denote this conjunction of the sentences by SPP c . By c(F ) we denote the set of all object constants occurring in F .
The following proposition tells us that for a semi-safe sentence F , formula SM[F ] can be equivalently rewritten as a first-order sentence.
Theorem 6 Let F be a rectified sentence that has no function constants of positive arity. If F is semi-safe, then SM[F ] is equivalent to the conjunction of F , SPP c(F ) and a finite number of first-order loop formulas.
Proof. If F is semi-safe, then SM[F ] entails SPP c(F ) . So it is sufficient to prove that under the assumption SPP c(F ) , SM[F ] is equivalent to the conjunction of F and a finite number of first-order loop formulas. It follows from I |= SPP c(F ) that F is bounded w.r.t. I. Since every finite loop of F w.r.t. I can be represented by a finite set of atoms whose terms are object variables, it follows from Theorem 2 that I satisfies SM[F ] iff I satisfies the loop formulas of those sets.
For example, SM[(37)] is equivalent to the conjunction of F , (38) and the universal closures of Note that the condition on a finite complete set of loops in Corollaries 6 and 7, and the condition on semi-safety in Theorem 6 do not entail each other. For instance, formula (37) is semi-safe, but has no finite complete set of first-order loops, while ∃x p(x) has a finite complete set of loops {{p(x)}}, but it is not semi-safe. Also program Π 1 in Section 1 has a finite complete set of loops, but it is not semi-safe due to w in the fourth rule.

Programs with Explicit Quantifiers
In the following we extend the syntax of a logic program by allowing explicit quantifiers. A rule with quantifiers is of the form where G and H are first-order formulas such that every occurrence of every implication in G and H belongs to a negative formula. A program with quantifiers is a finite set of rules with quantifiers. Program Π 1 in Section 1 is an example. The semantics of such a program is defined by identifying the program with its FOL-representation under the stable model semantics. By restricting the syntax of a program like the one above, in comparison with the syntax of an arbitrary formula, we are able to write a more succinct loop formulas, as we show below. Let F be a formula and Y a finite set of atoms. By F Y we denote the formula obtained from F by replacing every occurrence of every atom p(t) in F that does not belong to a negative formula with p(t) ∧ p(t )∈Y t = t . Let Π be a program with quantifiers. Given a finite set Y of atoms of σ(Π), we first rename variables in Π so that no variables in Π occur in Y . We define the formula QES Π (Y ) ("External Support Formula for Programs with Quantifiers") to be the disjunction of for every rule (39) such that H contains a strictly positive occurrence of a predicate constant that occurs in Y , and z is the list of all free variables in the rule that do not occur in Y . The loop formula of Y for Π is the universal closure of The following proposition tells us that (41) is equivalent to (12) when the notions are applied to a program with explicit quantifiers. It also shows that (41) is a generalization of the definition of a loop formula for a disjunctive program.
Proposition 13 Let Π be a program with quantifiers, F the FOL-representation of Π, and Y a finite set of atoms. Under the assumption Π, formula QES Π (Y ) is equivalent to ¬NES F (Y ). If Π is a disjunctive program in normal form, then QES Π (Y ) is also equivalent to ES Π (Y ) under the assumption Π.
Note that the size of (41) for each Y is polynomial to the size of the given program. This is not the case when we apply (12) to the FOL-representation of the program, due to the expansion of NES for nested implications. On the other hand, the syntactic condition imposed on the rule with quantifiers avoids such an exponential blow up, as the following lemma tells us.
Lemma 4 Let F be a formula such that every occurrence of an implication in F belongs to a negative formula and let Y be a set of atoms. NES F (Y ) is equivalent to F Y .
A finite set Γ of sentences entails a sentence F under the stable model semantics (symbolically, Γ |= SM F ), if every stable model of Γ satisfies F .
If SM[F ] can be reduced to a first-order sentence, as described in Theorem 5 and Theorem 6, then where ∆ is the set of first-order loop formulas required (and possibly including SPP c(F ) when Theorem 6 is applied). This fact allows us to use first-order theorem provers to reason about query entailment under the stable model semantics.
These loop formulas, conjoined with the FOL-representation of Π 1 ∪ Π 2 ∪ Π 3 , entail under first-order logic each of ∃x Married (x) and ∀xy(Discount(x, y) → x = John). We verified the answers using a first-order theorem prover Vampire 14 .

Extension to Allow Extensional Predicates
The definition of a stable model in the journal paper by Ferraris et al. (2011), reviewed in Section 2, is more general than the definition in their conference paper (Ferraris et al., 2007) in that it allows us to distinguish between intensional and non-intensional (a.k.a. extensional) predicates. Similar to Datalog, intensional (output) predicates are characterized in terms of extensional (input) predicates. For instance, consider Example 9 again, but now assume that Man and Spouse are non-intensional. Π 1 ∪ Π 2 ∪ Π 3 still entails ∃xyDiscount(x, y) but no longer entails ∀xy(Discount(x, y) → x = John) because there may be a person other than John who has a spouse. The results in the earlier sections can be extended to this general semantics in view of Proposition 14 below, which characterizes SM[F ; p] in terms of SM[F ]. By pr (F ) we denote the list of all predicate constants occurring in F ; by Choice(p) we denote the conjunction of "choice formulas" ∀x(p(x) ∨ ¬p(x)) for all predicate constants p in p, where x is a list of distinct object variables; by False(p) we denote the conjunction of ∀x¬p(x) for all predicate constants p in p. We sometimes identify a list with the corresponding set when there is no confusion.

Proposition 14 For any list p of predicate constants, formula SM[F ; p] is equivalent to
and to SM[F ¬¬ ∧ Choice(pr (F )\p) ∧ False(p\pr (F ))], where F ¬¬ is obtained from F by replacing every atom of the form q(t) in F such that q does not belong to p by ¬¬q(t).
In the next three corollaries, σ is a signature, F is a rectified sentence of σ (possibly containing function constants of positive arity), p is any finite list of predicate constants from σ, and G is (44).
The first corollary follows from Theorem 2 and Proposition 14. (b) for every nonempty finite set Y of atoms formed from predicate constants in p and object names for |I|, I satisfies LF F (Y ); (c) for every finite loop Y of G w.r.t. I whose predicate constants are contained in p, I satisfies LF F (Y ).
The next corollary follows from Theorem 4 and Proposition 14.
Corollary 9 If G is bounded, then, for any interpretation I of σ that satisfies F and CET σ , the following conditions are equivalent to each other: (a) I |= SM[F ; p]; (b) for every nonempty finite set Y of atoms of σ(G) whose predicate constants are contained in p, I satisfies LF F (Y ); (c) for every finite first-order loop Y of G whose predicate constants are contained in p, I satisfies LF F (Y ).
The last corollary follows from Theorem 5 and Proposition 14.
Corollary 10 If G is in normal form and is bounded, then the following formulas are equivalent to each other: Y is a nonempty finite set of atoms of σ(G) whose predicate constants are contained in p}; (c) {F } ∪ {LF F (Y ) | Y is a finite first-order loop of G whose predicate constants are contained in p}.
Example 10 Consider Example 9 again, assuming that Man and Spouse are extensional. Let F be the FOL-presentation of Π 1 ∪ Π 2 ∪ Π 3 and let G be the formula (44). The loops of G are the same as the loops of F . The loop formulas remain the same as before except for the following loop formulas of Man(u) and Spouse(u, v): These two formulas are tautologies. As a result, the loop formulas of all loops, conjoined with G, entail ∃xyDiscount(x, y), but no longer entail ∀xy (Discount(x, y) → x = John).
In general, there are no loops of G that contain both intensional and extensional predicates. Also every loop of G that contains an extensional predicate is a singleton, and the loop formula of such a loop is a tautology.
Corollary 3 is extended to allow extensional predicates as in the following. By SLF[F ; p], we denote {LF F ({p(x)}) | p is a predicate constant in p, and x is a list of distinct object variables whose length is the same as the arity of p}.
We say that a formula F is p-atomic-tight w.r.t. I if every infinite path in the dependency graph of F w.r.t. I whose vertices are satisfied by I contains an atom whose predicate constant is not in p.
Corollary 11 Let F be a rectified sentence (possibly containing function constants of positive arity), and let I be a model of F . If F is p-atomic-tight w.r.t. I, then I satisfies The definition of semi-safety is extended to distinguish between intensional and nonintensional predicates as follows. Let F be a formula that has no function constants of positive arity. To every first-order formula F we assign a set RV p (F ) of restricted variables relative to p as follows.
• For an atomic formula F (including equality and ⊥), if F is an equality between two variables, or is an atom whose predicate constant is not in p, then RV p (F ) = ∅; otherwise, RV p (F ) is the set of all variables occurring in F ; We say that a variable x is p-restricted in F if x ∈ RV p (F ). A rectified formula F is semi-safe relative to p if every strictly positive occurrence of every variable x belongs to a subformula G → H, where x is p-restricted in G.
The small predicate property is generalized as follows. Formula SPP p c is the conjunction of the sentences for all predicate constants p in p, where v 1 , . . . , v n are distinct variables.
Proposition 15 ) For any semi-safe sentence F relative to p, formula SM[F ; p] entails SPP p c(F ) .
The following proposition tells us that for a semi-safe sentence F , formula SM[F ; p] can be equivalently rewritten as a first-order sentence.
Theorem 7 Let F be a rectified sentence that has no function constants of positive arity. If F is semi-safe relative to p, then SM[F ; p] is equivalent to the conjunction of F , SPP p c(F ) and a finite number of first-order loop formulas.
Proof. Let F be a sentence of the signature σ. If F is semi-safe relative to p, then SM[F ; p] entails SPP p c(F ) , so it is sufficient to prove that under the assumption SPP p c(F ) , SM[F ; p] is equivalent to the conjunction of F and a finite number of first-order loop formulas. By Proposition 14, SM[F ; p] is equivalent to SM[G], where G is (44). Consider any interpretation I of σ that satisfies G and SPP p c(F ) . Note that the dependency graph of G w.r.t. I contains no outgoing edges from a vertex whose predicate constant does not belong to p. Together with the fact that I |= SPP p c(F ) , we conclude that each path in the dependency graph whose vertices are satisfied by I visits only finitely many vertices. Consequently, G is bounded w.r.t. I. Since every finite loop of G w.r.t. I can be represented by a finite set of atoms whose terms are object variables, it follows from Theorem 2 that I satisfies SM [G] iff I satisfies the loop formulas of those sets.

Related Work
The notion of a bounded program is related to the notion of a finitely recursive program studied by Bonatti (2004), where a different definition of a dependency graph was considered. The atom dependency graph of a nondisjunctive ground program defined by Bonatti is a directed graph such that the vertices are the set of ground atoms, and the edges go from the atom in the head to atoms in the body of every rule, including those in the negative body. A program is called finitely recursive if, for every atom, there are only finitely many atoms reachable from it in the atom dependency graph. It is clear that every finitely recursive program is bounded, but the converse does not hold. For instance, the program is bounded, but is not finitely recursive because there are infinite paths that involve negative edges. Also the program p(a) ← q(f (x)) is bounded, but is not finitely recursive because infinitely many atoms q(f (a)), q(f (f (a))), . . . can be reached from p(a) in the atom dependency graph. Like bounded programs, checking finitely recursive programs is undecidable in the presence of function constants of positive arity. Lin and Wang (2008) extended answer set semantics with functions by extending the definition of a reduct, and also provided loop formulas for such programs. We can provide an alternative account of their results by considering the notions there as special cases of the definitions presented in this paper. For simplicity, we assume non-sorted languages. 15 Essentially, they restricted attention to a special case of non-Herbrand interpretations such that object constants form the universe, and ground terms other than object constants are mapped to object constants. According to Lin and Wang, an LW-program P consists of type definitions and a set of rules. Type definitions introduce the domains for a many-sorted signature consisting of some object constants, and includes the evaluation of each function symbol of positive arity that maps a list of object constants to an object constant. Since we assume non-sorted languages, we consider only a single domain (universe). We say that an interpretation I is a P -interpretation if the universe is the set of object constants specified by P , object constants are evaluated to itself, and ground terms other than object constants are evaluated conforming to the type definitions of P .
Proposition 16 Let P be an LW-program and let F be the FOL-representation of the set of rules in P . The following conditions are equivalent to each other: (a) I is an answer set of P according to Lin and Wang (2008); (c) I is a P -interpretation that satisfies F and the loop formulas of Y for all loops Y of F w.r.t. I.
The equivalence between (b) and (c) follows from Proposition 2 since the universe is finite. The equivalence between (a) and (c) follows from the fact that LW answer sets can be characterized by loop formulas that are defined by Lin and Wang (2008) and that these loop formulas are essentially the same as the loop formulas in (c).
Since the proposal of the first-order stable model semantics, there have been some papers about first-order definability of SM[F ]. Zhang and Zhou (2010) show that, for a nondisjunctive program Π that has no function constants of positive arity, its first-order stable model semantics can be reformulated by a progression based semantics. They also showed that the programs whose answer sets can be found by a finite progression are exactly those that can be represented by first-order formulas. Some researchers have paid special attention to first-order definability of SM[F ] on finite structures. Chen, Zhang, and Zhou (2010) show a game-theoretic characterization for the first-order indefinability of first-order answer set programs on finite structures. Asuncion, Lin, Zhang, and Zhou (2010) show first-order definability on finite structures by turning programs into modified completion using new predicates to record levels. Chen, Lin, Zhang, and Zhou (2011) present a condition called "loop-separable," which is more refined than finite complete set of loops under which the finite answer sets of a program can be captured by first-order sentences. However, like the condition of finite complete set of loops, this condition is disjoint with semi-safety. The following program is semi-safe but not loop-separable: However, all this work is limited to nondisjunctive programs that contain no function constants of positive arity. Our work is not limited to finite structures, and considers function constants of positive arity as well. Nonetheless the above papers on first-order definability are closely related to our work and more insights would be gained from the relationship between them.
The use of first-order theorem provers for the stable model semantics was already investigated by Sabuncu and Alpaslan (2007), but their results are limited in several ways. They considered nondisjunctive logic programs with "trivial" loops only, in which case the stable model semantics is equivalent to the completion semantics. They also restricted attention to Herbrand models.

Conclusion
This paper puts first-order loop formulas in the context of first-order reasoning and studies how they are related to first-order stable model semantics. The similarities and mismatches found in this paper provide useful insights into first-order reasoning with stable models. Future work is to find further restrictions that make first-order stable model reasoning decidable and computable in an efficient manner, like the conditions imposed in "finitary" programs (Bonatti, 2004). Recently, the first-order stable model semantics was shown to be used as a unifying nonmonotonic logic for integrating rules and ontologies (de Bruijn, Pearce, Polleres, & Valverde, 2010;Lee & Palla, 2011), in which ontology predicates are identified with extensional predicates. Based on the studied relationship between first-order stable model semantics and first-order loop formulas, one may find further restrictions that are tailored to the hybrid knowledge bases for efficient computation.
The notation that we use in the proof involves predicate expressions (Lifschitz, 1994, Section 3 where F (x) is a formula. If e is (45) and G(p) is a formula containing a predicate constant p of the same arity as the length of x then G(e) stands for the result of replacing each atomic part of the form p(t) in G(p) with F (t), after renaming the bound variables in G(p) in the usual way, if necessary.
Substituting a tuple e of predicate expressions for a tuple p of predicate constants is defined in a similar way.
Lemma 5 Let v be the list of λy i (p i (y i ) ∧ ¬u i (y i )). The following formulas are logically valid: Proof. By induction.

A.1.1 Proof of Equivalence between (a) and (b) of Theorem 3
It is sufficient to show that From left to right: Take u such that u < p∧F * (u). Let v be the list of λy i (p i (y i ) ∧ ¬u i (y i )).
• From u < p, it follows that there are x and i such that p i (x) ∧ ¬u i (x), from which i ∃x i v i (x i ) follows, so that Nonempty(v) follows.

From right to left:
. Let u be the list of λy i (p i (y i ) ∧ ¬v i (y i )).
• Clearly, u ≤ p holds. Moreover ¬(u = p) holds. Indeed, if u = p, then ∀x i ¬v i (x i ) follows, which contradicts the assumption Nonempty(v). Consequently, u < p follows.

A.1.2 Proof of Proposition 3
Lemma 6 Let I be an interpretation of σ that contains σ(F ), and let q, r be lists of predicate names corresponding to p. Let Z and Y be sets of atoms in the dependency graph of F w.r.t. I such that and where ξ is a list of object names. Then iff Z is a subset of Y and there is an edge from an atom in Z to an atom in Y \ Z in the dependency graph of F w.r.t. I.
Proof. From left to right: Assume I |= r ≤ q ∧ E F (r, q). The fact that Z is a subset of Y follows from the assumption that I |= r ≤ q and the construction of Z and Y . Since where z is the list of all object variables in t and t , there is a substitution θ that maps object variables in t and t to object names such that I |= (p i (t),p j (t )) : p i (t) depends on p j (t ) in a rule of F r i (tθ) ∧ q j (t θ) ∧ ¬r j (t θ).
Consequently, there are atoms p i (t), p j (t ) such that p i (t) depends on p j (t ) in a rule of F and I |= r i (tθ)∧q j (t θ)∧¬r j (t θ). From I |= r i (tθ) and the construction of Z, it follows that p i (((tθ) I ) ) belongs to Z. Also from I |= q j (t θ) ∧ ¬r j (t θ), it follows that that p j (((t θ) I ) ) belongs to Y \ Z. Therefore, there is an edge from an atom in Z to an atom in Y \ Z in the dependency graph of F w.r.t. I.
From right to left: Assume that Z is a subset of Y and there is an edge from an atom p i (ξ ) in Z to an atom p j (η ) in Y \ Z in the dependency graph of F w.r.t. I. Clearly, I |= r ≤ q. From the assumption that p i (ξ ) ∈ Z, p j (η ) ∈ Y \ Z and the construction of Y and Z, it follows that I |= r i (ξ ) ∧ q j (η ) ∧ ¬r j (η ). From the definition of the dependency graph w.r.t. I, it follows that there are p i (t), p j (t ) such that p i (t) depends on p j (t ) in a rule of F with a substitution θ that maps object variables in t and t to object names such that (tθ) I = ξ and (t θ) I = η. Consequently, which is equivalent to saying that where z is the list of all variables in t and t .
Lemma 7 A graph (V, E) is strongly connected iff, for any nonempty proper subset U of V , there is an edge from U to V \ U .
Proof. Follows from the definition of a strongly connected graph.
Proposition 3 Let q be a list of predicate names corresponding to p, and let Y be a set of atoms in the dependency graph of F w.r.t. I such that where ξ is a list of object names. Then Proof. From left to right: Assume that I |= Loop F (q). From I |= Nonempty(q), it follows that Y is nonempty. Take any nonempty proper subset Z of Y . Let r be the list of predicate names such that It is clear that I |= Nonempty(r) ∧ r < q.
Consequently, from I |= Loop F (q), it follows that I |= E F (r, q). By Lemma 6, there is an edge from an atom in Z to an atom in Y \ Z. Consequently, by Lemma 7, Y induces a strongly connected subgraph and thus a loop of F w.r.t. I.
From right to left: Let Y be loop of F w.r.t. I and q a list of predicate names such that Since Y is nonempty, I |= Nonempty(q). Consider any list of predicate names r such that Let Z be a set of vertices in the dependency graph of F w.r.t. I such that Clearly, Z is a nonempty proper subset of Y . Since Y induces a strongly connected subgraph, by Lemma 7, there is an edge from an atom in Z to an atom in Y \ Z. Consequently by Lemma 6, I |= E F (r, q).
Proposition 4 Let q be a list of predicate names corresponding to p, and let Y be a set of atoms in the dependency graph of F w.r.t. I such that where ξ is a list of object names. Then iff Y is an unbounded set of F w.r.t. I.
Proof. From left to right: Assume Since I |= Nonempty(q), it is clear that Y is nonempty. Take any subset Z of Y that is a loop of F w.r.t. I. Let r be a list of predicate names such that Since Z is a subset of Y , it is clear that I |= r ≤ q. Since Z is a loop of F w.r.t. I, by Proposition 3, I |= Loop F (r). Consequently, from (46) it follows that I |= E F (r, q). By Lemma 6, there is an edge from an atom in Z to an atom in Y \ Z. Therefore, Y is an unbounded set of F w.r.t. I.
From right to left: Let Y be an unbounded set of F w.r.t. I. Since Y is nonempty, it is clear that I |= Nonempty(q). Take any list of predicate names r such that I |= r ≤ q ∧ Loop F (r). Let Z be a set of vertices in the dependency graph of F w.r.t. I such that By Proposition 3, Z is a loop of F w.r.t. I. It is clear that Z is a subset of Y . Since Y is an unbounded set of F w.r.t. I, there is an edge from Z to Y \ Z. Consequently by Lemma 6, I |= E F (r, q).

A.1.4 Proof of Proposition 5
Proposition 5 For any negative formula F , formula Proof. The proof follows immediately from the following two lemmas, which can be proved by induction.
Lemma 8 For any formula F , NSES F (u) → F is logically valid.
Lemma 9 Let F be a formula, and let S F be the set of p i (t) that has a strictly positive occurrence in F . Formula is logically valid, where z is the tuple of variables in t that are not free in F .

A.1.5 Proof of Equivalence between (b) and (c) of Theorem 3
Lemma 10 Let F be a rectified formula, let S + F be the set of all atoms p i (t) that have a positive occurrence in F that does not belong to a negative formula, and let S − F be the set of all atoms p i (t) that have a negative occurrence in F that does not belong to a negative formula. 16 The following formulas are logically valid, where z is the list of all variables in t that are not free in F .
Proof. Both parts are proved simultaneously by induction on F .
Case 1: F is an atom p i (t).
Part (a): NSES F (v) entails NSES F (u) under the assumption Case 2: F is ⊥ or an equality. It is clear since NSES F (v) and NSES F (u) are the same as F .
We need to show that 16. Note that we distinguish between formula being negative and an occurrence being negative. See at the end of Section 2.
Part (b): Similar to Part (a).
From the assumption NSES G (v), G follows by Lemma 8. Also follows, where z is the list of all variables in t that are not free in G, so that by I.H. on G, NSES G (u) holds from the assumption. Since x is not free in the assumption, ∀xNSES G (u) holds as well.
Part (b): Similar to Part (a).
Case 6: F is ∃x G.
Part (a): Assume Take x such that From NSES G (v), by Lemma 8, G follows. Also follows, where z is the list of all variables in t that are not free in G. By I.H. on G, NSES G (u) holds under the assumption (50). Consequently, ∃xNSES G (u) holds from the same assumption. Since x is not free in (49), we conclude that ∃xNSES G (u) holds from the assumption (49).

Part (b): Similar to Part (a).
Lemma 11 For any rectified formula F , is logically valid.
Proof. By induction on F .
Case 2: F is ⊥ or equality. It is clear since NSES F (v) and NSES F (u) are the same as F .
, where x is the list of variables in t that are not free in H.
Since F is rectified, the variables in F can be partitioned into three sets: the list of variables x that are not free in H, the list of variables y that are not free in G, and the rest. Note that ¬E F (v, u) entails where x is the list of all variables in t that are not free in H, and y is the list of all variables in t that are not free in G. From (51) and (52), we conclude p j (t ) : p j (t ) occurs positively and not in a negative subformula of G ∀y(u j (t ) → v j (t )).
From this, together with the assumption (v ≤ u) and NSES G (v), by Lemma 10 (a), NSES G (u) follows. Thus NSES H (u) follows from NSES F (u) and NSES G (u). Since ¬E F (v, u) entails ¬E H (v, u), by I.H. on H, NSES H (v) follows, which contradicts the assumption.

Lemma 12
is logically valid.
Proof. Take any list q of predicate names, and any interpretation I that satisfies Nonempty(q). Let Y be a set of vertices in the dependency graph of F w.r.t. I such that Consider the subgraph G of the dependency graph of F w.r.t. I that is induced by Y . If Y is an unbounded set w.r.t. I, by Proposition 4, I |= Ext-Loop F (q). So Otherwise, consider the graph G that is obtained from G by collapsing strongly connected components of G, i.e., the vertices of G are the strongly connected components of G and G has an edge from V to V if G has an edge from a vertex in V to a vertex in V . Since we assumed that Y is not an unbounded set w.r.t. I, there exists a vertex Z in G that has no outgoing edges. Consider the list of predicate names r such that It is clear that I |= r ≤ q. By Proposition 3, I |= Loop F (r) thus I |= Ext-Loop F (r). Since there is no edge from Z to Y \ Z, by Lemma 6, I |= ¬E F (r, q). Consequently, the claim follows.

Proof of Equivalence Between (b) and (c) of Theorem 3
From (b) to (c): Clear from that the formula Ext-Loop F (u) → Nonempty(u) is logically valid.
Take any u such that u ≤ p ∧ Nonempty(u). By Lemma 12, it follows from Nonempty(u) v, u). It is clear that v ≤ p follows from v ≤ u and u ≤ p. It follows from the assumption that ¬NSES F (v). Then by Lemma 11, ¬NSES F (u) follows from v ≤ u and ¬E F (v, u).

A.2 Proof of Theorem 2
Lemma 3 Let F be a rectified sentence of a signature σ (possibly containing function constants of positive arity), and let I be an interpretation of σ that satisfies F . If F is bounded w.r.t. I, Proof. From left to right: Assume for some list of predicate names q. Consider Y to be the set of vertices in the dependency graph of F w.r.t. I such that Since I |= Ext-Loop F (q), by Proposition 3 and Proposition 4, it follows that Y is an extended loop of F w.r.t. I. Since I |= q i (ξ ) for all p i (ξ ) ∈ Y and I |= q ≤ p, it follows that I satisfies every atom in Y . Together with the assumption that F is bounded w.r.t. I, this implies that set Y is finite. Since I |= NSES F (q) and Y is finite, by Lemma 2, it follows that I |= NES F (Y ).

From right to left: Consider any finite loop
Let q be a list of predicate names such that • I |= q ≤ p follows from the construction of q and I |= Y .
• Since Y is a loop of F w.r.t. I, by Proposition 3, I |= Loop F (q), and consequently, I |= Ext-Loop F (q).
Theorem 2 Let F be a rectified sentence of a signature σ (possibly containing function constants of positive arity), and let I be an interpretation of σ that satisfies F . If F is bounded w.r.t. I, then the following conditions are equivalent to each other: (a) I satisfies SM[F ]; (b) for every nonempty finite set Y of atoms formed from predicate constants in σ(F ) and object names for |I|, I satisfies LF F (Y ); (c) for every finite loop Y of F w.r.t. I, I satisfies LF F (Y ).
• From (c) to (b): Assume that I satisfies LF F (L) for every finite loop L of F w.r.t I.
Consider any nonempty finite set Y of atoms formed from predicate constants in σ(F ) and object names such that I |= Y . Let q be a list of predicate names such that Since Y is nonempty, it is clear that Nonempty(q) follows. In view of Lemma 12, there is a list of predicate names r such that Consider Z to be the set of vertices in the dependency graph of F w.r.t. I such that Since I |= Ext-Loop F (r), by Proposition 3 and Proposition 4, Z is an extended loop of F w.r.t. I. Clearly, I |= Z since Z ⊆ Y and I |= Y . Since F is bounded w.r.t. I, and Z is satisfied by I, it follows that Z is a finite loop of F w.r.t. I. Since I |= r ≤ q ∧ ¬E F (r, q), Z is a subset of Y and, by Lemma 6, there is no edge from Z to Y \ Z in the dependency graph of F w.r.t. I. Since I |= LF F (Z), we conclude that I |= ¬NES F (Z), and by Lemma 2, I |= ¬NSES F (r). From (53) and that I |= ¬NSES F (r), by Lemma 11, we have I |= ¬NSES F (q). By Lemma 2 again, I |= ¬NES F (Y ). Consequently, I |= LF F (Y ).

A.3 Proof of Proposition 6
Proposition 6 If a rectified formula F of a signature σ is bounded, then F is bounded w.r.t. any interpretation of σ that satisfies CET σ .
Lemma 13 For any terms t 1 and t 2 of signature σ, any interpretation I that satisfies CET σ , and any substitution θ from object variables in t 1 and t 2 to object names such that (t 1 θ) I = (t 2 θ) I , Robinson's unification algorithm (Robinson, 1965), when applied to t 1 and t 2 , returns a most general unifier (mgu) γ of t 1 and t 2 such that (a) t 1 γ = t 2 γ, and (b) for every variable x in t 1 or t 2 , (xγθ) I = (xθ) I .
Proof. From the assumptions, by Lemma 5.1 from the work of Kunen (1987), t 1 and t 2 are unifiable, in which case Robinson's algorithm returns a mgu for t 1 and t 2 that maps variables occurring in t 1 and t 2 into terms. Given this, part (b) can be proven by induction.
The proof of Proposition 6 follows from the following lemma.
It is easy to check that condition (a') is satisfied. To check that condition (b') is satisfied, consider any variable x in the set If x is in t j σ j j or t j+1 , by (56), (xγθ) I = (xθ) I . Otherwise, since γ does not change the variables that are not in t j σ j j or t j+1 , (xγθ) I = (xθ) I . Consequently, for any variable x in (57), we get (xγθ) I = (xθ) I . It remains to check the following.
The last one is equal to ξ i by I.H.

A.4 Proof of Proposition 7
Proposition 7 For any rectified sentence F of a signature σ and for any interpretation I of σ that satisfies CET σ , I is a model of The proof follows immediately from the following fact and Lemma 15.
Fact 1 Let F be a rectified sentence of a signature σ, and let I be an interpretation of σ. For any first-order loop Y of F and any substitution θ that maps variables in Y to object names, Y = {p i (ξ ) | p i (t) ∈ Y θ, t I = ξ} is a loop of F w.r.t. I.
Lemma 15 Let F be a rectified sentence of a signature σ, and let I be an interpretation of σ. If I satisfies CET σ , then, for any finite loop Y of F w.r.t. I, there is a finite loop Y of F with a substitution θ that maps variables in Y to object names such that Proof. Without loss of generality, consider a path p 1 (ξ 1 ), p 2 (ξ 2 ), . . . , p k (ξ k ), p 1 (ξ 1 ) (k ≥ 1) in the dependency graph of F w.r.t. I that consists of the vertices in Y . Since I |= CET σ , by Lemma 14, there is a path p 1 (u 1 ), p 2 (u 2 ), . . . , p k (u k ), p 1 (u k+1 ) in the first-order dependency graph of F with a substitution θ that maps variables in u i to object names such that (u i θ) I = ξ i for all 1 ≤ i ≤ k, and (u k+1 θ) I = ξ 1 . Since (u k+1 θ) I = (u 1 θ) I , by Lemma 13, there is a unifier γ for u k+1 and u 1 such that, for any variable x in u k+1 or u 1 , (xγθ) I = (xθ) I . Consequently, induces a finite strongly connected subgraph such that (u i γθ) I = (u i θ) I = ξ i .
A.5 Proof of Proposition 8 Proposition 8 If a rectified formula F in normal form is bounded, then F is bounded w.r.t. any interpretation.
The proof follows from the following lemma.
Lemma 16 Let F be a rectified sentence of a signature σ in normal form, and let I be an interpretation of σ. For any path in the dependency graph of F w.r.t I, there exists a path in the first-order dependency graph of F with a substitution θ that maps object variables in u i to object names such that (u i θ) I = ξ i for all i, and u 1 is a list of object variables.
Proof. The proof is similar to the proof of Lemma 14 except that we do not require that I satisfy CET σ . Instead, the existence of a unifier γ for t j σ j j and t j+1 is ensured by the assumption on normal form that t j+1 is a list of variables and the assumption that t j σ j j contains none of those variables (due to variable renaming).
A.6 Proof of Proposition 9 Proposition 9 If a rectified sentence F in normal form is bounded, then for any interpretation I, I is a model of The proof follows from Fact 1 and the following lemma.
Lemma 17 If a rectified sentence F in normal form is bounded, then for any finite loop Y of F w.r.t. I, there is a finite loop Y of F with a substitution θ that maps variables in Y to object names such that Y = {p i (ξ ) | p i (t) ∈ Y, (tθ) I = ξ}.
Proof. Let Y be a finite loop of F w.r.t. I. Without loss of generality, there is a path p 1 (ξ 1 ), p 2 (ξ 2 ), . . . , p k (ξ k ), p 1 (ξ 1 ) (k ≥ 1) in the dependency graph of F w.r.t. I that consists of the vertices in Y . Since F is in normal form, by Lemma 16, there are a path in the first-order dependency graph of F , where u 1 consists of object variables only, and a substitution θ that maps variables in u i to object names such that (u i θ) I = ξ i for all 1 ≤ i ≤ k, and (u k+1 θ) I = ξ 1 . There are two cases to consider.
Consider another path that is obtained similar to (58) except that the variables in the path are disjoint from the variables in (58). Clearly, there is a unifier γ for u k+1 and v 1 that maps the variables v 1 to terms, so that is another path in the first-order dependency graph of F . It is clear that using the same construction repeatedly, we can form an infinite path that visits infinitely many vertices in the first-order dependency graph. But this contradicts the assumption that F is bounded.

A.7 Proof of Proposition 11
We will use the following lemma in this section and the next section, which extends Theorem 2 in the work of Chen et al. (2006) that provides a few equivalent conditions for a program to have a finite complete set of loops to a disjunctive program and a sentence.
Lemma 18 (Chen et al., 2006, Thm. 2) For any formula F that contains no function constants of positive arity, the following conditions are equivalent: (a) F has a finite complete set of loops.
(b) There is a nonnegative integer N such that for every loop L of F , the number of variables in L is bounded by N .
(c) For any loop L of F and any atom A 1 and A 2 in L, the variables occurring in A 1 are identical to the variables occurring in A 2 .
(d) For any loop L of Ground σ(F )∪{c 1 ,c 2 } (F ) where c 1 , c 2 are two new object constants, there are no two atoms A 1 and A 2 in L such that A 1 mentions c 1 but A 2 does not or A 1 mentions c 2 but A 2 does not.
Proposition 11 For any rectified formula F that contains no function constants of positive arity, F is bounded iff F has a finite complete set of loops.
Proof. From left to right: Assume that F is bounded. Then every loop of F is finite. It follows that there exists a nonnegative integer N such that the number of variables in any loop is bounded by N . By Lemma 18 (b), F has a finite complete set of loops.
From right to left: Assume that F has a finite complete set of loops and, for the sake of contradiction, assume that it is not bounded. Without loss of generality, there is an infinite path p 1 (t 1 )σ 1 , p 2 (t 2 )σ 2 , . . .
in the first-order dependency graph of F that visits infinitely many vertices, where p i (t i ) are atoms occurring in F and σ i are substitutions. Since F is a finite string, it contains finitely many atoms. It follows that there is an atom p i (t i ) occurring in F with arbitrarily many substitutions σ such that atoms p i (t i )σ are contained in (59). Without loss of generality, consider the path p i (t i )σ i , p i+1 (t i+1 )σ i+1 , . . . , p i (t i )σ k that is contained in (59), where σ k and σ i agree on substituting object constants for variables in t i . Since t i σ i and t i σ k contain no function constant, there exists a substitution σ 0 that maps variables in t i σ k to terms in t i σ i so that t i σ k σ 0 = t i σ i . Consequently, {p i (x i )σ i σ 0 , p i+1 (x i+1 )σ i+1 σ 0 , . . . , p i (x i )σ k σ 0 } is a loop of F . Since the length of the path is arbitrarily large, there are arbitrarily many variables occurring in the loop. By Lemma 18 (b), it follows that F has no finite complete set of loops.

A.8 Proof of Proposition 10
Proposition 10 For any rectified sentence F (allowing function constants of positive arity), (a) checking whether F is bounded is not decidable; (b) checking whether F is atomic-tight is not decidable.
If F contains no function constants of positive arity, (c) checking whether F is bounded is decidable; (d) checking whether F is atomic-tight is decidable.

A.8.1 Proof of Part (a) and (b)
We show the proof of Part (a) first. The proof repeats, with minor modifications, the argument from the proof of Theorem 26 from the work of Bonatti (2004), which considers the following program Π M to simulate deterministic Turing machines M. for all final states s.
The Halting problem can be reduced to the problem of checking bounded formulas. More precisely, we show that Π M is bounded iff M terminates from every configuration. We first establish the following facts: (i) for every non-terminating computation of M on input x, there is a corresponding infinite path in the first-order dependency graph of Π M that visits infinitely many vertices; (ii) if there is an infinite path in the first-order dependency graph of Π M , then there is an infinite path starting with a legal encoding of an input and corresponds to a non-terminating computation of M.
Fact (i) is immediate from the definition of Π M : Note that the step counter (the last argument of t) ensures that the dependency graph is acyclic. Then, whenever M falls into a cycle, the dependency graph contains an infinite acyclic path that visits infinitely many vertices and hence the program is not bounded.
Fact (ii) can be proven as follows. Assume that there is an infinite path in the dependency graph. We observe that the first argument of every vertex in the path must be a legal state and the third argument of every vertex must be a legal tape value. Otherwise, there is no outgoing edge from the vertices in the dependency graph of Π M . So only the second, fourth and fifth arguments can contain variables or illegal values which were obtained from substitutions from the variables L, R, V and C. In this case, we can easily find substitutions from these variables or illegal values to legal values and apply them uniformly along the path, so that we obtain another infinite path starting from the vertex that correctly encodes a configuration of M and thus M has a corresponding non-terminating computation.
The claim follows immediately from the two facts: if M does not terminate on some computation, then by (i), Π M is unbounded. If Π M is unbounded, then by (ii), M does not terminate.
The same proof works for Part (b) as well. This is because the step counter (the last argument of t) ensures that the dependency graph is acyclic. Consequently, every infinite path in the dependency graph visits infinitely many vertices, so that Π M is atomic-tight iff Π M is bounded.

A.8.2 Proof of Part (c)
In view of the equivalence between (a) and (d) in Lemma 18, checking whether a formula F containing no function constants of positive arity has a finite complete set of loops can be done by examining a finite number of loops from a finite dependency graph, which is decidable. By Proposition 11, it follows that checking whether F is bounded is decidable.

A.8.3 Proof of Part (d)
For any sentence F that has no function constants of positive arity and any finite set c of object constants, Ground c (F ) is defined recursively. If F is an atomic formula thenGround c (F ) is F . The function Ground c commutes with all propositional connectives; quantifiers turn into finite conjunctions and disjunctions over all object constants occurring in c.
Lemma 19 Let c be the set consisting of all object constants occurring in F , and possibly a new object constant if F contains no object constants. F has a non-trivial loop iff Ground c (F ) has a non-trivial loop.
In order to check whether F is atomic-tight, we first check whether F is bounded, which is decidable. If F is not bounded, then F is not atomic-tight. Otherwise, in view of Lemma 19, checking whether F is atomic-tight is the same as checking whether Ground c (F ) is atomic-tight. Since F contains no function constants of positive arity, the dependency graph of Ground c (F ) is finite. So it is decidable to check whether the dependency graph of Ground c (F ) has a non-trivial loop.

A.9 Proof of Proposition 13
Lemma 20 Let F be a formula and Y a set of atoms. If no predicate constant occurring in Y occurs strictly positively in F , then NES F (Y ) is equivalent to F .

Proof. By induction.
Proposition 13 Let Π be a program with quantifiers, F the FOL-representation of Π, and Y a finite set of atoms. Under the assumption Π, formula QES Π (Y ) is equivalent to ¬NES F (Y ). If Π is a disjunctive program in normal form, then QES Π (Y ) is also equivalent to ES Π (Y ) under the assumption Π.
In view of Lemma 20, if H does not contain any strictly positive occurrence of a predicate constant that belongs to Y , NES H (Y ) is equivalent to H. Also, it follows from Lemma 2 and Lemma 8 that NES G (Y ) implies G. So NES G (Y )∧¬NES H (Y ) conflicts the assumption G → H when H does not contain any strictly positive occurrence of a predicate constant that belongs to Y . As a result, under the assumption F , formula (61) is equivalent to the disjunction of ∃x(NES G (Y ) ∧ ¬NES H (Y )) for all rules H ← G, where H contains a strictly positive occurrence of a predicate constant that belongs to Y . Note that G and H are formulas such that every occurrence of an implication in G and H belongs to a negative formula. By Lemma 4, (62) is equivalent to QES Π (Y ).
Between QES Π (Y ) and ES Π (Y ): When Π is a disjunctive program, QES Π (Y ) is the disjunction of over all rules (10) such that A contains a predicate constant that occurs in Y , where z is a list of variables in (10) but not in Y . On the other hand, ES Π (Y ) is the disjunction of over all rules (10) such that A contains a predicate constant that occurs in Y and Aσ∩Y = ∅, where z is a list of variables in Aσ ← Bσ, N σ but not in Y . It is clear that (64) implies (63). To prove that (63) implies (64), assume and consider two cases. If p(t )∈Y t = t for all p(t) ∈ A, then (65) is equivalent to which contradicts the assumption Π.
Otherwise, there exists p(t) ∈ A and p(t ) ∈ Y such that t = t . Since Π is in normal form, there exists σ that maps t to t , so that Aσ ∩ Y = ∅. Consequently, (65) is equivalent to Thus the claim follows.