<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Wrapping Computer Algebra is Surprisingly Successful for Non-Linear SMT</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Pascal Fontaine</string-name>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>(orcid.org/</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mizuhito Ogawa</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>(orcid.org/</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Thomas Sturm</string-name>
          <email>sturm@mpi-inf.mpg.de</email>
          <email>thomas.sturmg@loria.fr</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>(orcid.org/</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Van Khanh To</string-name>
          <email>khanhtv@vnu.edu.vn</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Xuan Tung Vu</string-name>
          <email>tungvxg@jaist.ac.jp</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>(orcid.org/</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Japan Advanced Institute of Science and Technology</institution>
          ,
          <addr-line>Nomi</addr-line>
          ,
          <country country="JP">Japan</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>MPI Informatics and Saarland University</institution>
          ,
          <addr-line>Saarbru ̈cken</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Engineering and Technology</institution>
          ,
          <addr-line>VNU, Hanoi</addr-line>
          ,
          <country country="VN">Vietnam</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>University of Lorraine</institution>
          ,
          <addr-line>CNRS, Inria, and LORIA, Nancy</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
      </contrib-group>
      <fpage>110</fpage>
      <lpage>117</lpage>
      <abstract>
        <p>We report on a prototypical tool for Satisfiability Modulo Theory solving for quantifier-free formulas in Non-linear Real Arithmetic or, more precisely, real closed fields, which uses a computer algebra system as the main component. This is complemented with two heuristic techniques, also stemming from computer algebra, viz. interval constraint propagation and subtropical satisfiability. Our key idea is to make optimal use of existing knowledge and work in the symbolic computation community, reusing available methods and implementations to the most possible extent. Experimental results show that our approach is surprisingly efficient in practice.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Quantifier-free non-linear real arithmetic (QF NRA) appears in many applications of
satisfiability modulo theories (SMT) solving. Efficient reasoning techniques for the
corresponding constraints in SMT solvers is thus highly relevant. Examples of SMT solvers
with theory reasoners for non-linear real arithmetic are CVC4 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], SMT-RAT [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], Z3 [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]
and Yices [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. We report here on the prototypical non-linear theory reasoner in veriT.
It is based on three techniques, namely interval constraint propagation, subtropical
satisfiability, and quantifier elimination. Interval constraint propagation and subtropical
satisfiability are heuristic procedures that are easy to implement, but incomplete.
Completeness of the theory solver is guaranteed by the use of quantifier elimination. In
order to make optimal use of existing knowledge and work in the symbolic
computation community, we take advantage of an independent computer algebra system
(Redlog/Reduce). The theory reasoner built from these three components is called lazily, on
full models produced by the underlying SAT solver. This simple SMT solver is actually
quite efficient in solving problems in the QF NRA category of the SMT-LIB.
? The order of authors is strictly alphabetic.
      </p>
      <p>In Section 2, we briefly present the three procedures that are used in the tool. We
then describe how they are combined into one theory reasoner for non-linear real
arithmetic literals. We finally report on experiments on the SMT-LIB.
2
2.1</p>
    </sec>
    <sec id="sec-2">
      <title>Component Procedures</title>
      <sec id="sec-2-1">
        <title>Interval Constraint Propagation</title>
        <p>
          This section briefly introduces Interval Constraint Propagation (ICP) [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ], a technique
providing an incomplete but efficient method to check the satisfiability over the reals of
a finite set of polynomial constraints [
          <xref ref-type="bibr" rid="ref12 ref17 ref25 ref8 ref9">8,17,9,12,25</xref>
          ]. Algorithm 1 depicts a naive
version of ICP. This algorithm works on boxes in Rn; initially (line 2) there is one box
set to ] ¥; ¥[n for the n variables in the constraints. It iteratively (line 3) picks one
box B (line 4) and uses the constraints to heuristically contract that box (line 6), then it
evaluates the constraints on B, discarding the box if there is no possible solution (one
constraint is unsatisfiable on the box, line 7), or decomposing B into smaller boxes,
which will later be considered the same way (line 12). The algorithm terminates
concluding unsatisfiability (line 15) when all boxes have been discarded (one constraint is
unsatisfiable, for each box), or concluding satisfiability when all constraints are valid
in the same box (line 10, indeed every point in the box is a solution for the set of
constraints). Note that ICP does not require tedious computations with real algebraic
numbers at all. However, the algorithm does not necessarily terminate since it might
infinitely decompose boxes into smaller ones.
        </p>
        <p>Algorithm 1 ICP for a set of polynomial constraints '
1: function ICP(')
2: S f ] ¥; ¥[ng
3: while S 6= 0/ do
4: choose B 2 S
5: S S n fBg
6: B0 contract B from constraints
7: if B0 = 0/ or one constraint is unsatisfiable on B0 then
8: continue
9: else if all constraints are valid on B0 then
10: return SAT
11: end if
12: B1; B2 decompose B0
13: S S [ fB1; B2g
14: end while
15: return UNSAT
16: end function</p>
        <p>
          Our implementation of ICP uses testing [
          <xref ref-type="bibr" rid="ref12 ref25">12,25</xref>
          ], to improve satisfiability detection:
the constraints are regularly checked for satisfiability on random test points inside given
boxes. Since ICP uses interval arithmetic as an approximation to check validity or
unsatisfiability of constraints on a box of full dimension, it is rarely able to find satisfiable
assignments in presence of equations. Our ICP algorithm furthermore uses the
Intermediate Value Theorem as a heuristic to assert that equations are satisfied within a given
box [
          <xref ref-type="bibr" rid="ref25">25</xref>
          ].
2.2
        </p>
      </sec>
      <sec id="sec-2-2">
        <title>Subtropical Satisfiability</title>
        <p>
          The subtropical satisfiability checking method [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] (SUBTROP) is based on the
simultaneous evaluation of the input set of polynomial constraints when the values of variables
approach 0, 1, or ¥ following some polynomial curve. It basically checks for such
limits, if within each polynomial one monomial dominates all other ones. If so, the
algorithm computes an interpretation for variables, based on the curve, such that all
polynomials in the set have a value of a given sign. The method is mostly limited to
determine the satisfiability of a set of constraints containing only inequalities, but it
appears that this is useful for the various applications represented in the SMT-LIB.
Example 1. Consider f1 = 12 + 2x12y25z49 31x13y22z110 11x1000y500z89 and f2 =
23 + 5xy22z110 21x15y20z1000 + 2x100y2z49, and the satisfiability checking problem
f1 &gt; 0 ^ f2 &gt; 0. The method (see [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] for details) shows that the monomials 2x12y25z49
and 5xy22z110 respectively dominate in f1 and f2 when (x; y; z) tends to (0; ¥; 0), more
precisely, for values (x; y; z) = (an1 ; an2 ; an2 ) with, for instance, n1 = 122308486314 , n2 =
21637225406701 , n3 = 1336285506711 and a sufficiently large. The method actually computes those
n1; n2; and n3. So, if a 2 R+ is large enough, then both constraints f1(an1 ; an2 ; an3 ) &gt; 0
and f2(an1 ; an2 ; an3 ) &gt; 0 are satisfied. Consider a = 2 for instance: then f1(an1 ; an2 ; an3 )
16371:99 and f2(an1 ; an2 ; an3 ) 17707:27.
tu
The subtropical method expresses as linear constraints some conditions for one
monomial to dominate within a polynomial. Subsequently, an SMT solver is used to check
the satisfiability of these linear constraints. If the linear constraints are satisfiable, then
the non-linear constraint is satisfiable and the model of the linear constraints provides
a witness for the polynomial curve, i.e., for the previous example, the values of n1; n2;
and n3. For sets of polynomial constraints, the process is essentially the same.
        </p>
        <p>Experimentally, the application of the subtropical satisfiability method to solve
nonlinear constraints is fast, either to succeed or to fail. On our experiments, it
furthermore provides an answer on several problems that defeat all state-of-the-art solvers.
The method thus establishes a useful complementing heuristic with little drawback, to
be used either upfront or in portfolio with other approaches to deal with non-linear
constraints.
2.3</p>
      </sec>
      <sec id="sec-2-3">
        <title>Quantifier Elimination</title>
        <p>
          As a complete method, we use Quantifier Elimination techniques (QE). While it is
possible to quickly implement ICP and subtropical satisfiability checking, those quantifier
elimination techniques are significantly more complex and require expertise. It is not
feasible to implement a custom version for SMT with a few person months. We thus
used a computer algebra system, namely Reduce, and more precisely, the package
Redlog [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] which implements interpreted first-order logic on top of computer algebra.
Besides many other domains, Redlog provides decision procedures for real closed fields.
For real arithmetic Redlog combines two quantifier elimination techniques, virtual
substitution [
          <xref ref-type="bibr" rid="ref13 ref26 ref27">26,27,13</xref>
          ] with partial cylindrical algebraic decomposition [
          <xref ref-type="bibr" rid="ref19 ref3">3,19</xref>
          ]. For a survey
of real applications of Redlog see [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ]. Further theories supported by Redlog include
discretely valued fields [
          <xref ref-type="bibr" rid="ref21">21</xref>
          ], term algebras [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ], QBF [
          <xref ref-type="bibr" rid="ref20 ref24">20,24</xref>
          ], Presburger Arithmetic
[
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] and fragments of non-linear integer arithmetic [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ].
        </p>
        <p>
          To embed a decision procedure in SMT, one property is mandatory: the procedure
should feature small conflict production. From an unsatisfiable set of literals, it should
produce an unsatisfiable subset containing few unnecessary literals, optimally a
minimal unsatisfiable subset, i.e. such that all proper subsets are satisfiable. With small
conflict production, the SMT infrastructure goes considerably beyond a SAT solver
enumerating all possible models of the Boolean abstraction of the input formula, the theory
reasoner refuting them one at a time. We recently presented [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] a method using linear
optimization to compute conflict sets for cylindrical algebraic decomposition and
virtual substitution. Virtual substitution and cylindrical algebraic decomposition share the
same basic idea of finding a finite set of test points that suffice to determine the
unsatisfiability of a set of constraints S . If the set S is unsatisfiable, each of these test points
falsifies at least one constraint in S . Finding a conflict set reduces to finding a subset of
the constraints that contains, for each test point, at least one unsatisfied constraint. We
implemented this in the Quantifier Elimination algorithms in Redlog. Redlog/Reduce
now furthermore provides an interface for SMT solver, so that the software can be used
as a theory reasoner with little effort. This reasoner is used in our portfolio of tools, and
guarantees the completeness of the combination of reasoners on real closed fields.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Combining Procedures</title>
      <p>We have previously discussed subtropical satisfiability (SUBTROP), interval constraint
propagation (ICP), and quantifier elimination (QE). Our aim is to combine these in a
complete and efficient framework for solving polynomial constraints. Recall that
SUBTROP is only an incomplete heuristics, and ICP does not even guarantee termination;
ICP might loop forever, for instance in the case of touching spheres. Combining ICP
sequentially with other procedures thus requires heuristics for ICP termination to ensure
fairness and to let the other algorithms also work on the constraints. Before
decomposing a box into smaller ones (line 12 in Algorithm 1), our algorithm will check if
bounded boxes have been generated, all the bounded boxes are smaller than a chosen
value " in all dimensions. If so, the algorithm gives up, and returns UNKNOWN along
with the box B resulting from the contraction of ] ¥; ¥[n from constraints; the
algorithm returns the empty box in case of unsatisfiability and the valid box in case of
satisfiability. Intuitively, B is an over-approximation of all boxes possibly containing
solutions of constraints. We furthermore require that boxes are handled in a
chronological order, that is, S in Algorithm 1 becomes a queue, where the first box (the oldest one)
is chosen and removed, and newer boxes are added at the end. Boxes are decomposed
only along axes with lengths greater than ". The procedure ensures unbounded boxes
are not decomposed infinitely. The algorithm terminates either when it detects
satisfiability (or unsatisfiability) or all bounded boxes have all dimensions smaller than ". We
refer to this terminating version of ICP as ICPT.</p>
      <p>A lazy combining approach considers the procedures as black boxes and invokes
them sequentially to check the satisfiability of the constraints. The fastest procedures to
terminate are ordered first, and the complete procedure is called last. In Algorithm 2,
SUBTROP(') returns SAT if and only if subtropical satisfiability succeeds in finding
a model for '; remember that subtropical satisfiability is indeed essentially a model
finding method. The complete decision procedure (in our case, quantifier elimination
methods as implemented in Redlog/Reduce) is called in line 9, and returns SAT (resp.
UNSAT) if the input is satisfiable (resp. unsatisfiable). Notice that, when calling the
complete decision procedure, the set of constraints ' is complemented with a box B
found by ICPT. Actually (this is not shown in Algorithm 2), ' is furthermore cleaned of
the constraints that are valid in the box B.</p>
      <p>Algorithm 2 Lazy combination of procedures
1: function LAZY(')
2: if SUBTROP(') = SAT then
3: return SAT
4: end if
5: (result, B) ICPT(')
6: if result 6= UNKNOWN then
7: return result
8: end if
9: return QE (' ^ B)
10: end function</p>
      <p>
        We experimentally evaluated another combination interleaving more tightly the
complete procedure and ICP. The combination is similar to ideas in [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]: when a box
of ICP becomes smaller than a threshold ", quantifier elimination is called, for the sake
of completeness, to solve the remaining unknown constraints over this small box. We
found however that this performs less well than the lazy one above. We are investigating
further techniques to fix this.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Experiments</title>
      <p>All experiments were conducted on an Intel Xeon E5-2680v2 at 2.80GHz running
GNU/Linux CentOS 6.4 with kernel 2.6.32. Each solver ran on the 11354 benchmarks
of the QF NRA category (quantifier-free Non-linear Real Arithmetic) of the SMT-LIB
(4963 are labeled as satisfiable, 5296 unsatisfiable, 1095 unknown) with a memory limit
of 8 GB memory and a time out of 2500 seconds for each benchmark.5
5 See http://www.jaist.ac.jp/ s1520002/veriT+STROPSAT+raSAT+Redlog/ for full
results and the tool with the source code. Note to reviewers: this will soon be on Zenodo.</p>
      <p>
        In our implementation, raSAT [
        <xref ref-type="bibr" rid="ref12 ref25">12,25</xref>
        ] serves as the ICP-based solver, the computer
algebra system Redlog/Reduce [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] for quantifier elimination, and STROPSAT [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] as
the implementation of subtropical satisfiability. The interface for the three tools within
veriT is 900 lines of C code. Notice that CVC4 is used inside STROPSAT to solve linear
constraints (see again [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]). The framework for solving polynomial constraints in the
SMT solver is called lazily, when the underlying SAT solver has produced a full model
and if the corresponding set of literals is not shown unsatisfiable by the linear arithmetic
decision procedure in veriT.
      </p>
      <p>Table 1 compares the performance of the distinct procedures and their
combination. Notice that QE alone already solves many problems, but combining the procedures
brings improvements both in running time and in the number of solved problems.
SUBTROP increases the number of solved satisfiable problems and improves times for
several satisfiable problems, without significantly impacting negatively for the problems
solved by the other methods: indeed, SUBTROP actually takes around 2000 additional
seconds for six difficult problems also solved by the combination of ICP and QE, and
uses 4000 seconds to solve 17 more problems. ICP has a general positive impact both
on running times and on the number of problems solved.</p>
      <p>
        Table 2 compares state-of-the-art SMT solvers with support for non-linear
arithmetic. SMT-RAT implements a less lazy combination (as mentioned in the previous
section) between interval constraint propagation and cylindrical algebraic
decomposition [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], Yices and Z3 implement the nlsat procedure [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. CVC4 uses
contextdependent simplification [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] and incremental linearization [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Our results validate
the main point of the paper: a combination of simple heuristics (ICP and subtropical
satisfiability) with quantifier elimination as implemented in a computer algebra system
(Redlog/Reduce) slightly tuned to fit the SMT infrastructure is an efficient decision
procedure to solve non-linear arithmetic SMT problems. Table 2 also clearly exhibits that
the virtual best solver — a portfolio of all mentioned solvers running in parallel — is
much better than each individual solver; we attribute this to the variety of techniques
used in the solvers.
5
      </p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>Implementing state-of-the-art decision procedures for the theory of real non-linear
arithmetic requires a lot of expertise and is very time consuming. Hopefully, reusing a
computer algebra system actually provides good results on the SMT-LIB. We also notice
that, thanks to the diversity of techniques used to tackle this theory, the various SMT
solvers have complementary strengths and the virtual best solver is much better than
each solver alone.</p>
      <p>We expect the non-linear arithmetic reasoner in veriT to improve, following the
improvements in the embedded computer algebra system itself. For instance,
Redlog/Reduce features a new experimental virtual substitution algorithm which shows
very promising results on problems stemming from other computer algebra
applications; veriT will eventually benefit from this new algorithm once it becomes stable.</p>
      <p>In future works, we plan to investigate a less lazy combination of ICP and quantifier
elimination. In our current prototype, the quantifier elimination is applied for each box
that ICP is unable to discard, one at a time. The idea would be, with a single call to
quantifier elimination, to eliminate several boxes in ICP.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>This project has received funding from the European Union’s Horizon 2020 research
and innovation programme under grant agreement No H2020-FETOPEN-2015-CSA
712689 (SC2), and from the European Research Council under the European Union’s
Horizon 2020 research and innovation program (grant agreement No. 713999,
Matryoshka). Xuan Tung Vu would like to acknowledge the JAIST Off-Campus Research
Grant for fully supporting him during his stay at LORIA, Nancy. The work has also been
partially supported by the JSPS KAKENHI Grant-in-Aid for Scientific Research(B)
(15H02684) and the JSPS Core-to-Core Program (A. Advanced Research Networks).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Benhamou</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Granvilliers</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Continuous and interval constraints</article-title>
          . In: F. Rossi,
          <string-name>
            <given-names>P.v.B.</given-names>
            ,
            <surname>Walsh</surname>
          </string-name>
          , T. (eds.)
          <article-title>Handbook of Constraint Programming</article-title>
          , pp.
          <fpage>571</fpage>
          -
          <lpage>604</lpage>
          . Elsevier, New York (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Cimatti</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Griggio</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Irfan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roveri</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sebastiani</surname>
          </string-name>
          , R.:
          <article-title>Satisfiability modulo transcendental functions via incremental linearization</article-title>
          . In: de Moura, L. (ed.)
          <article-title>CADE 2017</article-title>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>10395</volume>
          , pp.
          <fpage>95</fpage>
          -
          <lpage>113</lpage>
          . Springer (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3. Collins,
          <string-name>
            <given-names>G.E.</given-names>
            ,
            <surname>Hong</surname>
          </string-name>
          , H.:
          <article-title>Partial cylindrical algebraic decomposition for quantifier elimination</article-title>
          .
          <source>J. Symb. Comput</source>
          .
          <volume>12</volume>
          (
          <issue>3</issue>
          ),
          <fpage>299</fpage>
          -
          <lpage>328</lpage>
          (
          <year>Sep 1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Dolzmann</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Redlog: Computer algebra meets computer logic</article-title>
          .
          <source>SIGSAM Bull</source>
          .
          <volume>31</volume>
          (
          <issue>2</issue>
          ),
          <fpage>2</fpage>
          -
          <lpage>9</lpage>
          (
          <year>Jun 1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Dutertre</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Yices 2.2</article-title>
          . In: Biere,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Bloem</surname>
          </string-name>
          ,
          <string-name>
            <surname>R. (eds.) CAV</surname>
          </string-name>
          <year>2014</year>
          . pp.
          <fpage>737</fpage>
          -
          <lpage>744</lpage>
          . Springer (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Florian</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ulrich</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sebastian</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Erika</surname>
            ,
            <given-names>A</given-names>
          </string-name>
          ´ .:
          <string-name>
            <surname>SMT-RAT</surname>
          </string-name>
          :
          <article-title>An SMT-Compliant nonlinear real arithmetic toolbox</article-title>
          . In: Alessandro,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Roberto</surname>
          </string-name>
          , S. (eds.)
          <source>SAT</source>
          <year>2012</year>
          , pp.
          <fpage>442</fpage>
          -
          <lpage>448</lpage>
          . Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Fontaine</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ogawa</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vu</surname>
            ,
            <given-names>X.T.</given-names>
          </string-name>
          :
          <article-title>Subtropical satisfiability</article-title>
          . In: Dixon,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Finger</surname>
          </string-name>
          , M. (eds.)
          <source>FroCoS</source>
          <year>2017</year>
          , pp.
          <fpage>189</fpage>
          -
          <lpage>206</lpage>
          . Springer (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8. Fra¨nzle,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Herde</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Teige</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Ratschan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Schubert</surname>
          </string-name>
          ,
          <string-name>
            <surname>T.</surname>
          </string-name>
          :
          <article-title>Efficient solving of large nonlinear arithmetic constraint systems with complex boolean structure</article-title>
          .
          <source>JSAT 1</source>
          ,
          <fpage>209</fpage>
          -
          <lpage>236</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Gao</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kong</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Clarke</surname>
            ,
            <given-names>E.M.:</given-names>
          </string-name>
          <article-title>Satisfiability modulo ODEs</article-title>
          .
          <source>In: FMCAD 2013</source>
          . pp.
          <fpage>105</fpage>
          -
          <lpage>112</lpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Jaroschek</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dobal</surname>
            ,
            <given-names>P.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fontaine</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Adapting real quantifier elimination methods for conflict set computation</article-title>
          . In: Lutz,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Ranise</surname>
          </string-name>
          , S. (eds.)
          <source>FroCoS</source>
          <year>2015</year>
          , pp.
          <fpage>151</fpage>
          -
          <lpage>166</lpage>
          . Springer (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. Jovanovic´, D.,
          <string-name>
            <surname>de Moura</surname>
          </string-name>
          , L.:
          <article-title>Solving non-linear arithmetic</article-title>
          . In: Gramlich,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Miller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Sattler</surname>
          </string-name>
          ,
          <string-name>
            <surname>U</surname>
          </string-name>
          . (eds.)
          <source>Automated Reasoning</source>
          , pp.
          <fpage>339</fpage>
          -
          <lpage>354</lpage>
          . Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Khanh</surname>
            ,
            <given-names>T.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ogawa</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>SMT for polynomial constraints on real numbers</article-title>
          .
          <source>ENTCS 289</source>
          ,
          <fpage>27</fpage>
          -
          <lpage>40</lpage>
          (
          <year>2012</year>
          ), TAPAS'
          <fpage>2012</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Kosˇta</surname>
          </string-name>
          , M.:
          <article-title>New Concepts for Real Quantifier Elimination by Virtual Substitution</article-title>
          .
          <source>Doctoral dissertation</source>
          , Saarland University, Germany (
          <year>December 2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Lasaruk</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Weak integer quantifier elimination beyond the linear case</article-title>
          .
          <source>In: CASC</source>
          <year>2007</year>
          ,
          <article-title>LNCS</article-title>
          , vol.
          <volume>4770</volume>
          . Springer (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Lasaruk</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Weak quantifier elimination for the full linear theory of the integers. A uniform generalization of Presburger arithmetic</article-title>
          .
          <source>Appl. Algebra Eng. Commun. Comput</source>
          .
          <volume>18</volume>
          (
          <issue>6</issue>
          ),
          <fpage>545</fpage>
          -
          <lpage>574</lpage>
          (
          <year>Dec 2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Loup</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scheibler</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corzilius</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>A</given-names>
            ´ braha´m, E.,
            <surname>Becker</surname>
          </string-name>
          ,
          <string-name>
            <surname>B.</surname>
          </string-name>
          :
          <article-title>A symbiosis of interval constraint propagation and cylindrical algebraic decomposition</article-title>
          . In: Bonacina,
          <string-name>
            <surname>M.P.</surname>
          </string-name>
          (ed.)
          <source>CADE 24</source>
          , pp.
          <fpage>193</fpage>
          -
          <lpage>207</lpage>
          . Springer (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Ratschan</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Efficient solving of quantified inequality constraints over the real numbers</article-title>
          .
          <source>ACM Trans. Comput. Log</source>
          .
          <volume>7</volume>
          ,
          <fpage>723</fpage>
          -
          <lpage>748</lpage>
          (
          <year>Oct 2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Reynolds</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tinelli</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jovanovic</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barrett</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Designing theory solvers with extensions</article-title>
          . In: Dixon,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Finger</surname>
          </string-name>
          , M. (eds.)
          <article-title>FroCoS 2017</article-title>
          . LNCS, vol.
          <volume>10483</volume>
          , pp.
          <fpage>22</fpage>
          -
          <lpage>40</lpage>
          . Springer (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Seidl</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Cylindrical Decomposition Under Application-Oriented Paradigms</surname>
          </string-name>
          .
          <source>Ph.D. thesis</source>
          , Universita¨t Passau,
          <volume>94030</volume>
          Passau, Germany (Mar
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Seidl</surname>
            ,
            <given-names>A.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Boolean quantification in a first-order context</article-title>
          . In: Ganzha,
          <string-name>
            <given-names>V.G.</given-names>
            ,
            <surname>Mayr</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.W.</given-names>
            ,
            <surname>Vorozhtsov</surname>
          </string-name>
          , E.V. (eds.)
          <source>CASC</source>
          <year>2003</year>
          , pp.
          <fpage>329</fpage>
          -
          <lpage>345</lpage>
          . Institut fu¨ r Informatik, Technische Universita¨t Mu¨ nchen, Mu¨ nchen,
          <string-name>
            <surname>Germany</surname>
          </string-name>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Linear problems in valued fields</article-title>
          .
          <source>J. Symb. Comput</source>
          .
          <volume>30</volume>
          (
          <issue>2</issue>
          ),
          <fpage>207</fpage>
          -
          <lpage>219</lpage>
          (
          <year>Aug 2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Sturm</surname>
          </string-name>
          , T.:
          <article-title>A survey of some methods for real quantifier elimination, decision, and satisfiability and their applications</article-title>
          .
          <source>Math. Comput. Sci</source>
          .
          <volume>11</volume>
          (
          <issue>3-4</issue>
          ),
          <fpage>483</fpage>
          -
          <lpage>502</lpage>
          (
          <year>December 2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weispfenning</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Quantifier elimination in term algebras</article-title>
          .
          <source>The case of finite languages</source>
          . pp.
          <fpage>285</fpage>
          -
          <lpage>300</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Sturm</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zengler</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Parametric quantified SAT solving</article-title>
          . In: Watt,
          <string-name>
            <surname>S.M</surname>
          </string-name>
          . (ed.)
          <source>ISSAC</source>
          <year>2010</year>
          , pp.
          <fpage>77</fpage>
          -
          <lpage>84</lpage>
          . ACM Press, New York (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Tung</surname>
            ,
            <given-names>V.X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Khanh</surname>
            ,
            <given-names>T.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ogawa</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>: rasat: an SMT solver for polynomial constraints</article-title>
          .
          <source>Formal Methods in System Design</source>
          <volume>51</volume>
          (
          <issue>3</issue>
          ),
          <fpage>462</fpage>
          -
          <lpage>499</lpage>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Weispfenning</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>The complexity of linear problems in fields</article-title>
          .
          <source>J. Symb. Comput</source>
          .
          <volume>5</volume>
          (
          <issue>1-2</issue>
          ),
          <fpage>3</fpage>
          -
          <lpage>27</lpage>
          (Feb-Apr
          <year>1988</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Weispfenning</surname>
          </string-name>
          , V.:
          <article-title>Quantifier elimination for real algebra-the quadratic case and beyond</article-title>
          .
          <source>Appl. Algebra Eng. Commun. Comput</source>
          .
          <volume>8</volume>
          (
          <issue>2</issue>
          ),
          <fpage>85</fpage>
          -
          <lpage>101</lpage>
          (
          <year>Feb 1997</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>