<!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>Under-Approximation of a Single Algebraic Cell (Extended Abstract)</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Valentin Promies</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jasper Nalbach</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Erika Ábrahám</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>RWTH Aachen University</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Single cell construction is a crucial subroutine in modern SMT solvers for non-linear real arithmetic. In this extended abstract, we adapt a recent approach by dynamically under-approximating the cell boundaries using linear polynomials, which can greatly reduce the efort of resultant computations, while maintaining the signinvariance properties of the cell. Although one must be careful to ensure termination, first experiments suggest that this modification pays of in the context of SMT solving.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Single Cell Construction</kwd>
        <kwd>Approximation</kwd>
        <kwd>Real Algebra</kwd>
        <kwd>Cylindrical Algebraic Decomposition</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>2. Levelwise Single Cell Construction</title>
      <p>
        Originally, Nalbach et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] formulated the levelwise single cell construction by means of a proof
system, which ofers great flexibility in heuristic choices. We now give a brief recall of the method, but
we omit details and focus here on those parts that we will adapt later, in Section 3.
      </p>
      <p>For a given finite set  ⊂ Q[1, . . . , ] of -variate polynomials and a given sample point  ∈ R,
the method constructs a representation I = (1, . . . , ) of a cell  ⊆ R so that  ∈  and for all  ∈ 
holds ∀′ ∈ . ((′)) = (()). In the output representation, each  is a symbolic interval
which bounds the value of  w.r.t the variables 1, . . . , − 1 of the lower levels, either by a lower and
an upper bound ((1, . . . , − 1) &lt;  &lt; (1, . . . , − 1)) or by an equality ( = (1, . . . , − 1)).</p>
      <p>The method maintains a working set * of polynomials, which is initialized as * :=  .</p>
      <p>For  = , . . . , 1 (i.e. starting with  and iterating down to 1), the interval  at level  is then
computed as follows.</p>
      <p>1. Let  := (* ∩ Q[1, . . . ]) ∖ Q[1, . . . − 1].
2. Isolate the real roots ⋃︀∈ { ∈ R | (1, . . . , − 1, ) = 0} and order them, together with the
sample coordinate , giving −∞ &lt; 1 ≤ . . . ≤  &lt;  &lt; +1 ≤ . . . ≤  &lt; ∞. In this
paper, we only consider the case that  is not a root of any polynomial in * .
3. In a neighborhood of the sample, each root can be generalized to a continuous function, encoded
as an indexed root expression (IRE) of the form root [, ] : R− 1 → R ∪ {⊥}, which maps a given
( − 1)-dimensional sample to the -th real root of the polynomial  in  if it exists and otherwise
returns ⊥ (i.e. “undefined”). For an IRE  , we refer to the according polynomial by . .
4. For  ∈ {1, . . . , }, let   be the IRE corresponding to the root , and let Ξ = { 1, . . . ,  }.
5. Set  := ( (1, . . . , − 1) &lt;  &lt;  +1(1, . . . , − 1)).
6. The symbolic interval  is only correct in a certain neighborhood of the sample, which is why
the underlying cell defined by (1, . . . , − 1) is restricted using a projection.</p>
      <p>a) To ensure well-definedness of the root functions over the underlying cell, it is restricted
so that the polynomials are delineable, by adding discriminants disc [] ∈ Q[1, . . . , − 1]
and some coeficients of the polynomials  from  to the working set * .
b) To ensure that no root function crosses the boundaries defined by , choose a relation ⪯ ⊂
Ξ × Ξ so that ( ,  +1) ∈ ⪯ , {(  ,  ) |  &lt; } ⊂ ⪯ * and {( +1,   ) |  + 1 &lt;  ≤ } ⊂ ⪯ * ,
where ⪯ * is the transitive closure of ⪯ . Then update * := * ∪ {res [.,  ′.] |  ⪯  ′},
where the resultant res [, ] ∈ Q[1, . . . , − 1] of ,  ∈ Q[1, . . . , ] is a polynomial
whose roots are exactly the points  ∈ R− 1 where (, ) ∈ R[] and (, ) ∈ R[]
have a common root. If the resultant is order-invariant, then the roots of  and  do not
cross. This way, the boundaries are protected.
The most resource-intensive part of single cell construction is the computation of resultants and
discriminants, and we tackle the former. The computational efort and the degree of res [, ] scales
with () · (). Thus, if  and  have high degree, then not only is their resultant more expensive
to compute, but it also yields a polynomial of even higher degree which will be involved in resultants
in the subsequent levels. On the other hand, if  is of the form  − , then its resultant with  is simply
equal to (1, . . . , − 1, ).</p>
      <p>
        As seen in the example, one can choose the relation ⪯ so that all resultants in the current projection
take one of the boundary-defining polynomials as input. In [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], this is called the Biggest-Cell heuristic.
Our idea is to dynamically add artificial cell boundaries defined by linear polynomials and use that
heuristic so that the required resultants will be easy to calculate.
      </p>
      <p>When computing the interval , if the upper (or lower) bound
of the interval would be defined by a high-degree polynomial, we
insert an “artificial” root * between the sample  and the actual 1  3  4
bound. This root is generalized to an IRE  * defined by a low-degree
polynomial, e.g. ℎ() =  − * , and now we use  * as the upper 2  2
interval bound. 2</p>
      <p>Figure 2 illustrates our idea. Interestingly, while we under- ℎ  *
approximate the symbolic interval 2, the resulting cell is not a subset 
of the cell in Figure 1, because 1 is now defined by the resultants 3  1
of ℎ with 2 and 3. This means that our approximated interval can 1
lead to larger underlying cells.</p>
      <p>Our modification has two main benefits: the following projection Figure 2: Approximated cell
step is much easier to compute; and it is easier for NLSAT to check using an additional linear
whether a sample lies in the excluded cell, due to a less complex cell polynomial.
description that avoids algebraic number computations.</p>
      <p>Correctness The approximation does not afect the correctness of the construction. To see this,
consider the original construction, but for a modified input  ∪ , where  contains the approximation
polynomials that were dynamically added. This will yield the same cell as our version gives for the
input  , and by the correctness of the original method, this cell contains  and all polynomials in  ∪ 
(in particular those in  ) are sign-invariant over it.</p>
      <p>Incompleteness When used in NLSAT, the approximation can lead to an incomplete
(nonterminating) algorithm, because the union of the approximated cells might converge to the
inclusionmaximal cell without ever covering it entirely and thus without ever considering the entire solution
space. This behavior can be circumvented by allowing NLSAT to only approximate a limited number of
cells before resorting to the original construction, which assures completeness.</p>
    </sec>
    <sec id="sec-3">
      <title>4. Conclusions</title>
      <p>
        Many SMT problems can be solved eficiently using approximative methods, like incremental
linearization [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] or ICP [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], though they are incomplete. We presented an approach that weaves dynamically
into the complete NLSAT method.
      </p>
      <p>
        Experiments The levelwise SCC and a prototype of our modification are implemented as backends
for an NLSAT-style algorithm in the SMT-RAT solver [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ], and we conducted first experiments with
promising results. We obtained the best performance when applying linear approximations to cell
boundaries that are defined by a polynomial with degree 5 or higher, and not approximating after 50
calls to the SCC. When executed on the QF_NRA benchmark set from SMT-LIB [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], our modification
solved 44 instances more than the original version. When using the approximation, the solver needs
more calls to the SCC on average, but these calls are processed faster, leading to a lower mean runtime.
Next Steps We are currently working on diferent generalizations of our idea. Firstly, one can use
more intricate approximations, e.g. piecewise linear functions or Taylor polynomials, which hopefully
results in a cell that is more similar to the original one, but which also induces a larger overhead. In the
case of Taylor polynomials, a closer approximation could be obtained by using degree two or three,
instead of linear polynomials.
      </p>
      <p>Secondly, the levelwise framework also allows us to add artificial roots between any two root functions,
not just as a cell boundary. In our example, we could have inserted  * (and ℎ) between  2 and  3. With
an appropriate choice of ⪯ , this lets us replace res2 [3, 1] by the less complex resultants res2 [3, ℎ]
and res2 [ℎ, 1], while maintaining the original interval 2 = ( 1 &lt; 2 &lt;  2). This might still lead to
smaller intervals at the lower levels, due to the new resultants.</p>
      <p>Finally, we are interested in transferring our ideas to the cylindrical algebraic coverings method [10],
which also uses the framework of the levelwise method.</p>
    </sec>
    <sec id="sec-4">
      <title>Acknowledgments</title>
      <p>Jasper Nalbach and Valentin Promies were supported by the Deutsche Forschungsgemeinschaft (DFG,
German Research Association) as part of AB 461/9-1 SMT-ART. Jasper Nalbach was supported by the
DFG RTG 2236 UnRAVeL.
[10] E. Ábrahám, J. H. Davenport, M. England, G. Kremer, Deciding the consistency of non-linear real
arithmetic constraints with a conflict driven search using cylindrical algebraic coverings, J. Log.
Algebraic Methods Program. 119 (2021) 100633. doi:10.1016/J.JLAMP.2020.100633.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>D.</given-names>
            <surname>Jovanovic</surname>
          </string-name>
          , L. M. de Moura,
          <article-title>Solving non-linear arithmetic</article-title>
          ,
          <source>in: Proc. of the 6th Int. Joint Conf. on Automated Reasoning (IJCAR'12)</source>
          , volume
          <volume>7364</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2012</year>
          , pp.
          <fpage>339</fpage>
          -
          <lpage>354</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>642</fpage>
          -31365-3_
          <fpage>27</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>G. E.</given-names>
            <surname>Collins</surname>
          </string-name>
          ,
          <article-title>Quantifier elimination for real closed fields by cylindrical algebraic decomposition</article-title>
          , in: H.
          <string-name>
            <surname>Barkhage</surname>
          </string-name>
          (Ed.),
          <source>Automata Theory and Formal Languages, 2nd GI Conference</source>
          , Kaiserslautern, May
          <volume>20</volume>
          -23,
          <year>1975</year>
          , volume
          <volume>33</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>1975</year>
          , pp.
          <fpage>134</fpage>
          -
          <lpage>183</lpage>
          . doi:
          <volume>10</volume>
          .1007/3-540-07407-4_
          <fpage>17</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Nalbach</surname>
          </string-name>
          , E. Ábrahám,
          <string-name>
            <given-names>P.</given-names>
            <surname>Specht</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Brown</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. H.</given-names>
            <surname>Davenport</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>England</surname>
          </string-name>
          ,
          <article-title>Levelwise construction of a single cylindrical algebraic cell</article-title>
          ,
          <source>Journal of Symbolic Computation</source>
          <volume>123</volume>
          (
          <year>2024</year>
          )
          <article-title>102288</article-title>
          . doi:
          <volume>10</volume>
          .1016/j.jsc.
          <year>2023</year>
          .
          <volume>102288</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Brown</surname>
          </string-name>
          , M. Košta,
          <article-title>Constructing a single cell in cylindrical algebraic decomposition</article-title>
          ,
          <source>J. Symb. Comput</source>
          .
          <volume>70</volume>
          (
          <year>2015</year>
          )
          <fpage>14</fpage>
          -
          <lpage>48</lpage>
          . doi:
          <volume>10</volume>
          .1016/J.JSC.
          <year>2014</year>
          .
          <volume>09</volume>
          .024.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Cimatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Griggio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Irfan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Roveri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Sebastiani</surname>
          </string-name>
          ,
          <article-title>Invariant checking of NRA transition systems via incremental reduction to LRA with EUF</article-title>
          , CoRR abs/
          <year>1801</year>
          .08718 (
          <year>2018</year>
          ). URL: http: //arxiv.org/abs/
          <year>1801</year>
          .08718. arXiv:
          <year>1801</year>
          .08718.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>P.</given-names>
            <surname>Van Hentenryck</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>McAllester</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Kapur</surname>
          </string-name>
          ,
          <article-title>Solving polynomial systems using a branch and prune approach</article-title>
          ,
          <source>SIAM Journal on Numerical Analysis</source>
          <volume>34</volume>
          (
          <year>1997</year>
          )
          <fpage>797</fpage>
          -
          <lpage>827</lpage>
          . doi:
          <volume>10</volume>
          .1137/ S0036142995281504.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>F.</given-names>
            <surname>Corzilius</surname>
          </string-name>
          , G. Kremer,
          <string-name>
            <given-names>S.</given-names>
            <surname>Junges</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Schupp</surname>
          </string-name>
          , E. Ábrahám, SMT-RAT:
          <article-title>An open source C++ toolbox for strategic and parallel SMT solving</article-title>
          ,
          <source>in: Proc. of the 18th Int. Conf. on Theory and Applications of Satisfiability Testing (SAT'15)</source>
          , volume
          <volume>9340</volume>
          <source>of LNCS</source>
          , Springer,
          <year>2015</year>
          , pp.
          <fpage>360</fpage>
          -
          <lpage>368</lpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -24318-4_
          <fpage>26</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <article-title>[8] SMT-RAT, a toolbox for strategic and parallel satisfiability modulo theories solving</article-title>
          , https://github. com/ths-rwth/smtrat, accessed
          <year>2024</year>
          -
          <volume>06</volume>
          -01.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>C.</given-names>
            <surname>Barrett</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Stump</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Tinelli</surname>
          </string-name>
          ,
          <source>The SMT-LIB standard - version 2.0, in: Proc. of the 8th Int. Workshop on Satisfiability Modulo Theories (SMT '10)</source>
          ,
          <year>2010</year>
          . URL: http://theory.stanford.edu/ ~barrett/pubs/BST10.pdf.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>