Blocking and Pinpointing in Forest Tableaux

Axiom pinpointing has been introduced in description logics (DLs) to help the used understand the reasons why consequences hold by computing minimal subsets of the knowledge base that have the consequence in consideration. Several pinpointing algorithms have been described as extensions of the standard tableau-based reasoning algorithms for deciding consequences from DL knowledge bases. Although these extensions are based on similar ideas, they are all introduced for a particular tableau-based algorithm for a particular DL, using spe-ci(cid:12)c traits of them. In the past, we have developed a general approach for extending tableau-based algorithms into pinpointing algorithms. In this paper we explore some issues of termination of general tableaux and their pinpointing extensions. We also de(cid:12)ne a subclass of tableaux that allows the use of so-called blocking conditions, which stop the execution of the algorithm once a pattern is found, and adapt the pinpointing extensions accordingly, guaranteeing its correctness and termination.


Introduction
Description logics (DLs) [2] are a successful family of logic-based knowledge representation formalisms, which can be used to represent the conceptual knowledge of an application domain in a structured and formally wellunderstood way. They have been employed in several application domains, but perhaps their most notable success so far is the adoption of the DL-based language OWL [9] as standard ontology language for the semantic web. As a consequence of this, ontologies written in OWL are more usual. With the size of such ontologies, the importance of developing tools that support improving the quality of large DL-based ontologies grows. A common approach for detecting inconsistencies and infering other implicit consequences consists in applying tableau-based algorithms [6].
Whenever a consequence holds, it is usually desirable to understand the reasons for it, or even to decide how to change the ontology if it is an unwanted consequence. This is a hard task, and would be unrealistic to try to perform it without the help of an automated reasoning tool in ontologies with hundreds of thousands of axioms.
Axiom pinpointing has been introduced to provide that support. Most of the pinpointing algorithms described in the DL literature (see, e.g. [3,13,12,11,10]) are obtained as extensions of tableau-based reasoning algorithms [6] for deciding consequences of DL knowledge bases. These papers describe the pinpointing algorithms and prove their correctness only for a specific DL using a specific type of knowledge base, and it is in general not clear on how this approach can be generalized, nor which of the known tableau-based algorithms for DLs can be extended in a similar fashion. For example, the pinpointing extension described in [10], which can deal with general concept inclusions (GCIs) in the DL ALC, follows the approach introduced in [3], but since GCIs require the introduction of so-called blocking conditions into the tableau-based algorithm to ensure termination [6], there are some new non-trivial problems to be solved.
To avoid the need of designing a new pinpointing extension for every possible tableau-based algorithm, and needing to prove its correctness every time, we introduced in [4] a general approach for extending tableau-based algorithms to pinpointing algorithms. This approach, however, is limited only to tableau-based algorithms that terminate without any cylce-checking mechanisms such as blocking. Furthermore, even if the tableau-based algorithm terminates, it is not necessarily the case that the pinpointing extension does that too. In fact, we will show that the problem of verifying whether a tableau-based algorithm (or its pinpointing extension) terminates on every input is undecidable.
A subclass of tableau-based algorithm that ensure termination of both the original algorithm and its pinpointing extension was presented in [5]. The algorithms in this class produce forest-like models with a bounded depth. In this paper we use a similar approach to define the notion of blocking, and extend the pinpointing methods to apply also for the case when the tableau execution is stoped by means of blocking.
The paper is organized as follows. The next section introduces the main basic notions regarding the problem we are trying to solve. Afterwards, in Section 3, we briefly recall the notions of general tableaux and their pinpointing extension, and show that it is in general undecidable whether their execution stops after a finite number of steps. Finally, we introduce in Section 4 the notion of forest tableaux and show how blocking techniques can be applied to them. We also adapt the pinpointing extension accordingly, and show its correctness and termination for a specific kind of blocking called subset blocking. All this is followed by some conclusions and thoughts on future work.

Basic Definitions
We will begin by defining a general notion of inputs in which our decision algorithms are applied and the decision problems that they are supposed to solve.
Definition 1 (Axiomatized input, c-property) Let I and T be the sets of inputs and axioms, respectively. An axiomatized input over these sets is of the form (I, T ) where I ∈ I and T ∈ P f in (T) is a finite subset of T. A consequence property (or c-property for short) is a set P ⊆ I × P f in (T) such that (I, T ) ∈ P implies (I, T ) ∈ P for every T ⊇ T .
Intuitively, a c-property P holds if an input I "follows" from the axioms in T . Due to the monotonicity requirement, there can be some superfluous axioms; that is, axioms that are not necessary for the property to hold. We are interested in distinguishing these from the axioms that are responsible for the property.
Definition 2 Given an axiomatized input Γ = (I, T ) and a c-property P, a set of axioms S ⊆ T is called a minimal axiom set (MinA) for Γ w.r.t. P if (I, S) ∈ P and (I, S ) / ∈ P for every S ⊂ S. The set of all MinA for Γ w.r.t. P will be denoted as MIN P(Γ) .
Note that the notions of MinA and MaNA are only interesting if Γ ∈ P. Otherwise, the monotonicity requirement in P would entail that MIN P(Γ) = ∅.
Instead of directly trying to compute MIN P(Γ) , one can also try to compute a pinpointing formula. In order to define this formula, we assume that every axiom t ∈ T is labeled with a unique propositional variable lab(t). Let lab(T ) be the set of all propositional variables labeling axioms in T . A monotone Boolean formula over lab(T ) is a Boolean formula using variables in lab(T ) and only the connectives conjunction and disjunction. As usual, we identify a propositional valuation with the set of propositional variables it makes true. For a valuation V ⊆ lab(T ), let T V = {t ∈ T | lab(t) ∈ V}.
Definition 3 (pinpointing formula) Given a c-property P and an axiomatized input Γ = (I, T ), a monotone Boolean formula φ over lab(T ) is called a pinpointing formula for P and Γ if for every valuation V ⊆ lab(T ) it holds that (I, T V ) ∈ P iff V satisfies φ.
The next lemma follows directly from the definition of a pinpointing formula.
Lemma 4 Let P be a c-property, Γ = (I, T ) an axiomatized input, and φ a pinpointing formula for P and Γ. Then This lemma shows that if we want to obtain all MinA, it is enough to design an algorithm that computes a pinpointing formula. Conversely, the set MIN P(Γ) can be translated into the pinpointing formula

General Tableaux
General tableaux and their pinpointing extension were first introduced in [4]. For the rest of this paper we use V and D to denote countably infinite sets of variables and constants, respectively. A signature Σ is a set of predicate symbols, where each predicate P ∈ Σ is equipped with an arity. A Σassertion is of the form P (a 1 , . . . , a n ) where P ∈ Σ is an n-ary predicate and a 1 , . . . , a n ∈ D. Analogously, a Σ-pattern is of the form P (x 1 , . . . , x n ) where P ∈ Σ is an n-ary predicate and x 1 , . . . , x n ∈ V. If the signature is clear from the context, we will often just say pattern (assertion). For a set of assertions A (patterns B), cons(A) (var(B)) denotes the set of constants (variables) occurring in A (B).
A substitution is a mapping σ : V → D, where V is a finite set of variables. In this case, we say that σ is a substitution on V. If B is a set of patterns such that var(B) ⊆ V , then Bσ denotes the set of assertions obtained from B by replacing each variable by its σ-image. The substitution θ on V extends Definition 5 (Tableau) Let I and T be sets of inputs and axioms, respectively. A tableau for I and T is a tuple S = (Σ, · S , R, C) where: • Σ is a signature; • · S is function that maps every I ∈ I to a finite set of finite sets of Σ-assertions and every t ∈ T to a finite set of Σ-assertions; • R is a set of rules of the form (B 0 , S) → {B 1 , . . . , B m }, where for every i, 0 ≤ i ≤ m, B i is a finite set of Σ-patterns and S is a finite set of axioms; • C is a set of finite sets of Σ-patterns, called clashes.
Given a rule R : (B 0 , S) → {B 1 , . . . , B m }, the variable y is a fresh variable in R if it occurs in one of the sets B 1 , . . . , B m , but not in B 0 .
A S-state is a pair S = (A, T ) where A is a finite set of assertions and T a finite set of axioms. We extend the function · S to axiomatized inputs by setting A tableau works in the following way. Given an input (I, T ), we begin with the initial set of states M = (I, T ) S , and then use the rules in R to modify this set. Each rule application picks a S-state S from M and replaces it by finitely many new S-states S 1 , . . . , S m , each of them extending the first component of S. When no more rules are applicable to M we check whether all the elements of M contain a clash. If it is the case, then the input is accepted; otherwise, it is rejected.
Definition 6 (rule application, saturated, clash) Given a S-state S = (A, T ), a rule R : (B 0 , S) → {B 1 , . . . , B m }, and a substitution ρ on var(B 0 ), R is applicable to S with ρ if (i) S ⊆ T , (ii) B 0 ρ ⊆ A, and (iii) for every i, 1 ≤ i ≤ m and every substitution ρ on var Given a set of S-states M and a S-state S = (A, T ) ∈ M to which the rule R is applicable with substitution ρ, the application of R to S with ρ yields the new set where σ is a substitution on the variables occurring in R that extends ρ and maps the fresh variables of R to distinct new constants; i.e., constants not occurring in A.
If M is obtained from M by the application of R, then we write M → R M , or simply M → S M if it is not relevant which of the rules of the tableau S was applied. The reflexive-transitive closure of → S is denoted by * The S-state S = (A, T ) contains a clash if there is a C ∈ C and a substitution ρ on var(C) such that Cρ ⊆ A, and the set of S-states M is full of clashes if all its elements contain a clash.
We will proceed now to relate tableaux and c-properties, by describing the conditions under which a tableau is considered correct for a c-property.
Definition 7 (correctness) Let P be a c-property on axiomatized inputs over I and T, and S a tableau for I and T. We say that S is correct for P if the following holds for every axiomatized input Γ = (I, T ) over I and T: 1. S terminates on Γ; i.e., there is no infinite chain of rule applications 2. For every chain of rule applications M 0 → S . . . → S M n such that M 0 = Γ S and M n is saturated, we have Γ ∈ P iff M n is full of clashes.
The second condition in this definition requires that the algorithm gives the same answer independent of the chain of rule applications considered. Thus, if several rules are applicable simultaneously, the choice of which of them to apply next has no influence on the final result. However, this requirement is in fact built into our definition of rules and clashes. The first condition turns out to be more problematic. It requires that every chain of rule applications leads to a saturated state after a finite number of steps, regardless of the input given to the tableau. In general, it is undecidable whether a given tableau satisfies this requirement. To prove this, we will show that it is possible to simulate the execution of a Turing machine (TM) by means of tableau rule applications. A Turing machine is a quadruple M = (Q, Ω, δ, q 0 ) where Q is a finite set of states, q 0 ∈ Q is the initial state, Ω is a finite set of symbols containing the blank symbol , and δ : Q × Ω → (Q ∪ {h, "yes", "no"}) × Ω × {←, →} is the transition relation. For a given TM M, we will construct a tableau whose states simulate the configuration of the tape at each execution step of M.
To simulate a TM M = (Q, Ω, δ, q 0 ), we will use a predicate symbol for each symbol in Ω; that is, for every g ∈ Ω, the signature of our tableau will contain the unary predicate symbol T g . Intuitively, an assertion of the form T g (a) expresses that the symbol g appears in the current configuration of the tape. To simulate the position of the symbols, we add the unary predicate symbols F z for z ∈ Z to the signature, where F z (a) says that a is allocated in tape position z. The extra assertion H q (a) indicates the internal state of the machine. The constants in this setting work as gluing elements to express which symbols appear in which tape positions; they can also be used to identify the position of the head. The initial tape configuration can easily be expressed with the help of these assertions.
When the TM executes a transition step, it changes the symbol on the tape cell where the head is pointing, changes the internal state of the machine, and moves the head either to the left or to the right, according to the transition relation. To reflect these changes in the states of a tableau, we would have to remove the assertions expressing the position of the head, the state of the cell position and the internal state, and replace them accordingly. Our definition of tableau does not allow for assertions to be removed by a rule application, and hence those changes cannot be performed directly. We will instead add the unary predicate symbol ⊥ to our signature. Intuitively, the assertion ⊥(a) expresses that no assertion using the constant a should be taken into consideration any more.
A TM can in write over an arbitrary number of tape cells, although the initial word written on the tape is finite. All the rest of the tape cells are assumed to be written with the blank symbol . Since tableaux do not allow infinite sets of assertions as states, we cannot simply represent the infinite tape as such, but need to be able to add assertions of the form F z (a) as they are needed, along with the corresponding assertion T (a) stating the symbol in the new tape cell. These cells should only be added if the cell is not yet in use. Since rule applicability cannot check the non-existence of an assertion before triggering the rule, we will need to use non-deterministic rules for this.
Definition 8 (simulating tableau) Let M = (Q, Ω, δ, q 0 ) be a TM and let the set of inputs I ⊆ Ω * and the set of axioms T = ∅. The tableau simulating M is the tableau for I and T given by are in R, and if δ(q, g) = (q , g , ←), the rules Proposition 9 Let M be a TM. The tableau S M terminates on input (w, ∅) iff M halts on input w.
Since the halting problem for Turing machines is undecidable [7], then the problem of knowing whether a tableau terminates on every input or not must also be undecidable.
A correct tableau S can be extended to an algorithm that computes a pinpointing formula. Recall that for the definition of this formula we assume that every axiom t ∈ T is labeled with a unique propositional variable, lab(t) and the set of all propositional variables labeling an axiom in T is denoted by lab(T ). In the following, we further assume that the symbol , which always evaluates to true, also belongs to lab(T ). The pinpointing formula is a monotone Boolean formula over lab(T ).
For an axiomatized input Γ = (I, T ), the modified algorithm works also on sets of S-states, but now every assertion a occurring in the assertion component of a S-state is equipped with a label lab(a) consisting of a monotone Boolean formula over lab(T ). We call such S-states labeled S-states. In the inintial set of S-state M = (I, T ) S , every assertion is labeled with .
We must also modify the definition of rule application, so that it takes the labels of the assertions into account. Let A be a set of labeled assertions and ψ a monotone Boolean formula. The assertion a is ψ-insertable into A if either (i) a / ∈ A, or (ii) a ∈ A but ψ |= lab(a). Given a set B of assertions and a set A of labeled assertions, the set of ψ-insertable elements of B into A is defined as ins ψ (B, A) = {b ∈ B | b is ψ-insertable into A}. By ψ-inserting these insertable elements into A, we obtain the following new set of labeled assertions: Given a set of labeled S-states M and a labeled S-state S ∈ M to which the rule R is pinpointing applicable with substitution ρ, the pinpointing ap- where ψ is defined as above and σ is a substitution on the variables occurring in R that extends ρ and maps the fresh variables of R to distinct new constants.
If M is obtained from M by the pinpointing application of R, then we write M → R pin M or M → S pin M if the specific rule used is not relevant. As before, the reflexive-transitive closure of → S pin is denoted by * Consider a chain of pinpointing rule applications M 0 → S pin . . . → S pin M n such that M 0 = Γ S for an axiomatized input Γ and M n is pinpointing saturated. The label of an assertion in M n expresses which axioms are needed to obtain this assertion. A clash in a S-state of M n depends on the joint presence of certain assertions. Thus, we define the label of the clash as the conjunction of the labels of these assertions. Since it is enough to have just one clash per S-state S, the labels of different clashes in S are combined disjunctively. Finally, since we need a clash in every S-state of M n , the formulae obtained from the single S-states are again conjoined.
Definition 11 (clash formula) Let S = (A, T ) be a labeled S-state and A ⊆ A. A is a clash set in S if there is a clash C ∈ C and a substitution ρ on var(C) such that A = Cρ. The label of this clash set is ψ A = a∈A lab(a).
Let M = {S 1 , . . . , S n } be a set of labeled S-states. The clash formula induced by M is defined as Theorem 12 (correctness of pinpointing) Let P be a c-property on axiomatized inputs over I and T, and S a correct tableau for P. The following holds for every axiomatized input Γ = (I, T ) over I and T: For every chain of rule applications M 0 → S pin . . . → S pin M n such that M 0 = Γ S and M n is pinpointing saturated, the clash formula ψ Mn induced by M n is a pinpointing formula for P and Γ.
As with the original tableau methods, the correctness of a pinpointing extension assumes that this pinpointing algorithm terminates. Perhaps a little more surprising than Proposition 9 is the fact that, even if we restrict our attention to terminating tableaux, it is undecidable whether the pinpointing extension terminates. We can show this by a reduction similar to the one made for tableaux, but in this case constructing, for a TM M, a terminating tableau whose pinpointing extension simulates M.
Notice that none of the rules of the tableau S M in Definition 8 is applicable if there is no assertion of the form H q (x) describing the internal state of the machine. We can then create a tableau that starts with a state describing the whole input, but leaving aside the internal state of the machine, which we know that must be q 0 at the beginning of the execution of the TM. If this tableau never adds the assertion H q 0 (a 1 ) to the states, then the rules for simulating the execution of the TM are never triggered. Thus, we want to construct a tableau such that, when executed in the normal way, it always terminates but whose pinpointing extension adds the assertion H q 0 (a 1 ) if the correct axioms are used, starting this way the simulation of the TM. This tableau would then be terminating, but the termination of its pinpointing extension will depend on whether the TM it is simulating halts or not on every input.
We construct the tableau S pin M by allowing the set of axioms to be T = {ax 1 , ax 2 } and modifying S M from Definition 8 as follows. Add to the signature the unary predicate names P, P , Q 1 , Q 2 , and add to R the rules We also modify the definition of · S to repalce H q 0 (a 1 ) by P (a 1 ) in w S . This tableau is terminating. At the initial state, none of the rules from S M can be triggered since H q 0 (a 1 ) is not present. The only way to add this assertion is to apply Rule (3) above, which in turn can only be applied once an assertion of the form P (x) is present; that is, only after applying either Rule (1) or Rule (2). But the application of any of these rules immediately dissallows application of Rule (3). Hence, after at most two rule applications, S pin M reaches a saturated state.
If instead of executing this tableau we apply its pinpointing extension with both axioms ax 1 and ax 2 as input, after applying the first two rules, Rule (3) is pinpointing applicable. After its pinpointing application, we have three S pin M -states. Two of them are already saturated, but not the third one, which now contains the assertion H q 0 (a 1 ), the only missing piece for starting the simulation of M over the given input. This shows the following undecidability result.
Proposition 13 Let M be a TM. The pinpointing extension of S pin M terminates on input (w, {ax 1 , ax 2 }) iff M halts on input w.
As shown by Propositions 9 and 13, one of the main issues of this approach to pinpointing corresponds to dealing with termination. We can turn now our attention to see how this issues are dealt with in practice. One are where tableau-based decision procedures are widely used is in description logics. One common approach for ensuring the termination of the decision procedure consists on building a (non-terminating) tableau, and then extending it with appropriate an cycle-checking technique, also called blocking, that stops the execution of the algorithm. This method constructs partial tree models that can be completed into infinite tree models, or raveled into finite models.
A relaxed notion of rule application, called modified rule application was introduced in [4,5] as an aid to prove the correctness of the pinpointing extension. For this, the applicability condition (iii) from Definition 6 is removed. The same notion will be helpful in the following section, and is therefore here recalled.
where σ is a substitution on the variables occurring in R that extends ρ and maps the fresh variables of R to distinct new constants.
We will proceed now to show how this approach can be adapted to the pinpointing framework. In the next section, we will define a sub-class of tableau for which a blocking condition can be used to ensure termination, and also termination of their pinpointing extension.

Tableaux with Blocking
One of the reasons for termination of the tableau algorithms for certain DLs is that they create a tree structure with an out-degree bounded by a function of the size of the input formula. The nodes of these trees have labels that must be selected from a finite set. After a depth bounded also by the size of the input formula, one can reuse the information presented by the finite tree in order to obtain an infinite tree, simply by concatenating finite portions in the correct way. An example of this method is the tableau-based decision procedure for satisfiability of ALC-concepts w.r.t. GCIs [1]. The algorithm can be seen as generating a set of assertions of the form r(a, b) where r is a role and C(a) where C is an ALC-concept. The tree structure is induced by role assertions, and the nodes are labeled by sets of concepts; that is, a node a is labeled with {C 1 , . . . , C n } if C 1 (a), . . . , C n (a) are all the concept assertions involving a. When a node has a predecessor whose label is a superset of its own label, then that node stops being expanded, since the predecessor can be used to complete the tree. We say then that the node is blocked.
Things in general can be a little more complicated. For example, the algorithm that decides consistency of ALC-ABoxes (see [8,6]) does not construct a tree, but rather several trees growing out from the input ABox. Each of these trees can be treated as in the previous case, ensuring termination.
We want to formalize the notion of the tree structures built by the tableau algorithm, as well as the notion of blocking, within the general framework of tableaux. In order to be as general as possible, we do not want to restrict assertions to be built from unary and binary predicates only. For this reason, we allow predicates to have arbitrary arity, but restrict our assertions such that the states induce graph-like structures.
We must be able to distinguish between nodes and edges in the graph. Thus, we now assume that the signature Σ is partitioned into the sets Λ and ∆ where each predicate name P ∈ Λ is equipped with an arity n, while every predicate name r ∈ ∆ has a double arity 0 < m < n. Strictly speaking, the arity of r ∈ ∆ is n; however, the first m argument positions are grouped together, as are the last n − m. Intuitively, the elements of Λ will form the nodes of the graph-like structure, while the elements of ∆ will induce the edges.
Definition 15 (connected) Let B be a set of Σ-patterns (Σ-assertions), and x, y ∈ var(B) (a, b ∈ cons(B)). We say that x and y (a and b) constants a 0 , a 1 , . . . , a n ∈ cons(B)) and patterns P 1 , . . . , P n ∈ B ∩ Λ (assertions P 1 , . . . , P n ∈ B ∩ Λ) such that x = x 0 , y = x n (a = a 0 , b = a n ) and for every 1 ≤ i ≤ n it holds that We say that B is connected if, for every x, y ∈ var(B) (a, b ∈ cons(B)), we have x ∼ B y (a ∼ B b). If B is clear from the context, we will simply write x ∼ y to represent x ∼ B y.
Connected sets of assertions can be viewed as bundles joining the constants that appear in them. Nodes will be formed by maximal sets of assertions from ∆. An assertion from Λ will be treated as an edge that connects a node containing its parent constants with a node containing the descendant ones.
Definition 16 (B-graph) Let B be a set of assertions. A maximal connected subset N ⊆ B ∩ Λ is called a node in B. An assertion r ∈ B ∩ ∆ is called an edge in B if there are two nodes N 1 and N 2 in B such that ← − r ⊆ cons(N 1 ) and cons(N 2 ) ⊆ − → r . In this case, we say that r connects Recall that the tableau-based decision procedure for consistency of ALC-ABoxes starts with an ABox, that is, a graph, and extends it by trees that grow out of the nodes of this graph. We introduce now forest tableaux, which are meant to show a similar behaviour, based in the more general notion of graph structure introduced above.
Definition 17 (forest tableau) The tableau S = (Σ, · S , R, C) is called a forest tableau if for every axiomatized input Γ and every S ∈ Γ S , the state S is a graph structure, every clash C ∈ C is connected, and the following conditions hold for every rule (B 0 , S) → {B 1 , . . . , B m } and every 1 ≤ i ≤ m: 1. for every Σ-pattern r ∈ (B 0 ∪ B i ) ∩ ∆, there exists a Σ-pattern P ∈ B 0 ∩ Λ such that ← − r ⊆ var(P ).

for every Σ-pattern
We will briefly state the intuitions of these conditions. Condition 1 ensures that every edge, either old or newly introduced by a rule application, is connected to a parent node. In particular, this implies that rule application cannot add new parents for a node, and new nodes are connected to the rest of the graph structure. Condition 2 states that every new edge has only new constants as descendants; i.e., new edges never connect old nodes, but only generate new nodes. Condition 3 ensures that, even if several edges are added by a single rule application, these edges connect different nodes with the parent node, and thus every node has only one edge connecting it to its parent. Condition 4 states that whenever a non-edge assertion is added, it must belong to either an old node, or to the descendant node added by a new edge. Condition 5 states that addition of new edges must depend only on the assertions appearing in the parent nodes, and never in the presence of other edges. Finally, Condition 6 endures that the non-edge assertions triggering a rule application belong to the same node.
Given a forest tableau S and an S-state S, we can define a partial ordering < S on the nodes of S. Given an axiomatized input Γ, the family of strict partial orderings < S = {< S | Γ S * − → S M, S ∈ M} is called a compatible order for S and Γ if for all S-states S and S it holds that S ⊆ S implies that < S ⊆< S and < S contains the parent relation on S \ Γ S .
In order to ensure termination of a tableau, we will implement a cyclechecking technique called blocking that stops the application of rules. For this technique to be applicable, we must ensure that nodes cannot grow indefinitely; that is, that the number of assertions that can appear in a single node is bounded.
Definition 18 (cover) Let S = (Σ, · S , R, C) be a tableau and T a set of axioms. A set Ω ⊆ Σ is called a T -cover if, for every rule R : (B 0 , S) → {B 1 , . . . , B n } such that S ⊆ T and B 0 contains only predicates from Ω, the sets B i for i = 1, ..., n also contain only predicates from Ω. The tableau S is covered if, for every axiomatized input Γ = (I, T ), there is a finite T -cover Ω Γ such that every S-state in Γ S contains only predicates from Ω Γ .
Given such a covered tableau, every state that can be reached from an initial state in Γ S by applying rules from S contains only predicates from Ω Γ . We will show that this ensures that nodes cannot grow indefinitely. We proceed now to define what is a blocking condition and how it affects the execution of a tableau. For this we need the notion of substate. For two sets of assertions A and A we denote by A A the existance of a renaming function f : cons(A) → cons(A ) such that if the assertion P (a 1 , . . . , a k ) is in A, then P (f (a 1 ), . . . , f (a k )) is in A . A state S = (A, T ) is a substate of S = (A , T ), denoted as S S , if it holds that T ⊆ T and A A .
Definition 19 (blocking) Given a forest tableau S, an axiomatized input Γ, and < S a compatible order for S and Γ, let S be a S-state forming a graph structure A binary relation between nodes is a blocking relation w.r.t. < S if for every N 1 N 2 it holds that N 1 N 2 , N 2 < S N 1 , and cons(N 1 ) ∩ cons(Γ S ) = ∅. A node N is blocked if either there is a node N such that N N , or the predecessor node of N is blocked.
A non-generating rule is -applicable if it is applicable; a generating rule is -applicable if it is applicable with substitution ρ and the node containing all the constants in the range of ρ is not blocked.
Let M and M be finite sets of S-states. If M is obtained from M by the -application of R, then we write M → R M or simply M → S M if it is not relevant which of the rules of the tableau S was applied. A S-state issaturated if no rule is -applicable to it. A set of S-states M is -saturated if every S ∈ M is -saturated.
A forest tableau is -correct if it terminates and is sound and complete with respect to -application; i.e. the following two conditions hold for every axiomatized input Γ = (I, T ):

there is no infinite chain of rule applications
2. for every chain of rule applications Γ S = M 0 → S . . . → S M n such that M n is -saturated we have that Γ ∈ P iff M n is full of clashes.
According to this definition, for a node to be blocked either it or any of its predecessors should satisfy the blocking relation. We will show now that in fact, for -saturated states, being blocked entails that there is another node in the tree containing the same assertions, modulo constant renaming.
The intuition behind blocking is that we can reuse a node that was previously generated instead of generating a new one, if the old node contains the "same" assertions that the new one will have. This way, we can avoid repeating unnecessary work. Notice that there are several blocking conditions, depending on the ordering < S and binary relation chosen. We will use now the weakest notion of blocking possible, where < S is the family containing exclusively the parent-relation on the nodes in every S-state, and requires no additional conditions than those stated in Definition 19. This will be called subset blocking and denoted as ⊆-blocking. We will call a forest tableau using ⊆-blocking a ⊆-blocking tableau. It is possible to show that, under subset blocking, a forest tableau always terminates; nonetheless, we will prove a stronger result: that under subset blocking, the pinpointing extension of a forest tableau terminates in every case.
Since we have changed conditions under which a rule is applicable in a forest tableau with blocking to dissallow rule applications in nodes that are already blocked, we need to change the notion of pinpointing rule application accordingly. When executing the pinpointing algorithm, the blocking condition must also consider the labels on the states before stoping the execution. This is done in a straightforward manner. For two sets of labeled assertions A and A we denote by A pin A the existance of a renaming function f : cons(A) → cons(A ) such that if the assertion P (a 1 , . . . , a k ) is in A with label φ, then P (f (a 1 ), . . . , f (a k )) is in A with label ψ such that φ |= ψ. Definition 20 (pinpointing blocking) Let S be a forest tableau, Γ an axiomatized input and Γ and S a S-state for Γ. Given two nodes N, N , we will use the notation N ⊆ pin N if it holds that N < N, N pin N and cons(N) ∩ cons(Ga S ) = ∅, where < denotes the predecessor order in S \ Γ S . A node N is pinpointing ⊆-blocked if either there is a node N such that N ⊆ pin N , or the predecessor node of N is pinpointing ⊆-blocked.
A non-generating rule is pinpointing -applicable if it is pinpointing applicable; a generating rule is pinpointing -applicable if it is applicable with substitution ρ and the node containing all the constants in the range of ρ is not blocked.
Let M and M be finite sets of S-states. If M is obtained from M by the pinpointing -application of R, then we write M → R pin M or simply M → S pin M if it is not relevant which of the rules of the tableau S was applied. A S-state is pinpointing -saturated if no rule is pinpointingapplicable to it. A set of S-states M is pinpointing -saturated if every S ∈ M is pinpointing -saturated.
We will begin by proving that the pinpointing extenstion of a ⊆-blocking tableau terminates on every input. As a first step towards this goal, we will show that if a tree in the forest generated by rule applications reaches a depth big enough, then we will be able to find a blocked node in every branch. This follows easily from the next lemma. The lemma is in fact shown for a more general case, using the modified rule applications defined in the previous section.
Lemma 21 Let S be a ⊆-blocking tableau and S 0 → S m S 1 → S m · · · a sequence of modified rule applications. Then, for every S i = (A i , T ) and P ∈ A i ∩ Λ, either cons(P ) ⊆ cons(A 0 ) or there are r ∈ A i ∩ ∆ and Q ∈ A i ∩ Λ such that ← − r ⊆ cons(Q) and cons(P ) ⊆ − → r .
Proof. The proof is by induction on i. For S 0 the result is trivial. Suppose now that it holds for S i and that the rule R : (B 0 , S) → {B 1 , . . . , B m } is applied to S i to obtain S i+1 = (A i+1 , T ), where A i+1 = A i ∪ B j σ for some substitution σ and some j, 1 ≤ j ≤ m. Let P ∈ A i+1 ∩ Λ. If P ∈ A i , then by the induction hypothesis and the fact that A i ⊆ A i+1 , the result holds. Otherwise, P was added by the application of R. By Condition 4 of Definition 17, we have that either (i) there is r ∈ We analyze Case (ii) first. Since R was applied with substitution σ, we have that B 0 σ ⊆ A i , and thus Q ∈ A i ∩ Λ. By the induction hypothesis, either cons(Q) ⊆ cons(A 0 ) or ← − r ⊆ cons(Q ), cons(Q) ⊆ − → r for r, Q ∈ A i . In both cases the transitivity of ⊆ yields the desired result. We will analyze now Case (i). We have here that cons(P ) ⊆ − → r and r ∈ (B 0 ∪B j )σ. By Condition 1 of Definition 17 there must exist a Q ∈ B 0 σ ⊆ A i such that ← − r ⊆ cons(Q), which finishes the proof.
A couple of remarks come in place before proving termination of the pinpointing extension of ⊆-blocking tableaux. Notice first that Condition 6 of Definition 17 ensures that all the assertions in Λ triggering a rule applications must all belong to the same node. Second, by Lemma 21, for every new node N (i.e., a node that was not present in the initial state) and assertion P ∈ N there is an edge r such that cons(P ) ⊆ − → r . Since distinct edges have disjoint sets of descendants (Condition 3 of Definition 17, any other assertion Q ∈ N also satisfies cons(Q) ⊆ − → r . Thus, all the constants occurring in a node all belong to the descendant set of the edge by which the node was created.
Theorem 22 Let S be a ⊆-blocking tableau, then its pinpointing extension terminates on every input.
Proof. Suppose that there is an input Γ = (I, T ) for which ther is an infinite sequence of pinpointing rule applications S 0 → S pin S 1 → S pin · · · , where S 0 ∈ Γ S . Since S is a covered tableau, there is a finite T -cover Ω Γ such that the assertions in S i use only predicate symbols from Ω Γ , for every i ≥ 0. As already noted, every node has a fixed finite set of constants that can appear in its assertions. This set is either the set of constants occurring in S 0 (for an old node) or the descendants in the unique edge by which the node was created (for a new node). Since the T -cover is finite, the assertions that can occur in a given node form a finite set. Each of these assertions my repeatedly have its label modified by pinpointing rule applications; however, every pinpointing rule application produces a more general label, in the sense that the new monotone Boolean formula has more models than the previous one. Since these formulas are built over a finite set of propositional variables, this can happen only finitely often. Analogously, the label of a given edge can be changed only finitely often.
Hence, to produce a non-terminating sequence of rule applications, infinitely many new nodes must be added. Conditions 4 and 1 of Definition 17 ensure that every newly added node N is created as a successor for an existing node with a unique edge r ∈ ∆ joining them, and all the constants in N are new constants appearing in − → r . If infinitely many new nodes are created, then either there is a node with infinitely many direct successors, or an infinite chain of nodes, each one being a successor of the previous, is created.
The number of constants appearing in a new node is bounded by the largest cardinality of a predicate name r ∈ ∆; hence, there can only be finitely many different labelled nodes, up to constant renaming. Then, for every chain of nodes N 0 , N 1 , . . . , N m which is sufficiently long (i.e., where m is larger than the number of distinct labelled nodes possible) there must exist 1 ≤ n < n ≤ m such that N n pin N n , and thus N n is pinpointing ⊆-blocked by N n . Thus, the second case above is not possible.
Consider now the first case; that is, that there is a node N for which infinitely many successors are created. As stated before, the constants in N are from a fixed finite set of constants C, and the predicate symbols that can occur in the applied rules must all belong to the finite T -cover Ω Γ . Thus, up to variable renaming, there are only finitely many rules that can be applied to N, and there are only finitely many ways of replacing the variables in the left-hand side of rules by constants from C. Moreover, the fresh variables in the right-hand side are always replaced by distinct new constants. Thus, for a fixed rule and a fixed substitution σ replacing the variables in the left-hand side of this rules by constants from C, the assertions introduced by two different applications of this rule using σ only differ by a renaming of these new constants. By the way pinpointing rule applicability is defined, such renamed variants can only be added as longs as their labels are not equivalent. But there are only finitely many labels up to propositional equivalence. Thus, N can in fact obtain only a finite number of successors. Hence, the pinpointing extension of the tableau S must always terminate.
Notice that if a rule is applicable in the normal tableau sense, then it is also pinpointing applicable. Thus, termination of the pinpointing extension implies termination of the original tableau.
Corollary 23 A ⊆-blocking forest tableau terminates on every input.
We have now shown that the problems relating termination do not apply to forest tableaux with subset blocking. Unfortunately, since blocking changes the applicability conditions for rules, and we had to adapt the pinpointing extension accordingly, the previous proofs of correctness of these extensions are not valid in this framework. Hence, we need to prove the correctness of blocking pinpointing extensions; that is, that they still compute a pinpointing formula for the property. We will show this with the help of the raveled versions of S-states. Suppose that M is a set of states such that Γ S → S M. Then S = (A, T ) ∈ M is a graph-structure that consists on a set of tree-like structures growing out from a graph structure appearing in Γ S , we call this a forest-like structure. For every blocked node N 1 , we remove all its descendants. This way, we obtain another forest-like structure, where blocked nodes only appear as leafs of the trees. For every pair of nodes nodes N 1 and N 2 in S such that N 1 N 2 we know that N 1 N 2 and hence there is a renaming function f : cons(N 1 ) → cons(N 2 ). We modify the (only) assertion r( ← − r , − → r ) ∈ ∆ ∩ A with − → r = cons(N 1 ) to r( ← − r , f ( − → r )) and then remove N 1 . The graph-structure obtained this way is called the raveled version of S, and denoted as S . If M is a set of S-states, then its raveled version is M = {S | S ∈ M}.
As the raveling process removes all the blocked nodes, one could think that this may lead to a loss of some information contained in the original Sstate. The next lemma shows that this is not the case, since all the assertions appearing in a blocked node also appear in a node of smaller depth.
Proposition 24 Let S be -saturated and N a node in S. If N is blocked, then there is another node N of S such that N N and the depth of N is smaller than the depth of N.
Proof. The proof goes by induction on the structure of S. If N is blocked, then either there is a N such that N N or the parent node of N is blocked. In the first case the result holds trivially. We will focus now on the second case, assuming that the result holds for the parent node M of N; thus, there is a node M such that M M . Since we are dealing with a blocking tableau, N could only be created by a rule application using the node M; as M M , the same rule could be applied to M ; thus, there is a descendant N of M that is joined to M by an edge equivalent (modulo renaming) to the edge joining M to N. Analogously, any rule application that could be applied to M or N to add assertions in N would also be applicable in M or N , respectively, to add equivalent assertions in N . Thus, N N .
A trivial consequence of this proposition is that raveling has no influence in the presence of clashes in -saturated states. Since clashes are always connected sets of patterns, any valuation that maps them to a state has to actually map them to a node; as we have seen, if we have a node in a -saturated state S, then an equivalent node appears in S .
Corollary 25 Let S be -saturated. S is clash-free iff S is clash-free.
We can relate -saturatedness to saturatedness in the general sense by means of the raveled versions of states. This way, we can reuse some of the results shown for the general tableau framework that will be helpful for showing the correctness of the pinpointing extensions of blocking tableau.
Lemma 26 If S is -saturated, then S is saturated.
Proof. Let S = (A, T ), S = (A , T ) and R : (B 0 , S) → {B 1 , . . . , B m } be applicable to S with substitution ρ. Assume first that R is a generating rule. Then B 0 ρ is connected, and hence belongs to a node in S , and since raveling never modifies any nodes in the graph structure, except from removing some, B 0 ρ must also be a node in S. In particular, B 0 ρ ⊆ A. Since S in -saturated, R is not -applicable to it. This means that either the node containing B 0 ρ is blocked, or there is a substitution σ extending ρ such that B i σ ⊆ A for some 1 ≤ i ≤ m. Since raveling removes all blocked nodes and B 0 ρ ⊆ A , the first case cannot occur; thus, the second option must be the case. We can then construct a substitution σ extending ρ such that B i σ ⊆ A as follows: for every x ∈ m j=0 var(B j ), if σ(x) is a constant in a non-blocked node of A, then σ (x) = σ(x); if σ(x) belongs to a node N 1 blocked by N 2 , then in particular N 1 N 2 and thus there exists a function f : cons(N 1 ) → cons(N 2 ); in this case define σ (x) = f (σ(x)). This violates the condition for R to be applicable to S with substitution ρ, contradicting this way our initial assumption.
Suppose now that R is a non-generating rule. If B 0 ρ ⊆ A, sinceapplicability coincides with regular applicability for non-generating rules, the proof is analogous to the one for the previous case; thus, we can assume w.l.o.g. that B 0 ρ ⊆ A. Then, B 0 ρ must contain edges that were added by the raveling process; these edges are of the form p( ← − r , f r ( − → r )), where N ⊆ − → r for a blocked node N, and f r is the function given by the definition of blocking. Since S is a forest tableau, the sets − → r are pairwise disjoint. For each constant B 0 ρ\ Λ there is a constant a r such that f r (a r ) = a. We construct the valuation ρ as follows: and ρ(x) = a. In particular, B 0 ρ ⊆ A. Let N be the node of S containing B 0 ρ ∩ Λ. By the way raveling was defined, we know that if N is the node of S containing B 0 ρ ∩ Λ, then N = N . Since R is non-generating, by Conditions 4 and 6 of Definition 17 it must be the case that var(B i ) ⊆ var(B 0 ∩ Λ) for all 1 ≤ i ≤ m. Since S is -saturated, then R is not applicable to S with substitution ρ ; this implies that there must exist a 1 ≤ i ≤ m such that B i ρ ⊆ A. In particular, B i ρ is contained in the node N, and since ρ coincides with ρ on every variable of B i , B i ρ ⊆ A . Thus, R is not applicable to S .
As in the general case, the proof of correctness of pinpointing extensions will use projections of S-states. Recall that given a set T of labeled axioms, a propositional valuation V induces the subset T V = {t ∈ T | lab(t) ∈ V}. Analogously, for a set A of labeled assertions, the valuation V induces the subset There is also a close connection between pinpointing -saturatedness of a set of labeled S-states and -saturatedness of its projection.
Lemma 28 Let M be a finite set of labeled S-states and V a propositional valuation. If M is pinpointing -saturated, then V(M) is -saturated.
Proof. Suppose that there is a S-state S = (A, T ) ∈ M and a rule R = (B 0 , S) → {B 1 , . . . , B m } such that R is -applicable to V(S) with substitution ρ. If R is a non-generating rule, then it would also be applicable (in the normal sense) to V(S) with substitution ρ, and hence the proof given for the general case [5] applies here too; thus we assume that R is a generating rule. This means that S ⊆ T V , B 0 ρ ⊆ A V , for every i, 1 ≤ i ≤ m and every substitution ρ on var(B 0 ∪ B i ) extending ρ it holds that B i ρ ⊆ A V , and the node containing all the constants in the range of ρ is not blocked.
We will show now that R is pinpointing -applicable to S with the same substitution ρ. Since S ⊆ T V ⊆ T and B 0 ρ ⊆ A V ⊆ A, the first two conditions of pinpointing applicability are satisfied. For the third condition, consider an i and a substitution ρ on var(B 0 ∪ B i ) extending ρ. We must show that ins ψ (B i ρ , A) = ∅ where ψ = b∈B 0 lab(bρ)∧ s∈S lab(s). Note that Thus bρ / ∈ A or V does not satisfy lab(bρ ). In the first case, bρ is clearly ψ-insertable into A. In the second case, ψ |= lab(bρ ) since V satisfies ψ, and thus bρ is again ψ-insertable into A.
We have shown up to now that R is pinpointing applicable to S with valuation ρ. It remains to show that the node containing all the constants in the range of ρ is not pinpointing ⊆-blocked. Call this node N. Since N V is not blocked, for every predecessor node M of N it holds that N V M V ; thus for every renaming function f : cons(N V ) → cons(M V ) there is an assertion a ∈ N V such that f (a) / ∈ M V . Then, either f (a) / ∈ M or f (a) ∈ M but ψ |= lab(f (a)). In both cases it holds that N pin M, and hence N is not pinpointing ⊆-blocked.
The idea of the projections of states is that they simulate the behaviour of the tableau in case that the input (I, T V ) is given. Unfortunately, this does not work so easily, since there are rules that could be pinpointing applied to a S-state but not to its projection. We can overcome this problem by using modified rule applications, analogously to the way they are used in [5]. The following proposition was shown in [5]. To see this, recall that for sets of states N and N 0 , if N 0 is saturated and there are S ∈ N and S 0 ∈ N 0 with S S 0 , then for every N → S m N there is a S ∈ N such that S S 0 [4]. Since for every S ∈ M there is a S 0 ∈ M 0 with S 0 S and M is saturated (Lemma 26), we know that for every S ∈ M there is a S ∈ M such that S S . Thus, if M is full of clashes, so is M (Corollary 25). The same argument can be used analogously for proving the other direction.
With all this, we can now proceed to proving the correctness of the pinpointing extension of a blocking tableau.
Theorem 30 (correctness of pinpointing) Let P be a c-property on axiomatized inputs over I and T, and S a correct ⊆-blocking tableau for P. Then the following holds for every axiomatized input Γ = (I, T ) over I and T: For every chain of rule applications M 0 → S pin . . . → S pin M n such that M 0 = Γ S and M n is pinpointing -saturated, the clash formula ψ Mn induced by M n is a pinpointing formula for P and Γ.
Proof. Let Γ = (I, T ) be an axiomatized input, and assume that Γ S = M 0 * − → S pin M n with M pinpointing -saturated. To show that ψ M is a pinpointing formula for P, we have to show that for every propositional valuation V, it holds that (I, T V ) ∈ P iff V satisfies ψ M .
Let N 0 = (I, T V ) S . Since S terminates, there is a -saturated set N such that N 0 * We have thus shown how one can correctly adapt pinpointing to the wellknown subset blocking condition. Unfortunately, our framework cannot deal with the DL constructors regarding inverses of roles, as the forest tableaux defined in [5] do. If we weaken the restrictions of forest tableaux to allow such constructors, then Lemma 26 does not hold anymore unless we use a stronger notion of blocking (equality blocking) as used in the DL literature.

Conclusions
In this paper we have shown that the problem of deciding termination of general tableaux is undecidable. Furthermore, even deciding termination of the pinpointing extension of terminating tableaux is an undecidable problem. To overcome this drawback, we introduced the notion of forest tableaux and how they can be used to specify blocking conditions that ensure termination of both the tableaux and its pinpointing extension.
The framework presented here can only deal with the weakest notion of blocking, also known as subset blocking. Future research will try to extend this framework to stronger versions of blocking such as equality blocking, which is widely used in DLs for dealing with inverse roles.