Cooperation of decision procedures for the satisfiability problem
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Abstract. Constraint programming is strongly based on the use of solvers
1. Introduction
In recent years, the problem of combining decision procedures became of greatest interest in many elds of computer science, especially for constraint programming and automated deduction. The modular construction of decision procedures has been considered for the rst time by Shostak 17, 18] in order to solve heterogeneous formulae involving arithmetic and additional function symbols. Approximately in the same time, Nelson & Oppen 12, 13, 11] proposed an algorithm dedicated to the union of theories axiomatizing reals, arrays, lists and additional function symbols. The aim was to build a validity checker for programming languages in which such formulae frequently appear. Formally, the combined decision problem can be stated as follows: Given two rst-order theories Th1 and Th2 built respectively on the signatures 1
1 2 1 2
2. De nitions
We rst brie y introduce some basic notations. Let = (F ; P ) be a monosorted rst-order signature where F is a nite set of function symbols and P is a nite set of predicate symbols. The set P does not contain = which is always interpreted as the identity relation. The subset of function symbols in F (resp. predicate symbols in P ) of arity m is denoted by Fm (resp. Pm ). The arity of a function symbol f (resp. a predicate symbol p) is denoted by ar(f ) (resp. ar(p)). The set of -terms over a set A and of height n is de ned recursively as follows: 1. T0( ; A) = A, 2. Tn ( ; A) = ff (~ ) j f 2 Fm ;~ 2 (Tn?1 ( ; A))mg Tn?1 ( ; A). a a
COOPERATION OF DECISION PROCEDURES FOR THE SATISFIABILITY PROBLEM
CHRISTOPHE RINGEISSEN INRIA-Lorraine & CRIN-CNRS 615, rue du Jardin Botanique BP 101, 54602 Villers-l s-Nancy Cedex, France e-mail: Christophe.Ringeissen@loria.fr
ห้องสมุดไป่ตู้
a0k
and de nes a congruence relation on T ( ; A) as follows: f (a1 ) f (a2 ) ~ ~ if a1 a2 and f 2 F . Note that we use vectors to denote tuples. The ~ ~ equivalence class of a 2 A w.r.t. is denoted by a] . Let us consider the set of -terms over X where X is an in nite denumerable set of variables. The terms tj! and t ! - s] denote respectively the subterm of t at the position ! and the replacement in t of tj! by s. The symbol of t occurring at the position ! (resp. the top symbol of t) is written t(! ) (resp. t( )). The set of variables occurring in a term t is denoted by V (t). Let M be a F -algebra with A as domain. An assignment is a mapping from X to A; it uniquely extends to an homomorphism from T ( ; X ) to M. The restriction of to a set of variables V is denoted by jV . The range of is denoted by Ran( ). A M-solution of a quanti er-free -formula ' is an assignment such that (') holds in M. The formula ' is valid in M, denoted by M j= ', if any assignment is a M-solution of '. A substitution is an assignment from X to T ( ; X ) with only nitely many variables not mapped to themselves. A substitution uniquely extends to an endomorphism of T ( ; X ). We use letters ; ; ; ; : : : to denote substitutions and do not distinguish and . Application of substitutions is written out by post xed juxtaposition. We call domain of the substitution the ( nite) set of variables Dom( ) = fxjx 2 X and x 6= xg, range of the set of terms Ran( ) = x2Dom( ) fx g and variable range of the set of variables VRan( ) = x2Dom( ) V (x ). A substitution is idempotent if = . De nition 1 A -theory (resp. universal -theory) is a (possibly in nite) set of rst-order -sentences (resp. universally quanti ed rst-order sentences), where sentences are formulaes without free variables. The -theory (resp. universal -theory) of a -structure M is denoted by T H(M) (resp. Th(M)) and is de ned as the set of rst-order -sentences (resp. universally quanti ed rst-order -sentences) ' such that M j= '. A -structure M is a model of a -theory Th, denoted by M j= Th, if M j= ' for any ' 2 Th. A conjunction of atomic -literals (i.e. an atomic formula, an equation or its negation) with (possibly) some universally quanti ed variables is simply called here a -formula. A disjunction of -formulae must be viewed as usual as a sequence of -formulae to consider separately. The set of free variables occurring in a formula ' is denoted by V ('). A formula ' is satis able w.r.t. Th if there exist a model M of Th and a M-solution of
COOPERATION OF SATISFIABILITY PROCEDURES
3
The set of -terms over A is T ( ; A) = n 0 Tn ( ; A). An equivalence relation on A can be extended as usual on Am : (a1; : : :; am) (a01; : : :; a0m) if 8k 2 1; m]; ak
2
CHRISTOPHE RINGEISSEN
and 2 , how is it possible to build a decision algorithm for the 1 2 -theory Th1 Th2 thanks to the decision algorithms provided for the 1-theory Th1 and the 2-theory Th2 ? Until now, the main assumption is the disjointness of signatures 1 and 2 . A further assumption needed in the framework of Nelson & Oppen is that single theories must be universal and stably in nite which means that a formula ' is satis able if and only if there exists a model of the theory with an in nite domain satisfying '. So, even for the disjoint case, abstract assumptions on theories are needed in order to obtain a completeness result of the decomposition algorithm. Another modularity problem has been thoroughly studied during the last decade for uni cation 19, 21, 8, 16, 6, 3] in the union of two equational theories E1 and E2, that is for solving equations in the term algebra T ( 1 2; X )= =E E . Then, the combination techniques developed in this context have been extended in two directions: rst, to allow other constraints 4, 15, 10] in T ( 1 2 ; X )= =E E and second, to permit shared function symbols 14, 7]. In this paper, we present combination techniques for solving the original satis ability problem in a non-deterministic manner (the simplest one) and in the non-disjoint case. Section 2 recalls the basic de nitions of the notions used in the following. In Section 3, we present the rule-based decomposition algorithm which is correct and complete for all unions of theories considered along the paper. Section 4 gives the general construction of a model for the union of theories Th1 Th2 . Section 5 introduces su cient assumptions on disjoint or non-disjoint theories to be combined. We investigate the case where shared function symbols are interpreted in the trivial way (i.e. syntactically) in both models of the theories. Section 6 presents some applications related to equational theories. In Section 7, we conclude with nal remarks and future works.
which are able to check satis ability of constraints. We show in this paper a rule-based algorithm for solving in a modular way the satis ability problem w.r.t. a class of theories Th. The case where Th is the union of two disjoint theories Th1 and Th2 is known for a long time but we study here di erent cases where function symbols are shared by Th1 and Th2 . The chosen approach leads to a highly non-deterministic decomposition algorithm but drastically simpli es the understanding of the combination problem. The obtained decomposition algorithm is illustrated by the combination of non-disjoint equational theories.