K-paramodulation Calculus
In this chapter, we define a variant of the paramodulation calculus that is deductive-complete. The deductive-completeness result is proved in the first section. The second and third sections introduce two variants of this calculus that use the atomic implicates of the input formula to simplify the considered problem. In Section2, this simplification is done as a preprocessing of the input formula and in Section3 we introduce a method to perform similar simplifica- tions during the saturation process.
1
Main calculus
Our objective is to create a calculus operating on clauses in E0 that com-
putes all the prime implicates of a formula. To achieve this, we define the K-paramodulation calculus in E0.
The principle underlying this calculus is to assert equations rather than proving them, in contrast to the superposition calculus. For example, let us consider the formula S = {a ' b, c ' d}. By superposition, nothing can be generated from S since no constant occurs in both clauses. In contrast, with K-paramodulation, we want to be able to generate clauses like a 6' c ∨ b ' d, which is a prime implicate of S and can also be seen as the result of the paramod- ulation of a ' b into c ' d under the assumption that a and c are equal. To do so, we must allow the unification of constants that are not known to be equal, like a and c in S, by adding to the generated clause the negation of a hypothesis justifying this superposition, here, the literal a 6' c.
1.1
Definition of the K-paramodulation calculus
The principle presented in the introductory paragraph is formalized in the following calculus.
1. Main calculus
Definition 2.1 The simple K-paramodulation calculus is defined in E0by three
inference rules: Positive Paramodulation (P+): a ' b ∨ C a 0' c ∨ D a 6' a0∨ b ' c ∨ C ∨ D Negative Paramodulation (P−): a 6' b ∨ C a 0' c ∨ D a 6' a0∨ c 6' b ∨ C ∨ D Factorization (F): a ' b ∨ a 0' b0∨ C a ' b ∨ a 6' a0∨ b 6' b0∨ C
where the consequents are systematically normalized. ♦ Compared to the superposition calculus (see Definitionii.17),
— all the ordering constraints have been removed so that all prime impli- cates can be generated,
— there is no use for a Reflection rule because the generated clauses are systematically normalized.
The rules P+ and P− are similar to the standard paramodulation rule, except
that the unification of the terms a and a0is omitted and replaced by the addition of the literal a 6' a0 ensuring that these terms are semantically equivalent. Similarly, F factorizes the literals a ' b and a0' b0 under the assumption that
a ' a0 and b ' b0.
Remark 2.2 The simple K-paramodulation calculus simulates the superposi- tion calculus. For example, from a ' b ∨ C and a ' c ∨ D, the clause b ' c ∨ C ∨ D is generated by standard paramodulation if the ordering constraints are respected. This clause is equivalent to (a 6' a ∨ b ' c ∨ C ∨ D)↓, that is gen- erated by K-paramodulation.
We shall prove (see Lemma 2.11) that this calculus is deductive-complete, in the sense that it can generate all the prime implicates of a set of flat clauses. However, this property does not hold in the presence of redundancy elimination rules, as the following example shows:
Example 2.3 Consider the set: S = {c 6' a ∨ d 6' a, a ' b ∨ c 6' b ∨ d 6' b} and let C = c 6' b ∨ d 6' b. It is clear that S |= C (e.g. by paramodulating twice the second clause into the first one on literal a ' b) and that C is a prime implicate of S. However, it can be verified that S is saturated up to redundancy, i.e. all the clauses generated from S in one iteration are redundant in S. For example, paramodulating the literal a ' b of the second clause into the literal c 6' a of the first clause yields (a 6' a ∨ c 6' b ∨ d 6' a ∨ c 6' b ∨ d 6' b)↓ = c 6' a∨d 6' a, which is i-subsumed by the first clause in S. Therefore, with the simple K-paramodulation calculus augmented with eager redundancy elimination rules,
C cannot be generated. ♣
From a practical point of view, redundancy elimination is of course essential. Thus we have to extend the calculus so that completeness still holds when redun- dant clauses are deleted. A slight modification of the P− rule suffices to correct
this defect: the modification permits to perform simultaneous paramodulations into the negative literals of a clause. The result is the following calculus. Definition 2.4 The K-paramodulation calculus is defined in E0by three infer-
ence rules: Paramodulation (P+): a ' b ∨ C a 0' c ∨ D a 6' a0∨ b ' c ∨ C ∨ D Factorization (F): a ' b ∨ a 0 ' b0∨ C a ' b ∨ a 6' a0∨ b 6' b0∨ C Negative Multi-Paramodulation (M): Wn i=1(ai6' bi) ∨ C c ' d ∨ D Wn i=1(ai6' c ∨ d 6' bi) ∨ C ∨ D
We write S `K C if C is generated from premises in S by one application of
the rules P+, F or M. The premises are assumed to be in normal form and the
consequent is normalized before being stored. ♦ The rules P+ and F are the same as in the simple K-paramodulation calculus
and the rule M that replaces P− corresponds to the simultaneous unification of c and the ai to paramodulate the second clause into the first one on each of the
ai 6' bi at the same time. Note that M is strictly more general than P− in the
sense that it allows one to infer strictly more clauses (the branching factor is thus increased). In fact, for n = 1 this rule is the same as P−.
Remark 2.5 Note that the M rule is more general than what is known as si- multaneous paramodulation in the literature [7] where simultaneous unifications are only allowed with the different occurrences of the same term, like when all the ai of the M rule are equal.
Example 2.6 The application of the rule P+on d ' c ∨ d ' b and d ' a yields
the following clauses (among others):
d 6' d ∨ a ' c ∨ d ' b (terms d and d) c 6' a ∨ d ' d ∨ d ' b (terms c and a) b 6' d ∨ d ' c ∨ d ' a (terms b and d)
The clauses are normalized afterwards: the first clause is replaced by a ' c ∨ d ' b, the second stays the same and the third one is replaced by d 6' b∨c ' b∨b ' a (since b ≺ d). Note that the redundancy elimination rule deletes the second
clause since it is a tautology. ♣
Example 2.7 The rule F applies on the clause a ' b ∨ a ' c ∨ c ' d, yielding, e.g., a ' b ∨ a 6' a ∨ b 6' c ∨ c ' d. The normal form of the latter is c 6' b ∨ a '
b ∨ b ' d. ♣
Example 2.8 Consider the clauses a 6' b ∨ a 6' c and a ' b. With n = 1, the rule M applies on the couples of literals (a 6' b, a ' b) or (a 6' c, a ' c), the first application yielding (among other, trivial results) a 6' a ∨ b 6' b ∨ a 6' c, i.e., after normalization a 6' c. It also applies with n = 2, yielding a 6' a ∨ b 6' b ∨ a 6' a ∨ b 6' c, or, in normalized form, b 6' c. ♣
1. Main calculus
Example 2.9 Going back to the formula S = {c 6' a∨d 6' a, a ' b∨c 6' b∨d 6' b} introduced in Example 2.3, the problem previously illustrated disappears by using the newly defined K-paramodulation since C = c 6' b ∨ d 6' b can be generated by a single inference of the rule M in S. ♣ The deletion of redundant clauses is done using i-subsumption instead of entailment in the redundancy elimination rule. Note that i-subsumption is in- comparable with the standard redundancy criterion (even if restricted to one- to-one redundancy test) because on the one hand the existence of an injective mapping between positive literals is assumed and on the other hand no ordering condition is imposed. The standard redundancy criterion based on the use of a reduction ordering (Definitionii.21) to compare clauses cannot be used here because it does not ensure the completeness of the K-paramodulation calculus (although no simple example can be given to illustrate this fact).
Definition 2.10 A set of clauses S is K-saturated iff for every non-tautological clause C that can be derived from S using these rules, there exists a clause C0∈ S such that C0 ≤
iC. ♦