1 Introduction

In this paper we study the problem of P-interpolation, a problem strongly related to interpolation w.r.t. logical theories. The problem can be formulated as follows:

Let \({\mathcal T}\) be a theory, A and B be conjunctions of ground literals in the signature of \({\mathcal T}\), possibly with additional constants, P a predicate symbol in the signature of \(\mathcal{T}\), a a constant occurring in A and b a constant occurring in B. Assume that \(A \wedge B \models _\mathcal{T} a P b\). Can we find a ground term t containing only constants and function symbols “shared” by A and B, such that \(A \wedge B \models _\mathcal{T} a P t ~\wedge ~ t P b\)?

Interpolation has been studied in classical and non-classical logics and in extensions and combinations of theories; and is very important in program verification and also in the area of description logics. The first algorithms for interpolant generation in program verification required explicit constructions and “separations” of proofs [14, 16]. In [13] interpolants are computed using variants of resolution. For certain theories, the “separation” of proofs relied on the possibility of “separating” atoms, i.e. on P-interpolation. Equality interpolation is used in [34] for devising an interpolation method in combinations of theories with disjoint signatures. In [22, 24] and [19], for instance, we consider interpolation problems in certain classes of extensions \(\mathcal{T}_0 \cup \mathcal{K}\) of a base theory \(\mathcal{T}_0\) and use a hierarchical approach to compute interpolants. The method relies on the P-interpolation property of the base theory \(\mathcal{T}_0\). In most of the applications we considered, P is the equality predicate \(\approx \) or a predicate \(\le \) with the property that in all models of \(\mathcal{T}_0\), the interpretation of \(\le \) is a partial ordering. Since at that time our main interest was the study of interpolation problems, in [22, 24] and [19] P-interpolation is only used in order to help in giving methods for interpolation and not as a goal in itself. However, in several papers in the area of description logics (cf. e.g. [8, 31]) when defining the notion of interpolation in description logics the authors define in fact a notion of \(\sqsubseteq \)-interpolation. In [8] (Thm. 4) it is proved that \(\mathcal{E}\mathcal{L}^+\) allows interpolation (in fact, the notion of \(\sqsubseteq \)-interpolation mentioned above) for safe role inclusions – this is related to the notion of “sharing” considered in [24], cf. also Sect. 4. The proof technique in [8] uses simulations. In this paper, we analyze the property of P-interpolation in theory extensions, propose a method for solving it based on hierarchical reasoning and satisfiability modulo theories, and formulate the \(\sqsubseteq \)-interpolation problem for \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\) as a \(\le \)-interpolation problem in a theory of semilattices with operators. We first studied \(\le \)-interpolation in [17] in the context of description logics; the \(\sqsubseteq \)-interpolating concept descriptions were regarded as a form of “high-level” explanations. In this paper we further extend the work in [17]. The general approach we propose opens the possibility of applying similar methods to more general classes of non-classical logics (including e.g. substructural logics or the logics with monotone operators studied in [27, 28]) or in verification (to consider more general theory extensions than those with uninterpreted function symbols analyzed in [19]). The main results can be summarized as follows:

  • We propose variants of the definitions of convexity, P-interpolation and Beth definability relative to a subsignature.

  • We describe a hierarchical P-interpolation method in certain classes of local theory extensions.

  • We illustrate the applicability of these results to prove that certain classes of semilattices with monotone operators have the property of \(\le \)-interpolation for a certain interpretation of “shared” function symbols.

  • We show, by giving a counterexample, that \(\le \)-interpolation does not hold if by “shared” symbols we mean just the common symbols.

  • We indicate how these results can be used to prove or disprove various notions of interpolation for the description logics \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\).

Structure of the Paper: In Sect. 2 and 3 basic notions are introduced, and some results needed later are proved. In Sect. 4 we identify classes of local theory extensions allowing P-interpolation and propose a hierarchical method of computing P-interpolants. This is used in Sect. 5 to study the existence of \(\le \)-interpolation in classes of semilattices with monotone operators. In Sect. 6 we use the links between the theory of semilattices with operators and the description logics \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\), and show how the results can be used in the study of these logics. The details of the proofs and additional examples can be found in [18].

2 Theories, Convexity, P-Interpolation, Beth Definability

We assume known standard definitions from first-order logic such as \(\varPi \)-structures, models, homomorphisms, logical entailment, satisfiability, unsatisfiability.

We consider signatures of the form \(\varPi = (\varSigma , \textsf{Pred})\), where \(\varSigma \) is a family of function symbols and \(\textsf{Pred}\) a family of predicate symbols. In this paper, a theory \(\mathcal{T}\) is described by a set of closed formulae (the axioms of the theory). We call a theory axiomatized by a set of (universally quantified) equations an equational theory. In this paper, we denote by \(\textsf{Mod}(\mathcal{T})\) the set of all models of \(\mathcal{T}\). We denote “falsum” with \(\perp \). If F and G are formulae we write \(F \models G\) (resp. \(F \models _\mathcal{T} G\)) to express the fact that every model of F (resp. every model of F which is also a model of \(\mathcal{T}\)) is a model of G. The definitions can be extended in a natural way to the case when F is a set of formulae; in this case, \(F \models _\mathcal{T} G\) if and only if \(\mathcal{T} \cup F \models G\). \(F \models \perp \) means that F is unsatisfiable; \(F \models _{\mathcal{T}} \perp \) means that there is no model of \(\mathcal{T}\) which is also a model of F. If there is a model of \(\mathcal{T}\) which is also a model of F we say that F is \(\mathcal{T}\)-consistent. If C is a fixed countable set of fresh constants, we denote by \(\varPi ^C\) the extension of \(\varPi \) with constants in C.

Convexity and P-Convexity. We can define a notion of convexity w.r.t. a subset P of the set of predicates.

Definition 1

A theory \(\mathcal{T}\) with signature \(\varPi = (\varSigma , \textsf{Pred})\) is convex with respect to a subset P of \(\textsf{Pred}\) (which may include also equality \(\approx \)) if for all conjunctions \(\Gamma \) of ground \(\varPi ^C\)-atoms (with additional constants in a set C), relations \(R_1, \dots , R_m \in P\) and tuples of \(\varPi ^C\)-terms of corresponding arity \({\overline{t}}_1, \dots , {\overline{t}}_m\) such that \(\Gamma \models _{\mathcal{T}} \bigvee _{i = 1}^m R_i({\overline{t}}_i)\) there exists \(i_0 \in \{ 1, \dots , m \}\) such that \(\Gamma \models _{\mathcal{T}} R_{i_0}({\overline{t}}_{i_0})\).

We will call a theory \(\mathcal{T}\) convex if it is \(\textsf{Pred} \cup \{\approx \}\)-convex. The following result is well-known (cf. e.g. [5, 10, 32]):

Theorem 1

Let \(\mathcal{T}\) be a theory and let \(\textsf{Mod}(\mathcal{T})\) be the class of models of \(\mathcal{T}\).

  1. (i)

    If \(\textsf{Mod}(\mathcal{T})\) is closed under direct products then \(\mathcal{T}\) is convex.

  2. (ii)

    If \(\mathcal{T}\) is a universal theory and \(\mathcal{T}\) is convex, then \(\mathcal{T}\) has an axiomatization given by Horn clauses, hence \(\textsf{Mod}(\mathcal{T})\) is closed under direct products.

Corollary 2

Let \(\mathcal{T}_1\), \(\mathcal{T}_2\) be two theories with signatures \(\varPi _1, \varPi _2\). If \(\textsf{Mod}(\mathcal{T}_1)\) and \(\textsf{Mod}(\mathcal{T}_2)\) are closed under direct products, then \(\mathcal{T}_1 \cup \mathcal{T}_2\) is convex.

Proof:

Follows from the fact that if \(\textsf{Mod}(\mathcal{T}_1)\) and \(\textsf{Mod}(\mathcal{T}_2)\) are closed under direct products then so is also \(\textsf{Mod}(\mathcal{T}_1 \cup \mathcal{T}_2)\) and from Theorem 1.    \(\Box \)

From Theorem 1 and Corollary 2 it immediately follows that if \(\mathcal{T}_1\) and \(\mathcal{T}_2\) are universal theories and convex then \(\mathcal{T}_1 \cup \mathcal{T}_2\) is convex. In particular, every extension of a convex universal theory \(\mathcal{T}_0\) with a set of new function symbols axiomatized by a set \(\mathcal{K}\) of Horn clauses is convex.

Equality Interpolation, R-Interpolation. We say that a convex theory \(\mathcal{T}\) has the equality interpolation property if for every conjunction of ground \(\varPi ^C\)-literals \(A(\overline{c}, \overline{a_1}, a)\) and \(B(\overline{c}, \overline{b_1}, b)\), if \(A \wedge B \models _\mathcal{T} a \approx b\) then there exists a term \(t(\overline{c})\) containing only the shared constants \(\overline{c}\) such that \(A \wedge B \models _\mathcal{T} a \approx t(\overline{c}) ~\wedge ~ t(\overline{c}) \approx b\).

Sometimes, the theories and theory extensions we study contain interpreted symbols in a set \(\varPi _0 = (\varSigma _0, \textsf{Pred})\) and non-interpreted function symbols in a set \(\varSigma _1\). The classical definition for equality interpolation for a theory \(\mathcal{T}\) mentioned above allows the term \(t(\overline{c})\) to contain all function symbols in the signature of \(\mathcal{T}\) – these symbols are in this case all seen as being interpreted. If we distinguish between interpreted and uninterpreted functions we might require that the intermediate term \(t(\overline{c})\) contains only “shared” uninterpreted functions and common constants.

If \(\varSigma _A\) and \(\varSigma _B\) are the uninterpreted function symbols occurring in A resp. B, and \(\varTheta \) is a closure operator, by “shared” uninterpreted functions we can mean:

  • Intersection-shared symbols: \({\bigcap }\)-\(\textsf{Shared}(A, B) = \varSigma _A \cap \varSigma _B\), or

  • \(\varTheta \)-shared symbols: \(\varTheta \)-\(\textsf{Shared}(A, B) = \varTheta (\varSigma _A) \cap \varTheta (\varSigma _B)\).

Example 1

Let \(\mathcal{T}= \mathcal{T}_0 \cup \mathcal{K}\) be the extension of a theory \(\mathcal{T}_0\) with set of interpreted function symbols \(\varSigma _0\) with a set \(\mathcal{K}\) of clauses containing new uninterpreted function symbols in a set \(\varSigma _1\). If A and B are sets of atoms in the signature of \(\mathcal{T}\) containing additional constants in a set C and uninterpreted function symbols \(\varSigma _A\), \(\varSigma _B\) then the intersection-shared uninterpreted function symbols of A and B are \(\varSigma _A \cap \varSigma _B\). Let \(\varTheta _{\mathcal{K}}\) be defined for every \(\varSigma \subseteq \varSigma _1\) by \(\varTheta _{\mathcal{K}}(\varSigma ) = \bigcup _{f \in \varSigma } \{ g \in \varSigma _1 \mid g \sim ^*_{\mathcal{K}} f \}\), where \(\sim ^*_{\mathcal{K}}\) is the equivalence relation induced by the relation \(f \sim _{\mathcal{K}} g\) iff there exists \(C {\in } \mathcal{K}\) s.t. fg both occur in C.

Then the \(\varTheta _{\mathcal{K}}\)-shared symbols are \(\varTheta _{\mathcal{K}}(\varSigma _A) \cap \varTheta _{\mathcal{K}}(\varSigma _B)\). In particular, if A contains a function symbol f and B contains a symbol g such that fg occur both in a clause in \(\mathcal{K}\), then f and g are considered to be \(\varTheta _\mathcal{K}\)-shared by A, B.    \(\Box \)

We also might be interested in similar properties for other binary relations. We define an R-interpolation property, where R is a binary predicate symbol in \(\varPi \).

Definition 2

Let \(R \in \textsf{Pred} \cup \{ \approx \}\) be a binary predicate symbol. An \(\{R\}\)-convex theory \(\mathcal{T}\) with uninterpreted symbols \(\varSigma _1\) has the R-interpolation property if for all conjunctions of ground atoms \(A(\overline{c}, \overline{a_1}, a)\) and \(B(\overline{c}, \overline{b_1}, b)\), if \(A \wedge B \models _\mathcal{T} a R b\) then there exists a term \(t(\overline{c})\) containing only common constants \(\overline{c}\) and only “shared” uninterpreted symbols in \(\varSigma _1\) such that \(A \wedge B \models _\mathcal{T} a R t(\overline{c}) ~\wedge ~ t(\overline{c}) R b\).

If \(P \subseteq \textsf{Pred}\), we say that a theory has the P -interpolation property if it has the R-interpolation property for every \(R \in P\). In Sect. 5 we give examples of theories with this property and show that a theory may not have the R-interpolation property for a predicate symbol R if we use the notion of intersection-shared symbols, but has the R-interpolation property if we consider the less restrictive notion of \(\varTheta \)-shared symbols for a suitably defined closure operator \(\varTheta \).

Beth Definability. Let \(\mathcal{T}\) be a theory with signature \(\varPi = (\varSigma _0 \cup \varSigma _1, \textsf{Pred})\), where the function symbols in \(\varSigma _0\) are interpreted function symbols and the function symbols in \(\varSigma _1\) are regarded as uninterpreted function symbols, and let C be a set of additional constants. We define a notion of Beth definability relative to a subset \(\varSigma _S \subseteq \varSigma _1 \cup C\) of non-interpreted function symbols and constants similar to the one introduced in [31], which we refer to as \(\varSigma _S\)-Beth definability.

Let \(\varSigma _S \subseteq \varSigma _1 \cup C\), let \(\varSigma _r = \varSigma _1 \backslash \varSigma _S\), and let \(\varPi ' = (\varSigma _0 \cup (\varSigma _S \cap \varSigma _1) \cup \varSigma '_r, \textsf{Pred})\), where \(\varSigma '_r = \{ f' \mid f \in \varSigma _1 \backslash \varSigma _S \}\) is the signature obtained by replacing all uninterpreted function symbols in \(\varSigma _1\) which are not in \(\varSigma _S\) with new primed copies. If \(\phi \) is a \(\varPi ^C\)-formula, we will denote by \(\phi '\) the formula obtained from \(\phi \) by replacing all uninterpreted function symbols in \(\varSigma _1 \backslash \varSigma _S\) and all constants in \(C \backslash \varSigma _S\) with distinct, primed versions. The interpreted function symbols and the uninterpreted function symbols and constants in \(\varSigma _S\) are not changed. We regard the theory \(\mathcal{T}\) as a set of formulae; let \(\mathcal{T}' := \{ \phi ' \mid \phi \in \mathcal{T}\}\).Footnote 1

Let A be a conjunction of ground \(\varPi ^C\)-literals, and \(a \in C\). We say that a is implicitly defined by A w.r.t. \(\varSigma _S\) and \(\mathcal{T}\) if, with the notations introduced before,

$$A \wedge A' \models _{\mathcal{T}\cup \mathcal{T}'} a \approx a'.$$

We say that a is explicitly defined by A w.r.t. \(\varSigma _S\) and \(\mathcal{T}\) if there exists a term t containing only symbols in \(\varSigma _0, \textsf{Pred}\) and \(\varSigma _S\) such that \(A \models _{\mathcal{T}} a \approx t\).

Definition 3

Let \(\mathcal{T}\) be a theory with uninterpreted function symbols in a set \(\varSigma _1\). Let \(\varSigma _S \subseteq \varSigma _1 \cup C\). \(\mathcal{T}\) has the Beth definability property w.r.t. \(\varSigma _S\) (\(\varSigma _S\)-Beth definability), if for every conjunction of literals A and every \(a \in C\), if A implicitly defines a w.r.t. \(\varSigma _S\) and \(\mathcal{T}\) then A explicitly defines a w.r.t. \(\varSigma _S\) and \(\mathcal{T}\).

In [4, 6] it was proved that if a convex theory has the \(\approx \)-interpolation property, then it has the Beth definability property. We give an analogous implication between \(\approx \)-interpolation and Beth definability w.r.t. a subsignature.

Theorem 3

Let \(\mathcal{T}\) be a convex theory with signature \(\varPi = (\varSigma _0 \cup \varSigma _1, \textsf{Pred})\), C a set of constants, and \(\varSigma _S \subseteq \varSigma _1 \cup C\). Let \(\mathcal{T}'\) be as defined above.

  1. (i)

    If \(\mathcal{T}\cup \mathcal{T}'\) has the \(\approx \)-interpolation property with intersection-sharing, then \(\mathcal{T}\) has the \(\varSigma _S\)-Beth definability property.

  2. (ii)

    Assume that \(\mathcal{T}= \mathcal{T}_0 \cup \mathcal{K}\) where all symbols in the signature of \(\mathcal{T}_0\) are regarded as interpreted, and \(\mathcal{K}\) is a set of clauses also containing uninterpreted function symbols in \(\varSigma _1\). Let \(\varTheta _{\mathcal{K}}\) be the closure operator defined in Example 1. If \(\mathcal{T}\cup \mathcal{T}'\) has the \(\approx \)-interpolation property with \(\varTheta _{\mathcal{K}\cup \mathcal{K}'}\)-sharing, then \(\mathcal{T}\) has the \(\varTheta _{\mathcal{K}}(\varSigma _S)\)-Beth definability property.

Proof (Idea): (i) Assume a is implicitly definable w.r.t. \(\varSigma _S\), i.e. there exists a conjunction A of literals such that if \(A'\) is obtained by renaming as explained before, then \(A \wedge A' \models _{\mathcal{T}\cup \mathcal{T}'} a \approx a'\). Since \(\mathcal{T}\wedge \mathcal{T}'\) has \(\approx \)-interpolation, there exists a term t using only the functions and predicate symbols common to A and \(A'\) (i.e. the symbols in \(\varSigma _0 \cup \varSigma _S\)) such that \(A \wedge A' \models _{\mathcal{T}\cup \mathcal{T}'} a \approx t \wedge t\approx a'\). It can be shown that then \(A \models _{\mathcal{T}} a \approx t\).

(ii) Assume a is implicitly definable w.r.t. \(\varTheta _\mathcal{K}(\varSigma _S)\), i.e. there exists a conjunction A of literals such that if \(A'\) is obtained by renaming as explained before then \(A \wedge A' \models _{\mathcal{T}\cup \mathcal{T}'} a \approx a'\). The symbols shared by A and \(A'\) are the symbols in \(\varSigma _0 \cup \varSigma _S \cup \varTheta _{\mathcal{K}\cup \mathcal{K}'}(\varSigma _S)\), where \(\varTheta _{\mathcal{K}\cup \mathcal{K}'}(\varSigma _S) = \bigcup _{f \in \varSigma _S \cap \varSigma _1} \{ g \in \varSigma _1 \cup \varSigma '_1 \mid f \sim ^*_{\mathcal{K}\cup \mathcal{K}'} g \}\).

It is easy to see that for every \(f \in \varSigma _1 \backslash \varSigma _S\), \(f \in \varTheta _{\mathcal{K}}(\varSigma _S)\) iff \(f' \in \varTheta _{\mathcal{K}'}(\varSigma _S)\), and \(\varTheta _{\mathcal{K}\cup \mathcal{K}'}(\varSigma _S) = \varTheta _{\mathcal{K}}(\varSigma _S) \cup \varTheta _{\mathcal{K}'}(\varSigma _S)\). Since we assumed that \(\mathcal{T}\cup \mathcal{T}'\) has the \(\approx \)-interpolation property with the notion of \(\varTheta _{\mathcal{K}\cup \mathcal{K}'}\)-sharing, there exists a term t over the signature \(\varSigma _0 \cup \varTheta _{\mathcal{K}\cup \mathcal{K}'}(\varSigma _S)\) such that \(A \wedge A' \models _{\mathcal{T}\cup \mathcal{T}'} a \approx t ~ \wedge ~ t \approx a\). The term t might contain primed versions of function symbols. We can show that we can find a term \({\overline{t}}\) containing only terms in \(\varTheta _\mathcal{K}(\varSigma _S)\) such that \(A \models _{\mathcal{T}} a \approx {\overline{t}}\).    \(\Box \)

3 Local Theory Extensions

Let \(\varPi _0 {=} (\varSigma _0, \textsf{Pred})\) be a signature, and \(\mathcal{T}_0\) be a “base” theory with signature \(\varPi _0\). We consider extensions \(\mathcal{T}:= \mathcal{T}_0 \cup \mathcal{K}\) of \(\mathcal{T}_0\) with new function symbols \(\varSigma _1\) (extension functions) whose properties are axiomatized using a set \(\mathcal{K}\) of (universally closed) clauses in the extended signature \(\varPi = (\varSigma _0 \cup \varSigma _1, \textsf{Pred})\), which contain function symbols in \(\varSigma _1\). If G is a finite set of ground \(\varPi ^C\)-clauses, where C is an additional set of constants, and \(\mathcal{K}\) a set of \(\varPi \)-clauses, we will denote by \(\textsf{st}(\mathcal{K}, G)\) (resp. \(\textsf{est}(\mathcal{K}, G)\)) the set of all ground terms (resp. extension ground terms, i.e. terms starting with a function in \(\varSigma _1\)) which occur in G or \(\mathcal{K}\). In this paper we regard every finite set G of ground clauses as the ground formula \(\bigwedge _{C \in G} C\). If T is a set of ground terms in the signature \(\varPi ^C\), we denote by \(\mathcal{K}[T]\) the set of all instances of \(\mathcal{K}\) in which the terms starting with a function symbol in \(\varSigma _1\) are in T. Let \(\varPsi \) be a map associating with every finite set T of ground terms a finite set \(\varPsi (T)\) of ground terms containing T. For any set G of ground \(\varPi ^C\)-clauses we write \(\mathcal{K}[\varPsi _\mathcal{K}(G)]\) for \(\mathcal{K}[\varPsi (\textsf{est}(\mathcal{K}, G))]\). We define:

figure a

Extensions satisfying condition \(\mathsf{(Loc}_f^\varPsi )\) are called \(\varPsi \) -local. If \(\varPsi \) is the identity we obtain the notion of local theory extensions [21]; if in addition \(\mathcal{T}_0\) is the theory of pure equality we obtain the notion of local theories [9, 15].

Hierarchical Reasoning. Consider a \(\varPsi \)-local theory extension \(\mathcal{T}_0 \subseteq \mathcal{T}_0 \cup \mathcal{K}\). Condition \((\textsf{Loc}_f^{\varPsi })\) requires that for every finite set G of ground \(\varPi ^C\)-clauses, \(\mathcal{T}_0 \cup \mathcal{K} \cup G \models \perp \) iff \(\mathcal{T}_0 \cup \mathcal{K}[\varPsi _\mathcal{K}(G)] \cup G \models \perp \). In all clauses in \(\mathcal{K}[\varPsi _\mathcal{K}(G)] \cup G\) the function symbols in \(\varSigma _1\) only have ground terms as arguments, so \(\mathcal{K}[\varPsi _\mathcal{K}(G)] {\cup } G\) can be flattened and purified by introducing, in a bottom-up manner, new constants \(c_t \in C\) for subterms \(t {=} f(c_1, \dots , c_n)\) where \(f {\in } \varSigma _1\) and \(c_i\) are constants, together with definitions \(c_t {=} f(c_1, \dots , c_n)\). We thus obtain a set of clauses \(\mathcal{K}_0 {\cup } G_0 {\cup } \textsf{Def}\), where \(\mathcal{K}_0\) and \(G_0\) do not contain \(\varSigma _1\)-function symbols and \(\textsf{Def}\) contains clauses of the form \(c {=} f(c_1, \dots , c_n)\), where \(f {\in } \varSigma _1\), \(c, c_1, \dots , c_n\) are constants.

Theorem 4

([11, 12, 21]). Let \(\mathcal{K}\) be a set of clauses. Assume that \(\mathcal{T}_0 \subseteq \mathcal{T}_0 \cup \mathcal{K}\) is a \(\varPsi \)-local theory extension. For any finite set G of flat ground clauses (with no nestings of extension functions), let \(\mathcal{K}_0 \cup G_0 \cup \textsf{Def}\) be obtained from \(\mathcal{K}[\varPsi _\mathcal{K}(G)] \cup G\) by flattening and purification, as explained above. Then the following are equivalent to \(\mathcal{T}_0 \cup \mathcal{K} \cup G \models \perp \):

  1. (i)

    \(\mathcal{T}_0 {\cup } \mathcal{K}[\varPsi _\mathcal{K}(G)] {\cup } G \models \perp .\)

  2. (ii)

    \(\mathcal{T}_0 \cup \mathcal{K}_0 \cup G_0 \cup \textsf{Con}_0 \models \perp ,\) where \(\textsf{Con}_0 = \displaystyle {\left\{ {\bigwedge }_{i = 1}^n c_i \approx d_i \rightarrow c \approx d \, \mid \begin{array}{@{}l@{}} f(c_1, \dots , c_n) \approx c \in \textsf{Def}\\ f(d_1, \dots , d_n) \approx d \in \textsf{Def} \end{array} \right\} }.\)

In [12] we showed that for extensions with sets of flat and linear clauses \(\varPsi \)-locality can be checked by checking whether an embeddability condition of partial into total models holds. In [26] we mention (without proof) that the proof in [12] can be extended to situations in which the clauses in \(\mathcal{K}\) are not linear. The result is presented below. A full proof is given in the extended version of this paper [18].

Theorem 5

Let \({\mathcal K}\) be a set of \(\varSigma _1\)-flat clauses, and \(\varPsi _\mathcal{K}\) be a term closure operator such that for every set T of ground terms and for every clause D in \({\mathcal K}\), if a variable occurs in two terms in D then either the two terms are identical, or the variable occurs below two different unary function symbols f and g and, for every constant c, f(c) is in \(\varPsi (T)\) iff g(c) is in \(\varPsi (T)\). If all partial models \(\mathcal{A}\) of \(\mathcal{T}_0 \cup \mathcal{K}\) with totally defined \(\varSigma _0\)-functions, and for which the set of terms \(\{ f(a_1, \dots , a_n) \mid f \in \varSigma _1 \text { and } f_{\mathcal{A}}(a_1, \dots , a_n) \text { is defined} \}\) is finite and closed under \(\varPsi \), embed into total models of \(\mathcal{T}_0 \cup \mathcal{K}\), then the extension \(\mathcal{T}_0 \cup \mathcal{K}\) satisfies \((\textsf{Loc}_f^{\varPsi })\).

4 R-interpolation in Local Theory Extensions

In [24] we considered convex and P-interpolating theories \(\mathcal{T}_0\) with signature \(\varPi _0 = (\varSigma _0, \textsf{Pred})\) (where \(P {\subseteq } \textsf{Pred}\)). We studied \(\varPsi \)-local extensions \(\mathcal{T}= \mathcal{T}_0 \cup \mathcal{K}\) of \(\mathcal{T}_0\) with new function symbols in a set \(\varSigma _1\) axiomatized by a set \(\mathcal{K}\) of clauses, with the property that all clauses in \(\mathcal{K}\) are of the form:

$$\begin{aligned} \left\{ \begin{array}{l} x_1 \, R_1 \, s_1 \wedge \dots \wedge x_n \, R_n \, s_n \rightarrow f(x_1, \dots , x_n) \, R \, g(y_1, \dots , y_n) \\ x_1 \, R_1 \, y_1 \wedge \dots \wedge x_n \, R_n \, y_n \rightarrow f(x_1, \dots , x_n) \, R \, f(y_1, \dots , y_n) \end{array} \right. \end{aligned}$$
(1)

where \(n \ge 1\), \(x_1, \dots , x_n, y_1, \dots , y_n\) are variables, \(f, g \in \varSigma _1\), \(R_1, \dots , R_n, R\) are binary relations with \(R_1, \dots , R_n \in P\) and R transitive, and each \(s_i\) is either a variable among the arguments of g, or a term of the form \(f_i(z_1, \dots , z_k)\), where \(f_i \in \varSigma _1\) and all the arguments of \(f_i\) are variables occurring among the arguments of g.

Example 2

A set \(\mathcal{K}\) of axioms containing clauses of the form:

$$\left\{ \begin{array}{rl} x_1 \le h(y_1) &{} \rightarrow f(x_1) \le g(y_1) \\ x_1 \le y_1 &{} \rightarrow f(x_1) \le f(y_1) \end{array} \right. $$

satisfies the conditions above: \(n = 1\), \(R_1 = R = \le \), \(s_1 = h(y_1)\), \(f, g, h \in \varSigma _1\).

In [24], we proved that if \(\mathcal{T}_0\) allows ground interpolation, then \(\mathcal{T}\) allows ground interpolation, and that the interpolants can be computed in a hierarchical way, using a method for ground interpolation in \(\mathcal{T}_0\). We now show that under the conditions above, the property of P-interpolation can be transferred from the theory \(\mathcal{T}_0\) to the extension \(\mathcal{T}= \mathcal{T}_0 \cup \mathcal{K}\) of \(\mathcal{T}_0\). The function symbols in the signature of \(\mathcal{T}_0\) are considered to be interpreted, and will always be considered to be shared. For the function symbols in the signature \(\varSigma _1\) – considered to be “quasi”-interpreted – we use the notion of \(\varTheta _{\mathcal{K}}\)-sharing introduced in Sect. 2.

In order to show that \(\mathcal{T}\) has the P-interpolation property, we need to prove that if A, B are conjunctions of atoms and \(A({\overline{c}}, {\overline{a}}_1, a) \wedge B({\overline{c}}, {\overline{b}}_1, b) \models _{\mathcal{T}} a R b\), where \(R \in P\), then there exists a term t containing only the constants common to A and B and only function symbols which are \(\varTheta _\mathcal{K}\)-shared by A and B, such that \(A({\overline{c}}, \overline{a}_1, a) \wedge B({\overline{c}}, \overline{b}_1, b) \models _{\mathcal{T}} a R t ~\wedge ~ t R b\).

\(A({\overline{c}}, \overline{a}_1, a) {\wedge } B({\overline{c}}, \overline{b}_1, b) {\models }_{\mathcal{T}} a R b\) iff \(A({\overline{c}}, \overline{a}_1, a) {\wedge } B({\overline{c}}, \overline{b}_1, b) {\wedge } {\lnot } (a R b) \models _{\mathcal{T}} \bot \). By Theorem 4 we can purify and flatten this conjunction and obtain a conjunction of unit clauses \(A_0 \wedge B_0 \wedge \textsf{Def} \wedge \lnot (a R b)\), where \(\textsf{Def}\) is a set of definitions of newly introduced constants. Let T be the extension terms in \(\textsf{Def}\). We introduce new constants and definitions also for all extension terms in \(\varPsi (T)\). This new set of definitions can be written as a conjunction \(D_A \wedge D_B\) of its A-part and its B-part. By the \(\varPsi \)-locality of the extension \(\mathcal{T}_0 \subseteq \mathcal{T}_0 \cup \mathcal{K}\) and Theorem 4,

$$A_0 \wedge B_0 \wedge \textsf{Def} \wedge \lnot (a R b) \models _{\mathcal{T}} \perp \text { iff } \mathcal{K}_0 \wedge A_0 \wedge B_0 \wedge \textsf{Con}[D_A \wedge D_B]_0 \wedge \lnot (a R b) \models _{\mathcal{T}_0} \perp ,$$

where \(\mathcal{K}_0\) is obtained from \(\mathcal{K}[D_A \wedge D_B]\) by replacing the \(\varSigma _1\)-terms with the corresponding constants contained in the definitions \(D_A \wedge D_B\) and

\(\textsf{Con}[D_A \wedge D_B]_0 = \displaystyle { \bigwedge \Big \{ \bigwedge _{i = 1}^n} c_i \approx d_i \rightarrow c \approx d \mid \begin{array}{l} f(c_1, \dots , c_n) \approx c \in D_A \cup D_B, \\ f(d_1, \dots , d_n) \approx d \in D_A \cup D_B \end{array} \Big \}.\)

In general, \(\textsf{Con}[D_A \wedge D_B]_0 = \textsf{Con}^A_0 \wedge \textsf{Con}^B_0 \wedge \textsf{Con}_\textsf{mix}\) and \(\mathcal{K}_0 = \mathcal{K}^A_0 \wedge \mathcal{K}^B_0 \wedge \mathcal{K}_\textsf{mix}\), where \(\textsf{Con}^A_0, \mathcal{K}^A_0\) only contain extension functions and constants which occur in A, \(\textsf{Con}^B_0, \mathcal{K}^B_0\) only contain extension functions and constants which occur in B, and \(\textsf{Con}_\textsf{mix}\), \(\mathcal{K}_\textsf{mix}\) contain mixed clauses with constants occurring in both A and B. Our goal is to separate \(\textsf{Con}_\textsf{mix}\) and \(\mathcal{K}_\textsf{mix}\) into an A-part and a B-part, which would allow us to use the P-interpolation property of theory \(\mathcal{T}_0\).

Proposition 6

Assume that \(\mathcal{T}_0\) is convex and P-interpolating. Let \(\mathcal{H}\) be a set of Horn clauses \((\bigwedge _{i = 1}^n c_i R_i d_i) \rightarrow c R_0 d\) in the signature \(\varPi _0^C\) (with \(R_0\) transitive and \(R_i \in P\)) which are instances of flattened and purified clauses of type (1) and of congruence axioms. Let \(\mathcal{H}_\textsf{mix}\) be the mixed clauses in \(\mathcal{H}\):

\(\begin{array}{@{}lll} \mathcal{H}_\textsf{mix} &{} = &{} \{ \bigwedge _{i = 1}^n c_i R_i d_i \rightarrow c R_0 d \in \mathcal{H} \mid c_i, c \text { constants in } A, d_i, d \text { constants in } B \} \cup \\ &{} &{} \{ \bigwedge _{i = 1}^n c_i R_i d_i \rightarrow c R_0 d \in \mathcal{H} \mid c_i, c \text { constants in } B, d_i, d \text { constants in } A \} \\ \end{array}\)

Let \(A_0\) and \(B_0\) be conjunctions of ground literals in the signature \(\varPi _0^C\) such that \(A_0 \wedge B_0 \wedge \mathcal{H} \wedge \lnot (a R b) \models _{\mathcal{T}_0} \perp \). Then \(\mathcal{H}\) can be separated into an A- and a B-part by replacing the set \(\mathcal{H}_\textsf{mix}\) of mixed clauses with a separated set of formulae \(\mathcal{H}_\textsf{sep}\):

  1. (i)

    There exists a set T of \((\varSigma _0 \cup C)\)-terms containing only constants common to \(A_0\) and \(B_0\) such that \(A_0 \wedge B_0 \wedge (\mathcal{H} \backslash \mathcal{H}_\textsf{mix}) \wedge \mathcal{H}_\textsf{sep} \wedge \lnot (a R b) \models _{\mathcal{T}_0} \perp \), where \(\begin{array}{@{}l@{}l@{}l} \mathcal{H}_\textsf{sep} &{} = &{} \{ (\bigwedge _{i = 1}^n c_i R_i t_i \rightarrow c R c_{f(t_1, \dots , t_n)}) \wedge (\bigwedge _{i = 1}^n t_i R_i d_i \rightarrow c_{f(t_1, \dots , t_n)} R d) \mid \\ &{} &{} \bigwedge _{i = 1}^n c_i R_i d_i \rightarrow c R d \,{\in }\, \mathcal{H}_\textsf{mix}, d_i {\approx } s_i(e_1, \dots , e_n), d {\approx } g(e_1, \dots , e_n) {\in } D_B, \\ &{} &{} c {\approx } f(c_1, \dots , c_n) {\in } D_A \text { or vice versa } \} = \mathcal{H}_\textsf{sep}^A \wedge \mathcal{H}_\textsf{sep}^B \end{array}\) and \(c_{f(t_1, \dots , t_n)}\) are new constants in \(\varSigma _c\) (considered to be common) introduced for the corresponding terms \(f(t_1, \dots , t_n)\), where for \(i \in \{ 1, \dots , n \}\), \(t_i\) separates the atom \(c_i R_i d_i\), which is entailed by the already deduced atoms.

  2. (ii)

    \(A_0 \wedge B_0 \wedge (\mathcal{H} \backslash \mathcal{H}_\textsf{mix}) \wedge \mathcal{H}_\textsf{sep} \wedge \lnot (a R b)\) is logically equivalent with respect to \(\mathcal{T}_0\) with the following separated conjunction of ground literals: \(\begin{array}{@{}l@{}l@{}l} {\overline{A}}_0 \wedge {\overline{B}}_0 \wedge &{} \lnot (a R b) &{} = A_0 \,\wedge \, B_0 \wedge \lnot (a R b) \wedge \bigwedge \{ c R d \mid \Gamma {\rightarrow } c R d \in \mathcal{H} \backslash \mathcal{H}_\textsf{mix} \} \wedge \\ &{} &{} \!\!\!\!\! \!\!\!\!\! \!\!\!\!\! \bigwedge \{ c R c_{f({\overline{t}})} \wedge c_{f({\overline{t}})} R d \mid (\Gamma \rightarrow c R c_{f({\overline{t}})}) \wedge (\Gamma \rightarrow c_{f({\overline{t} })} R d) \in \mathcal{H}_\textsf{sep} \}. \end{array}\)

Proof (Idea). The proof is similar to that of Prop. 5.7 in [24]. (i) and (ii) are proved simultaneously by induction on the number of clauses in \({\mathcal H}\). If \({\mathcal H} = \emptyset \), it is already separated. Otherwise, one can prove that either \((A_0 \wedge B_0) \models a R b\) – in which case we are done – or \(A_0 \wedge B_0\) entails all the premises of some clause C in \(\mathcal{H}\). If C contains only constants in \(A_0\) or \(B_0\) we can remove it from \(\mathcal{H}\), add its conclusion to \(A_0 \wedge B_0\) and repeat the procedure with the new \(A_0 \wedge B_0\) and \(\mathcal{H}\). If the clause is mixed, we can compute terms \(t_i\) which separate the premises in C, separate C into an instance \(C_1\) of monotonicity and an instance \(C_2\) of a clause in \(\mathcal{K}\), remove C from \(\mathcal{H}\), add to \(A_0 \wedge B_0\) the conclusions of the clauses \(C_1, C_2\), and repeat the procedure with the new \(A_0 \wedge B_0\) and \(\mathcal{H}\).    \(\Box \)

Theorem 7

Assume that \(\mathcal{T}_0\) is convex and P-interpolating with respect to \(P \subseteq \textsf{Pred}\), and that \(\mathcal{T} = \mathcal{T}_0 \cup \mathcal{K}\) is a local extension of \(\mathcal{T}_0\) with a set of clauses \(\mathcal{K}\) which only contains combinations of clauses of type (1). Then \(\mathcal{T}\) is also P-interpolating.

Proof (Idea). We prove that if A, B are conjunctions of literals and \(A({\overline{c}}, \overline{a}_1, a) \wedge B({\overline{c}}, \overline{b}_1, b) \models _{\mathcal{T}} a R b\) where \(R \in P\), then there exists a term t containing only the constants common to A and B and only function symbols which are shared by A and B, such that \(A({\overline{c}}, \overline{a}_1, a) \wedge B({\overline{c}}, \overline{b}_1, b) \models _{\mathcal{T}} a R t ~\wedge ~ t R b\). We can restrict w.l.o.g. to a purified and flattened conjunction of unit clauses \(A_0 \wedge B_0 \wedge \textsf{Def} \wedge \lnot (a R b).\) With the notation used on page 8, by Theorem 4 we have:

\(A_0 \wedge B_0 \wedge \textsf{Def} \wedge \lnot (a R b) {\models }_{\mathcal{T}} {\bot } \text { iff } \mathcal{K}_0 \wedge A_0 \wedge B_0 \wedge \textsf{Con}[D_A \wedge D_B]_0 \wedge \lnot (a R b) {\models }_{\mathcal{T}_0} {\bot }.\)

By Proposition 6 (ii), there exists a set T of \((\varSigma _0 \cup C)\)-terms containing only constants common to \(A_0\) and \(B_0\) such that \(\mathcal{H} = \mathcal{K}_0 \wedge \textsf{Con}[D_A \wedge D_B]_0\) can be separated as described in Proposition 6, \(A_0 \wedge B_0 \wedge (\mathcal{H} \backslash \mathcal{H}_\textsf{mix}) \wedge \mathcal{H}_\textsf{sep} \wedge \lnot a R b\) is logically equivalent w.r.t. \(\mathcal{T}_0\) with a separated conjunction of ground literals \({\overline{A}}_0 \wedge {\overline{B}}_0 \wedge \lnot a R b\), which is therefore unsatisfiable, so \({\overline{A}}_0 \wedge {\overline{B}}_0 \models a R b\). From the P-interpolation property in \(\mathcal{T}_0\), there exists a term containing the shared constants such that \({\overline{A}}_0 \wedge {\overline{B}}_0 \models _{\mathcal{T}_0} a R t ~\wedge ~ t R b\). If we now replace all constants \(c_{f(t_1, \dots , t_n)}\) introduced in the purification process or in the separation process with the terms they denote, we obtain \(A \wedge B \models _\mathcal{T} a R t \wedge t R b\).    \(\Box \)

We obtain the following procedure for P-interpolation if \(A \wedge B \models _{\mathcal{T}} a R b\):

  • Step 1: Preprocess Using locality, flattening and purification we obtain a set \(\mathcal{H} \wedge A_0 \wedge B_0\) of formulae in the base theory, where \(\mathcal{H}\) is as in Proposition 6.

  • Step 2: \(\varDelta := \textsf{T}\). Repeat as long as \(A_0 \wedge B_0 \wedge \varDelta \not \models a R b\):

    Let \(C {\in } \mathcal{H}\) whose premise is entailed by \(A_0 {\wedge } B_0 {\wedge } \varDelta \).

    If C is not mixed, move C to \(\mathcal{H}_\textsf{sep}\) and add its conclusion to \(\varDelta \).

    If C is mixed, compute terms \(t_i\) which separate the premises in C, and separate the clause into an instance \(C_1\) of monotonicity and an instance \(C_2\) of a clause in \(\mathcal{K}\) as in the proof of Proposition 6. Remove C from \(\mathcal{H}\), and add \(C_1, C_2\) to \(\mathcal{H}_\textsf{sep}\) and their conclusions to \(\varDelta \).

  • Step 3: Compute separating term. Compute a separating term for \(A_0 \wedge B_0 \wedge \varDelta \models a R b\) in \(\mathcal{T}_0\), and construct an interpolant for the extension as explained in the proof of Theorem 7.

5 Example: Semilattices with Monotone Operators

We will now analyze \(\le \)-interpolation properties for theories of semilattices with monotone operators. A semilattice \((S, \sqcap )\) is set S with a binary operation \(\sqcap \) which is associative, commutative and idempotent. One can equivalently regard semilattices as partially ordered sets \((S, \le )\), in which infima of finite non-empty subsets exist; then \(a \le b\) iff \(a \sqcap b = a\).

The theory \(\textsf{SLat}\) of semilattices can be axiomatized by equations (associativity, commutativity and idempotence of \(\sqcap \)) hence clearly is \(\approx \)-convex: Convexity w.r.t. \(\le \) follows from the fact that \(x \le y\) iff \((x \sqcap y) \approx x\). The theory \(\textsf{SLat}\) is \(\le \)-interpolating, therefore also \(\approx \)-interpolating (cf. also [17]; we present the idea of the proof since it indicates how the intermediate terms can be computed):

Lemma 8

The theory \(\textsf{SLat}\) of semilattices is \(\le \)-interpolating.

Proof (Idea): This is a constructive proof based on the fact that every semilattice is isomorphic to a sublattice of a power of \(S_2\), where \(S_2\) is the 2-element semilattice (or, alternatively, that every semilattice is isomorphic to a semilattice of sets). We prove that if A and B are two conjunctions of literals and \(A \wedge B \models _\textsf{SLat} a \le b\), where a is a constant occurring in A and b a constant occurring in B, then there exists a term containing only common constants in A and B such that \(A \wedge B \models _\textsf{SLat} a \le t\) and \(A \wedge B \models _\textsf{SLat} t \le b\). We can assume without loss of generality that A and B consist only of atoms (for details cf. [17]). \(A \wedge B \models _\textsf{SLat} a \le b\) if and only if the following conjunction of literals in propositional logic is unsatisfiable:

$$\begin{array}{@{}c@{}c@{}c} N_A{:} \left\{ \begin{array}{@{}r@{}c@{}l} P_{e_1 \sqcap e_2} &{} \leftrightarrow &{} P_{e_1} \wedge P_{e_2} \\ P_{e_1} &{} \leftrightarrow &{} P_{e_2} ~~~ e_1 \approx e_2 \in A\\ P_{e_1} &{} \rightarrow &{} P_{e_2} ~~~ e_1 \le e_2 \in A \\ \text { for all } e_1, &{} e_2 &{} \text { subterms in } A \end{array} \right. &{} ~ &{} N_B{:} \left\{ \begin{array}{@{}rcl} P_{g_1 \sqcap g_2} &{} \leftrightarrow &{} P_{g_1} \wedge P_{g_2} \\ P_{g_1} &{} \leftrightarrow &{} P_{g_2} ~~~ g_1 \approx g_2 \in B\\ P_{g_1} &{} \rightarrow &{} P_{g_2} ~~~ g_1 \le g_2 \in B\\ \text { for all } g_1, &{} g_2 &{} \text { subterms in } B \end{array} \right. \\ P_a &{} &{} \lnot P_b \\ \end{array}$$

We obtain an unsatisfiable set of clauses \((N_A \wedge P_a) \wedge (N_B \wedge \lnot P_b) \models \perp \), where \(N_A\) and \(N_B\) are sets of Horn clauses in which each clause contains a positive literal. We show that if \(A \wedge B \models _\textsf{SLat} a \le b\) holds, then for the term

$$ t := {\sqcap }\{e \mid A \models _\textsf{SLat} a \le e, e \text { common subterm of } A \text { and } B\}$$

we have (i) \(A \models _\textsf{SLat} a \le t\), and (ii) \(A \wedge B \models _\textsf{SLat} t \le b\).

Clearly, \(A \models _\textsf{SLat} a \le t\), thus (i) holds. For proving (ii), we analyze the set of clauses obtained by saturating \(N_A \wedge P_a\) under ordered resolution in which all propositional variables occurring in A but not in B are larger than the common symbols. It is proved that for deriving the contradiction only the unit clauses \(P_e\), where e is a common subterm of A and B and \(A \models a \le e\), and certain resolvents of \(N_A \wedge P_a\) are needed. The full proof is given in [17] and also in [18].    \(\Box \)

We illustrate the computation of intermediate terms on an example.

Example 3

Let \(A=\{ a_1 \le c_1,~ c_2 \le a_2,~ a_2 \le c_3\}\) and \(B=\{c_1 \le b_1,~ b_1 \le c_2,~ c_3 \le b_2\}\). It is easy to see that \(A \wedge B \models a_1 \le b_2\). We can find an intermediate term by using the methods described in the proof of Lemma 8: We saturate the set of clauses

\(N_A \wedge P_{a_1} = (P_{a_1} \rightarrow P_{c_1}) \wedge (P_{c_2} \rightarrow P_{a_2}) \wedge (P_{a_2} \rightarrow P_{c_3}) \wedge P_{a_1}\)

under ordered resolution, in which the propositional variables \(P_{a_1}, P_{a_2}\) are larger than \(P_{c_1}, P_{c_2}, P_{c_3}\). This yields the clauses \(P_{c_1}\) and \(P_{c_2} \rightarrow P_{c_3}\) containing shared propositional variables. \((N_A \wedge P_{a_1}) \wedge (N_B \wedge \lnot P_{b_2})\) is unsatisfiable iff \(N_B \wedge \lnot P_{b_2} \wedge P_{c_1} \wedge (P_{c_2} \rightarrow P_{c_3})\) is unsatisfiable. Indeed \(t = c_1\) is an intermediate term, as \(A \models a_1 \le c_1\) and \(A \wedge B \models c_1 \le b_2\). Note that \(N_B \wedge \lnot P_{b_2} \wedge P_{c_1}\) is satisfiable, so \(B \not \models c_1 \le b_2\). Moreover, we only need \(P_{c_2} \rightarrow P_{c_3}\) in addition to \(N_B \cup \lnot P_{b_2}\) to derive \(\perp \), thus \(A \wedge B \models c_1 \le b_2\) and the clause \(P_{c_2} \rightarrow P_{c_3}\) obtained from \(N_A\) is really needed for this.    \(\Box \)

Semilattices with operators. Let \(\varSigma \) be a set of unaryFootnote 2 function symbols. We consider the extension \(\textsf{SLat}_{\varSigma } = \textsf{SLat} \cup \textsf{Mon}(\varSigma )\) of \(\textsf{SLat}\) with new function symbols in \(\varSigma \) satisfying the monotonicity axioms \(\textsf{Mon}_{\varSigma } = \bigcup _{f \in \varSigma } \textsf{Mon}(f)\), where:

\(\textsf{Mon}(f) \quad \quad \forall x, y (x \le y \rightarrow f(x) \le f(y))\)

and also extensions \(\textsf{SLat} \cup \textsf{Mon}(\varSigma ) \cup \mathcal{K}\), where \(\mathcal{K}\) is a set of axioms of the form:

$$\begin{aligned} \forall x ~~~&f(x) \le g(x) \end{aligned}$$
(2)
$$\begin{aligned} \forall x, y ~~~&y \le g(x) \rightarrow f(y) \le h(x) \end{aligned}$$
(3)

where \(f, g, h \in \varSigma \), not necessarily all different.

Lemma 9

The following extensions satisfy a locality property:

  1. (i)

    The theory of semilattices \(\textsf{SLat}\) is local.

  2. (ii)

    \(\textsf{SLat} \cup \textsf{Mon}_{\varSigma }\) is a local extension of \(\textsf{SLat}\).

  3. (iii)

    \(\textsf{SLat} \cup \textsf{Mon}_{\varSigma } \cup \mathcal{K}\) is a \(\varPsi \)-local extension of \(\textsf{SLat}\), where \(\varPsi \) is the closure operator on ground terms defined as follows:

    $$\begin{aligned} \varPsi (G) =&~ \bigcup _{i \ge 0} \varPsi ^i(G), \text { with } \varPsi ^0(G) =\textsf {est}(G) \text { (the set of ground terms in G}\\[-3ex]&~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ \text {starting with extension functions), and}&\\ \varPsi ^{i+1}(G) =&~ \{ h(c) \mid \forall x (g(x) \le h(x)) \in \mathcal{K}\text { and } g(c) \in \varPsi ^i(G)\} \cup \\&~ \{ g(c) \mid \forall x (g(x) \le h(x)) \in \mathcal{K}\text { and } h(c) \in \varPsi ^i(G)\}\cup \\&~ \{ h(c) \mid \forall x, y (y \le g(x) \rightarrow f(y) \le h(x)) \in \mathcal{K}\text { and } g(c) \in \varPsi ^i(G)\}\cup \\&~ \{ g(c) \mid \forall x, y (y \le g(x) \rightarrow f(y) \le h(x)) \in \mathcal{K}\text { and } h(c) \in \varPsi ^i(G)\}. \end{aligned}$$

Proof:

(i) follows from a result on the locality of lattices by Skolem [20], or by results in [9], since every partial semilattice weakly embeds into a total one.

(ii) follows from results in [27, 28]. (iii) Since the axioms in \(\mathcal{K}\) are not always linear, we use the locality criterion for non-linear sets of clauses mentioned in Theorem 5, and the fact that every semilattice \(P = (S, \sqcap , \{ f \}_{f \in \varSigma })\) with partially defined monotone operators satisfying the axioms \(\mathcal{K}\), and with the property that if a variable occurs in two terms g(x), h(x) in a clause in \(\mathcal{K}\), then for every \(s \in S\), g(s) is defined iff h(s) is defined, weakly embeds into a semilattice with totally defined operators satisfying \(\mathcal{K}\), which was proved in Lemma 4.5 from [26].    \(\Box \)

Given two sets of conjunctions of ground literals A and B over the signature of semilattices with operators, we consider the lattice operation \(\sqcap \) to be interpreted and the function symbols in \(\varSigma \) to be uninterpreted. Let \(\varSigma _A\) be the function symbols in \(\varSigma \) occurring in A and \(\varSigma _B\) those occurring in B. We consider the following variants for “shared uninterpreted function symbols”:

  • Intersection-sharing: The shared function symbols of A and B are the function symbols in \(\varSigma _A \cap \varSigma _B\).

  • \(\varTheta _\mathcal{K}\)-sharing: Let \(\varTheta _\mathcal{K}(\varSigma _A)\) and \(\varTheta _\mathcal{K}(\varSigma _B)\) be defined as explained in Example 1. The \(\varTheta _\mathcal{K}\)-shared function symbols are the function symbols in \(\varTheta _{\mathcal{K}}(\varSigma _A) \cap \varTheta _\mathcal{K}(\varSigma _B)\).

Theorem 10

For every set \(\mathcal{K}\) containing clauses of the form (2) and (3) above, the theory \(\textsf{SLat} \cup \textsf{Mon}_{\varSigma } \cup \mathcal{K}\) of semilattices with monotone operators satisfying axioms \(\mathcal{K}\) is \(\le \)-interpolating with the notion of \(\varTheta _\mathcal{K}\)-sharing for uninterpreted function symbols.

Proof:

The clauses of type (2) and (3) satisfy the conditions in the statement of Proposition 6 and Theorem 7. The result is therefore a consequence of the fact that \(\textsf{SLat}\) is convex and \(\{ \approx , \le \}\)-interpolating, and of Proposition 6 and Theorem 7.    \(\Box \)

We illustrate the way Theorem 4, Proposition 6 and Theorem 7 and the algorithm in Sect. 4 can be used for computing intermediate terms below:

Example 4

Consider the extension \(\textsf{SLO} = \textsf{SLat} \cup \textsf{Mon}_f \cup \textsf{Mon}_g \cup \mathcal{K}\) of \(\textsf{SLat}\) with two monotone functions fg satisfying: \(\mathcal{K}= \{ y \le g(x) \rightarrow f(y) \le g(x) \}\). Consider the following conjunctions of atoms: \(A := d \le g(a) ~\wedge ~ a \le c ~\wedge ~ g(c) \le a\) and \(B := b \le d \wedge b \le f(b)\). It can be checked that \(A \wedge B \models b \le a\).

To obtain a separating term we proceed as follows: By the definition of \(\textsf{SLO}\), \(A \wedge B \models _{SLO} b \le a\) iff \(\textsf{SLat} \wedge \textsf{Mon}_f \wedge \textsf{Mon}_g \wedge \mathcal{K}\wedge A \wedge B \wedge \lnot ( b \le a) \models \perp \). By Theorem 4, this is the case iff \(\textsf{SLat} \wedge (\textsf{Mon}_f \wedge \textsf{Mon}_g \wedge \mathcal{K})[\varPsi (G)] \wedge G \models \perp \), where \(G = A \wedge B \wedge \lnot ( b \le a)\), \(\textsf{est}(G) = \{ g(a), g(c), f(b) \}\) and \(\varPsi (G) = \{ g(a), g(c), f(b) \}\).

  • \(\textsf{Mon}_f[\varPsi (G)] = \{ b \le b \rightarrow f(b) \le f(b) \}\) (redundant).

  • \(\textsf{Mon}_g[\varPsi (G)] = \{ d_1 \le d_2 \rightarrow g(d_1) \le g(d_2) \mid d_1, d_2 \in \{ a, c \} \}\).

  • \(\mathcal{K}[\varPsi (G)] = \{ b \le g(a) \rightarrow f(b) \le g(a), b \le g(c) \rightarrow f(b) \le g(c) \}\).

Step 1: We purify \((\textsf{Mon}_f \wedge \textsf{Mon}_g \wedge \mathcal{K})[\varPsi (G)] \wedge G\), by introducing constants \(a_1\) for g(a), \(c_1\) for g(c) and \(b_1\) for f(b) and obtain the formula \(\textsf{Def} \wedge A_0 \wedge B_0 \wedge \textsf{Mon}_0 \wedge {\mathcal{K}}_0\):

 

Step 2. \(\varDelta := \top \). Find clauses in \(\textsf{Mon}_0 \wedge {\mathcal{K}}_0\) with premises entailed by \(A_0 \wedge B_0 \wedge \varDelta \).

  • \(C = a \le c \rightarrow a_1 \le c_1\): C is not mixed. Since \(A_0 \wedge B_0 \models _\textsf{SLat} a \le c\), \(A_0 \wedge B_0 \wedge (a \le c \rightarrow a_1 \le c_1)\) is equivalent to \(A_0 \wedge B_0 \wedge a_1 \le c_1\). Let \(\varDelta := \{ a_1 \le c_1 \}\).

  • \(C = b \le a_1 \rightarrow b_1 \le a_1\): C is mixed. Since \(A_0 \wedge B_0 \wedge a_1 \le c_1 \models b \le a_1\) we find a separating term. For this we use the method described in the proof of Lemma 8. We consider the encoding \(N_B \wedge P_b := (P_b \rightarrow P_d) \wedge (P_b \rightarrow P_{b_1}) \wedge P_b\). Using ordered resolution with an ordering in which \(P_b, P_{b_1} \succ P_d\) we derive the unit clauses \(P_d\) and \(P_{b_1}\). Since d is the only shared constant, \(t = d\) is the separating term. Thus, \(A_0 \wedge B_0 \wedge a_1 \le c_1 \models b \le d ~\wedge ~ d \le a_1\). We now can separate the instance \(b \le a_1 \rightarrow b_1 \le a_1\) of the clause in \(\mathcal{K}\) by introducing a new shared constant \(d_1\) as a name for f(d) and replacing the clause, as described in the algorithm at the end of Sect. 4, with the conjunction of

  1. (1)

    \(b \le d \rightarrow b_1 \le d_1\) and

  2. (2)

    \(d \le a_1 \rightarrow d_1 \le a_1\)

((1) is an instance of a monotonicity axiom, (2) is another instance of \(\mathcal{K}\)), and \(A_0 \wedge B_0 \wedge a_1 \le c_1 \wedge (b \le d \rightarrow b_1 \le d_1) \wedge (d \le a_1 \rightarrow d_1 \le a_1)\) is equivalent to \(A_0 \wedge B_0 \wedge a_1 \le c_1 \wedge b_1 \le d_1 \wedge d_1 \le a_1\). Let \(\varDelta := \varDelta \wedge b_1 \le d_1 \wedge d_1 \le a_1\).

Step 3: The last conjunction entails \(b \le a\). To compute a separating term, we again use Lemma 8. We consider the encoding \(N'_B \wedge P_b := (P_b \rightarrow P_d) \wedge (P_b \rightarrow P_{b_1}) \wedge (P_{b_1} \rightarrow P_{d_1}) \wedge P_b\) of the B-part of the conjunction, \(B_0 \wedge b_1 \le d_1\). Using ordered resolution with an ordering in which \(P_b, P_{b_1} \succ P_d, P_{d_1}\) we derive the unit clauses \(P_d, P_{b_1}\) and \(P_{d_1}\). Since \(d, d_1\) are the shared constants, \(t = d \sqcap d_1\) is the separating term. (It can be seen that already d is a separating term.)    \(\Box \)

If \(\mathcal{K}\) contains axioms of type (3) then the theory of semilattices with operators is not \(\le \)-interpolating when sharing is regarded as intersection-sharing. Indeed, assume that for every \(\mathcal{K}\) containing axioms of type (3), \(\textsf{SLat}_{\varSigma }(\mathcal{K})\) is \(\le \)-interpolating w.r.t. intersection-sharing. Then it would also be \(\approx \)-interpolating w.r.t. intersection-sharing. This cannot be the case, as can be seen from the following example.

Example 5

Consider the theory \(\textsf{SLat}_{\varSigma }(\mathcal{K})\) of semilattices with monotone operators fg satisfying the axioms \(\mathcal{K}= \{ x \le g(y) \rightarrow f(x) \le g(y) \}\), and let C be a set of constants containing constants abde. We show that this theory does not have the \(\varSigma _S\)-Beth-definability property, where \(\varSigma _S = \{ g, e \}\).

Consider the conjunction of literals \(A = (a \le f(e)) \wedge (e \le g(b)) \wedge (g(b) \le a)\). One can prove that a is implicitly definable w.r.t. \(\{ g, e \}\) by proving, using the hierarchical reduction for local theory extensions in Theorem 4, that:

\((a {\le } f(e)) \wedge (e {\le } g(b)) \wedge (g(b) {\le } a) \wedge (a' {\le } f'(e)) \wedge (e {\le } g(b')) \wedge (g(b') {\le } a') {\models }_{\textsf{Slat}_{\varSigma }(\mathcal{K}{\cup } \mathcal{K}')} a {\approx } a'.\)

We show that a is not explicitly definable w.r.t. \(\{ g, e \}\). If there exists a term t containing only g and e such that \((a {\le } f(e)) \wedge (e {\le } g(b)) \wedge (g(b) {\le } a) \models _{\textsf{Slat}_{\varSigma }(\mathcal{K})} a {\approx } t\), then the interpretations of a and t are equal in every model of \(\textsf{SLat}_{\varSigma }(\mathcal{K})\) which is a model of A. We show that this is not the case. Let \(S = (\{ a, e, b, d\}, \sqcap , f, g)\) be the semilattice where \(d \le e \le a\), \(d \le b\) and \(a \sqcap b = e \sqcap b = d\), and \(f(a) = f(e) = a\), \(f(b) = f(d) = d\), \(g(a) = g(e) = g(d) = d\) and \(g(b) = a\). Then S satisfies A, f and g are monotone, and S is a model of \(\mathcal{K}\): Assume that \(x \le g(y)\). If \(y \in \{ a, e, d \}\) then \(g(y) = d\) so \(x = d\), and \(f(d) = d \le g(y)\). If \(y = b\) then \(g(b) = a\), so x can be ae or d, and \(f(a) = f(e) = a\), \(f(d) = d\), so \(f(x) \le g(b) = a\). A term t containing only g and e can be e or can contain occurrences of g. If \(t = e\) then the interpretation of t in S is not a. If t contains occurrences of g it can be proven that the interpretation of t in S is d, i.e. is again different from a.

Thus \(\mathcal{T}= \textsf{SLat}_{\varSigma }(\mathcal{K})\) does not have the Beth definability property w.r.t. \(\varSigma _S\), hence, by Theorem 3, \(\mathcal{T}\cup \mathcal{T}' = \textsf{SLat}_{f, g}(\mathcal{K}) \cup \textsf{SLat}_{f', g}(\mathcal{K}') = \textsf{SLat}_{f,f',g}(\mathcal{K}\cup \mathcal{K}')\), where \(\mathcal{K}' = \{ y \le g(x) \rightarrow f'(y) \le g(x) \}\), does not have the \(\approx \)-interpolation property w.r.t. intersection-sharing, hence it does not have the \(\le \)-interpolation property w.r.t. intersection-sharing. (By Theorem 10 and Theorem 3, \(\mathcal{T}\) has the \(\varTheta _\mathcal{K}(\varSigma _S)\)-Beth definability property, where \(\varTheta _\mathcal{K}(\varSigma _S) = \{ f, g, e \}\). Indeed, then \(A \models a \approx f(e)\).)    \(\Box \)

6 Applications to \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\)-Subsumption

We now explain how these results can be used in the study of the description logics \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\). In any description logic a set \(N_C\) of concept names and a set \(N_R\) of roles is assumed to be given. Concept descriptions can be defined with the help of a set of concept constructors. The available constructors determine the expressive power of a description logic. If we only allow intersection and existential restriction as concept constructors, we obtain the description logic \(\mathcal{E}\mathcal{L}\) [1], a logic used in terminological reasoning in medicine [29, 30]. The table below shows the constructor names used in \(\mathcal{E}\mathcal{L}\) and their semantics.

Constructor name

Syntax

Semantics

conjunction

\(C_1 \sqcap C_2\)

\(C_1^\mathcal{I} \cap C_2^\mathcal{I}\)

existential restriction

\(\exists r.C\)

\(\{ x \mid \exists y ((x,y) \in r^\mathcal{I} \text{ and } y \in C^\mathcal{I}) \}\)

The semantics is given by interpretations \(\mathcal{I} = (\varDelta , \cdot ^\mathcal{I})\), where \(C^\mathcal{I} \subseteq \varDelta \) and \(r^\mathcal{I} \subseteq \varDelta ^2\) for every \(C \in N_C\), \(r \in N_R\). The extension of \(\cdot ^\mathcal{I}\) to concept descriptions is inductively defined using the semantics of the constructors. In [2, 3], the extension \(\mathcal{E}\mathcal{L}^+\) of \(\mathcal{E}\mathcal{L}\) with role inclusion axioms is studied.

A TBox (or terminology) is a finite set consisting of general concept inclusions (GCI) of the form \(C \sqsubseteq D\), where C and D are concept descriptions. A CBox consists of a TBox and a set of role inclusions of the form \(r_1 \circ \dots \circ r_n \sqsubseteq s\), so we view CBoxes as unions \(GCI {\cup } \mathcal{R}\) of a set GCI of general concept inclusions and a set \(\mathcal{R}\) of role inclusions of the form \(r_1 \circ \dots \circ r_n \sqsubseteq s\), with \(n {\ge } 1\).Footnote 3 An interpretation \(\mathcal{I}\) is a model of the CBox \(\mathcal{C} = GCI \cup \mathcal{R}\) if it is a model of GCI, i.e., \(C^\mathcal{I} {\subseteq } D^\mathcal{I}\) for every \(C {\sqsubseteq } D \in GCI\), and satisfies all role inclusions in \(\mathcal{C}\), i.e., \(r_1^\mathcal{I} \circ \dots \circ r_n^\mathcal{I} \subseteq s^\mathcal{I}\) for all \(r_1 \circ \dots \circ r_n \subseteq s \in \mathcal{R}\). If \(\mathcal{C}\) is a CBox and \(C_1, C_2\) are concept descriptions, then \(\mathcal{C} \models C_1 \sqsubseteq C_2\) if and only if \(C_1^\mathcal{I} \subseteq C_2^\mathcal{I}\) for every model \(\mathcal{I}\) of \(\mathcal{C}\).

In [23] we studied the link between TBox subsumption in \(\mathcal{E}\mathcal{L}\) and uniform word problems in the corresponding classes of semilattices with monotone functions. In [25], we showed that these results naturally extend to CBoxes and to the description logic \(\mathcal{E}\mathcal{L}^+\). When defining the semantics of \(\mathcal{E}\mathcal{L}\) or \(\mathcal{E}\mathcal{L}^+\) with role names \(N_R\) we use a class of \(\sqcap \)-semilattices with monotone operators of the form \(\textsf{SLat}_{\varSigma }\), where \(\varSigma = \{ f_r \mid r \in N_R \}\). Every concept description C can be represented as a term \({\overline{C}}\); the encoding is inductively defined: Every concept name \(C \in N_C\) is regarded as a constant \({\overline{C}} = C\). We define \(\overline{C_1 \sqcap C_2} := {\overline{C}_1} \sqcap {\overline{C}_2}\) and \(\overline{\exists r C} = f_{r}({\overline{C}})\). If \(\mathcal{R}\) is a set of role inclusions of the form \(r \sqsubseteq s\) and \(r_1 \circ r_2 \sqsubseteq s\), let \(\mathcal{K}\) be the set of all axioms of the form:

\( \begin{array}{rll} \forall x &{} (f_{r}(x) \le f_{s}(x)) &{} \text { for all } r \sqsubseteq s \in \mathcal{R} \\ \forall x &{} (f_{r_1}( f_{r_2}(x)) \le f_{s}(x)) &{} \text { for all } r_1 \circ r_2 \sqsubseteq s \in \mathcal{R} \end{array}\)

Theorem 11

([25]). Assume that the only concept constructors are intersection and existential restriction. Then for all concept descriptions \(D_1, D_2\) and every \(\mathcal{E}\mathcal{L}^+\) CBox \(\mathcal{C} {=} GCI {\cup } \mathcal{R}\) – where \(\mathcal{R}\) consists of role inclusions of the form \(r \sqsubseteq s\) and \(r_1 \circ r_2 \sqsubseteq s\) – with concept names \(N_C = \{ C_1, \dots , C_n \}\) and set of roles \(N_R\):

$$\mathcal{C} \models D_1 {\sqsubseteq } D_2 \quad \text { iff } \quad \left( {\sqcap }_{C {\sqsubseteq } D \in GCI} \overline{C} {\le } \overline{D} \right) \models _{\textsf{SLat}_{\varSigma }(\mathcal{K})} \overline{D_1} {\le } \overline{D_2},$$

where \(\varSigma \) is associated with \(N_R\) and \(\mathcal{K}\) with \(\mathcal{R}\) as described above.

In [8, 31] the following notion of interpolation which we call \(\sqsubseteq \)-interpolation is defined: A description logic has the \(\sqsubseteq \)-interpolation property if for any CBoxes \(\mathcal{C}_A = GCI_A \cup \mathcal{R}_A\), \(\mathcal{C}_B = GCI_B \cup \mathcal{R}_B\) and any concept descriptions CD such that \(\mathcal{C}_A \cup \mathcal{C}_B \models C \sqsubseteq D\) there exists a concept description T containing only concept and role symbols “shared” by \(\{ \mathcal{C}_A, C \}\) and \(\{ \mathcal{C}_B, D \}\) such that \(\mathcal{C}_A \cup \mathcal{C}_B \models C \sqsubseteq T\) and \(\mathcal{C}_A \cup \mathcal{C}_B \models T \sqsubseteq D\). By Theorem 11, \(\mathcal{C}_A \cup \mathcal{C}_B \models C \sqsubseteq D\) iff \(A \wedge B \models _{\textsf{SLat}_{\varSigma }(\mathcal{K})} \overline{C} {\le } \overline{D},\) where \(A = {\sqcap }_{C_1 {\sqsubseteq } C_2 \in GCI_A} \overline{C_1} {\le } \overline{C_2}\), \(B = {\sqcap }_{C_1 {\sqsubseteq } C_2 \in GCI_B} \overline{C_1} {\le } \overline{C_2}\), and \(\mathcal{K}= \mathcal{K}_A \cup \mathcal{K}_B\), the union of the axioms associated with the set inclusions \(\mathcal{R}_A\) resp. \(\mathcal{R}_B\). By Theorem 10, there exists a term containing only constants and function symbols \(\varTheta _{\mathcal{K}_A \cup \mathcal{K}_B}\) -shared by A and B such that \(A \wedge B \models _{\textsf{SLat}_{\varSigma }(\mathcal{K}_A \cup \mathcal{K}_B)} \overline{C} {\le } t \wedge t {\le } \overline{D}.\) From t we can construct a concept description T containing only concept names and roles shared by \(\mathcal{C}_A\) and \(\mathcal{C}_B\), and by Theorem 11, \(C_A \wedge C_B \models C \sqsubseteq T \wedge T \sqsubseteq D\). Therefore, the \(\sqsubseteq \)-interpolation problem studied for description logics in [8, 31] can be expressed in the case of \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\) as a \(\le \)-interpolation problem in the class of semilattices with operators, and the hierarchical method for \(\le \)-interpolation can be used in this case. We distinguish between intersection-sharing and \(\varTheta _\mathcal{R}\)-sharing, where \(\varTheta _\mathcal{R}\) is the analogon of \(\varTheta _\mathcal{K}\) where \(\mathcal{K}\) is the translation of \(\mathcal{R}\).

Corollary 12

\(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\) have the \(\sqsubseteq \)-interpolation property w.r.t. \(\varTheta _\mathcal{R}\)-sharing. \(\mathcal{E}\mathcal{L}^+\) with role inclusions of the form \(r_1 \circ r_2 \sqsubseteq s\) does not have \(\sqsubseteq \)-interpolation w.r.t. intersection-sharing.

7 Conclusions and Future Work

In this paper we gave a hierarchical method for P-interpolation in certain classes of local theory extensions \(\mathcal{T}_0 \subseteq \mathcal{T}_0 \cup \mathcal{K}\). We used these results for proving \(\le \)-interpolation in classes of semilattices with monotone operators satisfying additional clauses \(\mathcal{K}\) with a suitable notion of \(\varTheta _\mathcal{K}\)-sharing we defined. We defined a form of Beth definability w.r.t. a subsignature \(\varSigma _S\) and used it to show that the class of semilattices with operators under consideration does not have the \(\le \)-interpolation property if only the common function symbols and constants are considered to be “shared”. We discussed how these results can be used for the study of interpolation in \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\).

The ideas were implemented in a prototype implementationFootnote 4 for the theory of semilattices with operators satisfying axioms of type (1) considered in this paper. The program is written in Python and uses Z3 [7] and SPASS [33] as external provers. The program implements Steps 1–3 in the algorithm presented at the end of Sect. 4 with the following optimization: In Step 1 after instantiation and purification, in order to reduce the size of the set of instances of axioms to be considered, an unsatisfiable core is computed with Z3. The program separates the mixed instances by computing intermediate terms for their premises using Theorem 8 and Proposition 6; for applying ordered resolution the prover SPASS is used. In Step 3, the intermediate term T for \(C \le D\) is computed using the method described in Theorem 8, again using SPASS.

For the use for interpolation in \(\mathcal{E}\mathcal{L}\) and \(\mathcal{E}\mathcal{L}^+\), the CBoxes \(\mathcal{C}_A\) and \(\mathcal{C}_B\) and the subsumption \(C \sqsubseteq D\) are given as an input. A minimal subset of \(\mathcal{C}_A \cup \mathcal{C}_B\) is computed from which \(C \sqsubseteq D\) can be derived. (The user can choose between a precise translation to SPASS or a propositional translation to Z3 which is not always precise, but turned out to be a good approximation. Standard implementations available for computing justifications of entailments from description logic ontologies could be used as well.) The problem is then translated into a problem for \(\le \)-interpolation in semilattices with operators. After computing the interpolating term, the result is expressed in the syntax of description logics.

In future work we will explore other application areas of these results, both to classes of non-classical logics and to theories relevant in the verification. We plan to extend the implementation with possibilities of choosing the base theory and the methods for P-interpolation in the base theory. We will further investigate the links with Beth definability and possibilities of using Beth definability for computing explicit definitions for implicitly definable terms – and analyze the applicability of such results in description logics but also in verification.