Non-linear 편집시스템

Formal verification and symbolic model checking generate formulas that have to be checked for satisfiability. These formulas may contain quantifiers, but often, these quantifiers can easily be eliminated by instantiation. The problem is thus reduced to check the satisfiability of quantifier-free formulas. Combining decision procedures (see for instance [3, 2, 4]) allows to build a complete satisfiability checking method for quantifier-free formulas containing altogether interpreted symbols from several disjoint decidable languages. For instance, it is possible to build a decision procedure for quantifier-free formulas containing linear arithmetic symbols (+, 0, 1, <,. . . ), uninterpreted predicates and functions, constructors and accessors for lists,. . . The obtained decision procedure uses the specialized decision procedures for each sub-language as loosely-connected components. Non-linear arithmetic on reals is decidable. It is thus natural to want to integrate this decidable fragment as a component of a combination. This is also strongly motivated by the fact that non-linear arithmetic is often present in verification conditions, notably for protocols with real-time aspects (and for instance, FlexRay, the new by-wire protocol for automobiles). At the present time, no satisfiability checking tool integrates in a satisfactory way the capabilities to handle non-linear arithmetic. We propose to study the methods to solve non-linear arithmetic problems [1] and to design techniques allowing to integrate those methods within a combination. A first step will be to identify and evaluate existing tools that handle non-linear arithmetic constraints (for instance QEPCAD). Next, the student will examine the possibility to integrate those tools into a combination. The ultimate aim of this work is to build a component that will take a set of non-linear constraints as input and