<!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>Projective Delineability for Single Cell Construction⋆</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jasper Nalbach</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Lucas Michel</string-name>
          <xref ref-type="aff" rid="aff4">4</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Erika Ábrahám</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Christopher W. Brown</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>James H. Davenport</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Matthew England</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pierre Mathonet</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Naïm Zénaïdi</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Coventry University</institution>
          ,
          <addr-line>Coventry</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>RWTH Aachen University</institution>
          ,
          <addr-line>Aachen</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>United States Naval Academy</institution>
          ,
          <addr-line>Annapolis, Maryland</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>University of Bath</institution>
          ,
          <addr-line>Bath</addr-line>
          <country country="UK">UK</country>
        </aff>
        <aff id="aff4">
          <label>4</label>
          <institution>University of Liège</institution>
          ,
          <addr-line>Liège</addr-line>
          ,
          <country country="BE">Belgium</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2024</year>
      </pub-date>
      <abstract>
        <p>The cylindrical algebraic decomposition (CAD) is the only complete method used in practice for solving problems like quantifier elimination or SMT solving related to real algebra, despite its doubly exponential complexity. Recent exploration-guided algorithms like NLSAT, NuCAD, and CAlC rely on CAD technology but reduce the computational efort heuristically. Single cell construction is a paradigm that is used in each of these algorithms. The central property on which the CAD algorithm is based is called delineability. Recently, we introduced a weaker notion called projective delineability which can require fewer computations to guarantee, but needs to be applied carefully. This paper adapts the single cell construction for exploiting projective delineability and reports on experimental results.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Cylindrical algebraic decomposition</kwd>
        <kwd>Real algebra</kwd>
        <kwd>SMT solving</kwd>
        <kwd>Single cell construction</kwd>
        <kwd>Non-linear real arithmetic</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        The cylindrical algebraic decomposition (CAD) method enables reasoning about formulas in real
algebra and is implemented in various tools for quantifier elimination like QEPCAD [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], Redlog [
        <xref ref-type="bibr" rid="ref22">23</xref>
        ],
Mathematica [
        <xref ref-type="bibr" rid="ref23">24</xref>
        ], and Maple [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], and satisfiability-modulo-theories (SMT) solving, like z3 [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ],
cvc5 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], yices2 [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], and SMT-RAT [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Despite its doubly exponential complexity, it is the most
widely used complete method for these problems.
      </p>
      <p>
        The CAD method decomposes the real space into a finite number of connected sets (called cells) such
that the input set of polynomials have invariant sign in each cell. Although such a decomposition allows
for reasoning about the formula, it is usually finer than needed for the task at hand. Algorithms like
NLSAT [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], NuCAD [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], and CAlC [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] reduce the computational efort by computing only a set of cells
where the input formula is truth-invariant that together cover the real space rather than decompose it.
These savings are achieved by using the Boolean structure and relation symbols to determine which
polynomials are relevant in a certain part (determined by some sample point) of the space, and using
the shape of the varieties to reduce the computation steps. This leads to cells that are faster to compute
and which are usually larger than the cells from the CAD.
      </p>
      <p>
        More specifically, the CAD algorithm iteratively computes projection polynomials to eliminate variable
by variable. These consist of resultants, discriminants, and (leading) coeficients which are selected to
maintain the delineability of the polynomials, a property which allows for work at a sample point to
be generalized to a wider cell. The single cell construction [
        <xref ref-type="bibr" rid="ref21 ref6 ref8">6, 8, 21</xref>
        ] paradigm is the foundation of the
above algorithms and is able to reduce the amount of resultants and discriminants needed to maintain
delineability.
      </p>
      <p>
        This paper investigates when we can go further and leave out leading coeficients from the projection.
Towards this goal, in prior theoretical work, we proposed to relax delineability to projective
delineability [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]: a property that does not require leading coeficients to be maintained. We now report on the
embedding of projective delineability within single cell construction, and its impact in experimental
results. We continue by recalling the single cell construction in Section 2 and projective delineability in
Section 3. Then in Section 4 we present the modification of the single cell construction to use projective
delineability, in Section 5 we report an experimental evaluation from our implementation, and finally
we conclude in Section 6.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Preliminaries</title>
      <p>
        We introduce key background following [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] (full details in preliminaries of [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]).
      </p>
      <p>Let N, N&gt;0, Q, and R denote the sets of all natural (incl. 0), positive integer, rational, and real numbers
respectively. For ,  ∈ N with  &lt; , we define [..] = {, . . . , } and [] = [1..]. For ,  ∈ N&gt;0,  ≤ 
and  ∈ R, we denote by  the -th component of  and by [] the vector (1, . . . ,  ). Let ,  :  → 
and let &lt; be a total order on  and ∼∈ {&lt;, =, ̸=} . We write  ∼  on  if  () ∼ () for all  ∈ .
Note that  ̸=  on  is not “not  =  on ”.</p>
      <p>We work with the variables 1, . . . ,  with  ∈ N&gt;0 under a fixed ordering 1 ≺  2 ≺ ... ≺  . A
polynomial is built from a set of variables and numbers from Q using addition and multiplication. We
use Q[1, . . . , ] to denote multivariate polynomials in those variables. A polynomial  is of level  if
 is the largest variable in  with non-zero coeficient.</p>
      <p>Let  ∈ [] and ,  ∈ Q[1, . . . , ] of level . For  ∈ [] and  = (1, . . . ,  ) ∈ R we write
(, +1, . . . , ) for the polynomial  after substituting 1, . . . ,  for 1, . . . ,  in  and indicating
the remaining free variables in . We use rroots() ⊆ R  to denote the set of real roots of , deg ()
to denote the degree of  in  , coeff  () for the set of coeficients of  in  , ldcf () for the leading
coeficient of  in  , disc () to denote the discriminant of  with respect to  , and res (, ) to
denote the resultant of  and  with respect to  . Let  ∈ R−1 , then  is nullified on  if (,  ) = 0.</p>
      <p>A constraint  ∼ 0 compares a polynomial  ∈ Q[1, . . . , ] to zero using a relation symbol
∼∈ {=, ̸=, &lt;, &gt;, ≤, ≥} , and has solution set { ∈ R | () ∼ 0} . A subset of R for some  ∈ [] is
called semi-algebraic if it is the solution set of a Boolean combination of polynomial constraints. A cell
is a non-empty connected subset of R for some  ∈ []. A cell  is called simply connected if any loop
in  can be continuously contracted to a point. A polynomial  ∈ Q[1, . . . , ] is sign-invariant on a
set  ⊆ R  if the sign of () is the same for all  ∈ .</p>
      <p>Given ,  ∈ N&gt;0 with  &lt; , we define the projection of a set  ⊆ R  onto R by [] =
{(1, . . . ,  ) | ∃+1, . . . , . (1, . . . , ) ∈ }. Given a cell  ⊆ R ,  ∈ [] and
continuous functions ,  :  → R, we define the sets  ×  = {(,  ()) |  ∈ } and  × (, ) =
{(, +1) |  ∈ , +1 ∈ ( (), ())} ( × (−∞, ),  × (, +∞) analogously).</p>
      <p>
        If  ⊆ R  is open, a function  :  → R is analytic if each component of  has a multiple power
series representation around each point of  . An -dimensional analytic submanifold of R is a
nonempty subset  ⊆ R  locally parametrized by coordinates through analytic functions  :  ⊆ R  → R.
A function  between analytic manifolds  and ′ is analytic if locally it has an expression in (analytic)
coordinates which is analytic (see also [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]). Let  ∈ Q[1, . . . , ] be a polynomial and  ∈ R be a
point. Then the order of  at , ord(), is defined as the minimum  such that some partial derivative
of total order  of  does not vanish at  (and +∞ if  = 0). We call  order-invariant on  ⊆ R  if
ord() = ord′ () for all , ′ ∈  (for details see [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]).
2.1. CAD and Single Cell Construction
A cylindrical algebraic decomposition (CAD) [
        <xref ref-type="bibr" rid="ref10 ref17 ref18">10, 17, 18</xref>
        ] is a decomposition  of R such that each cell
 ∈  is semi-algebraic and locally cylindrical (i.e. can be described as the solution set of  1(1) ∧
 2(1, 2) ∧  (1, . . . , ) where   is one of  = ( 1, . . . , −1 ) or  (1, . . . , −1 ) &lt;  &lt;
 (1, . . . , −1 ) or  (1, . . . , −1 ) &lt;  or  &lt;  (1, . . . , −1 ) for some continuous functions
,  ,  ), and  is cylindrically arranged (i.e. either  = 1 or {[−1] |  ∈ } is a cylindrically
arranged decomposition of R−1 ). The shape of such a CAD allows reasoning about properties of
(sets of) polynomials computationally. In particular, it is called sign-invariant for a set of polynomials
 ⊆ Q[ 1, . . . , ] if each  ∈  is sign-invariant on each  ∈ . A sign-invariant CAD for 
is computed recursively: to describe the cells’ boundaries for , we first compute the underlying
decomposition by a projection operation resulting in a set  ′ ⊆ Q[ 1, . . . , −1 ] whose sign-invariant
CAD will describe the first  − 1 levels of the cells of the sign-invariant CAD of  .
      </p>
      <p>
        The single cell construction [
        <xref ref-type="bibr" rid="ref21 ref8">8, 21</xref>
        ] computes, given a set of polynomials  ⊆ Q[ 1, . . . , ] and a
sample point  ∈ R, a locally cylindrical cell  ⊆ R  such that  ∈  and such that  is sign-invariant
on . In the rest of this section, we introduce the levelwise method [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] for single cell construction.
Delineability. Delineability of a polynomial on some cell means that its variety can be described
by continuous functions which are nicely ordered over that cell. This allows us to reason about the
polynomial’s roots using these functions.
      </p>
      <p>
        Definition 2.1 (Delineability [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]). Let  ∈ N,  ⊆ R  be a cell, and  ∈ Q[1, . . . , +1] ∖ {0}.
Polynomial  is delineable on  if there exist continuous functions  1, . . . ,   :  → R,  ∈ N, such that:
•  1 &lt; · · · &lt;  ;
• the set of real roots of (, +1) is { 1(), . . . ,  ()} for all  ∈ ; and
• there exist constants 1, . . . ,  ∈ N&gt;0 such that for all  ∈  and all  ∈ [], the multiplicity of
the root   () of (, +1) is  .
      </p>
      <p>The   are called real root functions of  on . The sets  ×   are called sections of  over .</p>
      <p>Analytic delineability is similar, but  is a connected analytic submanifold of R and the real root
functions are analytic.</p>
      <p>The following gives a projection to obtain a cell where a polynomial is delineable.
Theorem 2.1 (Delineability of a Polynomial [18, Thm. 2], [4, Thm. 3.1]). Let  ∈ N,  ⊆ R  be a
connected analytic submanifold,  ∈ Q[1, . . . , +1] of level  + 1. Assume that  is not nullified at
any point in , disc+1 () is not the zero polynomial and is order-invariant on , and ldcf+1 () is
sign-invariant on . Then  is analytically delineable on  and is order-invariant on its sections over .
Note that the discriminant of an irreducible polynomial is not the zero polynomial; in our algorithm,
we replace each polynomial by its irreducible factors.</p>
      <p>Root Orderings. Once we can describe the roots of individual polynomials by ordered root functions
on the underlying cell, we can reason about intersections of graphs of root functions from diferent
polynomials, e.g. ensure that two root functions remain in the same order on the underlying cell.
Theorem 2.2 (Lifting of Pairs of Polynomials [21, Thm. A.1]). Let  ∈ N,  ⊆ R  be a connected
analytic submanifold,  ∈ , and 1, 2 ∈ Q[1, . . . , +1] of level  + 1. Assume 1 and 2 are
analytically delineable on  and res+1 (1, 2) is not the zero polynomial and is order-invariant on .
Let  1,  2 :  → R be real root functions of 1 and 2 on  respectively, and ∼∈ {&lt;, =} such that
 1() ∼  2(). Then  1 ∼  2 on .</p>
      <p>Note that the resultant of two coprime (and irreducible) polynomials is not the zero polynomial.</p>
      <p>
        To maintain that two real root functions  1 and  2 stay in the same order on , we could also exploit
transitivity using another root function  3, e.g.  1 &lt;  3 on  and  3 &lt;  2 on  implies  1 &lt;  2 on .
The work in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] generalizes this idea to orderings on a set of root functions. This allows for flexibility
in the choice of resultants which we compute to maintain certain invariance properties, potentially
avoiding the computation of expensive resultants.
      </p>
      <p>
        Single Cell Construction. Given a set of polynomials  ⊆ Q[ 1, . . . , ] and a sample  ∈ R, we
compute and sort the real roots of ([−1] , ),  ∈  . We determine the greatest root  ℓ ∈ R below
(or equal to)  and the smallest root   ∈ R above (or equal to) . If they do not exist, we use −∞
and +∞ respectively. We now aim to describe the bounds of the cell ′ ⊆ R  to be constructed by
root functions of some polynomials in  ; for that, we assume that all polynomials in  are delineable
on the underlying cell  = [′−1] . Let  ℓ and   be real root functions of polynomials in  such that
 ℓ([−1] ) =  ℓ and  ([−1] ) =  . The bounds on  are described by the symbolic interval ( ℓ,  )
(whose bounds depend on 1, . . . , −1 ) if  ℓ([−1] ) &lt;  ([−1] ) or  ℓ if  =  ℓ =  . Now, we use
root orderings to make sure that  ℓ &lt;   on  (if applicable) and each  ∈  is sign-invariant in
 × ( ℓ,  ) resp.  ×  ℓ:
Theorem 2.3 (Root Ordering for Sign Invariance [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]). Let  ∈ N,  ⊆ R  be connected, and , ℓ,  ∈
Q[1, . . . , +1] of level  + 1. Assume that , ℓ,  are delineable on . Let  ℓ,   :  → R be real root
functions of ℓ and  on  respectively.
      </p>
      <p>• If  ℓ &lt;   on , and for each real root function  of  on  it holds  ∼  ℓ on  for some ∼∈ {&lt;, =}
or   ∼  on  for some ∼∈ {&lt;, =}; then  is sign-invariant on  × ( ℓ,  ).
• If for each real root function  of  on  it holds   ∼  on  for some ∼∈ {&lt;, =} ; then  is
sign-invariant on  × (−∞,  ).
• If for each real root function  of  on  it holds  ∼  ℓ on  for some ∼∈ {&lt;, =} ; then  is
sign-invariant on  × ( ℓ, +∞).
• If for each real root function  of  on  it holds either  &lt;  ℓ on , or  ℓ &lt;  on , or  =  ℓ on
; then  is sign-invariant on  ×  ℓ.</p>
      <p>• If there is no real root function  of  on ; then  is sign-invariant on  × R.</p>
      <p>
        The single cell construction is given in Algorithm 1. In Algorithm 1, we determine witnesses for the
real root functions of a polynomial  of level  on  (the underlying cell to be constructed). Given some
 ∈ N&gt;0, an indexed root is a partial function root, : R → R that maps  ∈ R−1 to the -th real root
of (, ) if it exists. Given a cell  ⊆ R −1 where  is delineable, then root, coincides with the root
function   from the above definition on . We thus can evaluate the function computationally by real
root isolation. Beginning from Algorithm 1, we compute projection polynomials whose order-invariance
on the underlying cell  = I1 × · · · × I −1 (computed in the following iterations) maintain the desired
properties of the polynomials in . In Algorithm 1 the algorithm might fail, as McCallum’s projection
operator cannot reason about cells where a polynomial is nullified [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. In Algorithm 1, we prevent
polynomials from nullifying on any point in the constructed underlying cell by ensuring that at least
one coeficient remains non-zero to meet the requirements of the stated theorems (see [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]). Algorithm 1
maintains delineability of each  ∈  on , and order-invariance in each of its sections over . The
ordering determined in Algorithm 1 defines a set of resultants to maintain sign-invariance of each
 ∈  in  × I ; for this, we analyse  1, . . . ,   to choose a “good” set, possibly exploiting transitivity.
Further, we recall that the cell I1 × · · · × I  is an analytic submanifold of R as it is bounded by root
functions which are analytic by Theorem 2.1.
      </p>
      <p>Example 2.1. Consider the polynomials 1 = 0.51 + 0.5 −  2, 2 = 21 + 22 − 1 , 3 = 0.51 − 0.5 −  2,
4 = − 12 − 0.75 as depicted in Figure 1, along with the sample point  = (0.25, −0.7) and a cell as
constructed using Algorithm 1.</p>
      <p>Algorithm 1: single_cell_construction( ,)</p>
      <p>Input : finite  ⊆ Q[ 1, . . . , ],  ∈ R</p>
      <p>Output : Symbolic intervals I1, . . . , I for 1, . . . ,  describing a sign-invariant cell for  containing 
1 foreach  = , . . . , 1 do
2  := { ∈  |  is of level },  :=  ∖ 
3 determine the set of indexed roots Θ = { 1, . . . ,  } of all  ∈  that are defined at  [−1] such that
 :=  ∪ {res (, ′) | (root,, root′,′ ) ∈ ⪯}
choose ⪯ ⊆ Θ 2 s.t. its reflexive and transitive closure ⪯  is a partial order on Θ with  ℓ ⪯    (if
I = ( ℓ,  )) and ensures sign-invariance of each  ∈  by Theorem 2.3
// Theorem 2.2
p4
2 p1
x
p3</p>
      <p>p2
p5
p7
p6
x1
p7 p5</p>
      <p>The algorithm adds coeficients and discriminants to guarantee delineability of these polynomials; in this
case, we add 5 = disc2 (2) and 6 = ldcf2 (4) (the others are trivial). Further, as the cell is described
by I2 = (root22,1, root32,1) on level 2 we aim to maintain root42,1 &lt; root22,1 on , root22,1 &lt; root32,1
on , root32,1 &lt; root12,1 on , and root32,1 &lt; root22,2 on . We thus add the corresponding resultants,
of which only 7 = res2 (2, 3) is non-trivial. On level 1, we determine I1 = (root61,1, root51,2) as
describing the interval.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Projective Delineability</title>
      <p>
        We now summarize the theory of projective delineability introduced in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ].
      </p>
      <p>Real Projective Line. Roughly speaking, the real projective line P is defined by adding a single point
∞ to the real line, so P = R ∪ {∞}. We can add more structure to P or visualize it by using alternative
definitions: identifying the real number  with the line  =  and ∞ with  = 0, we see that the
real projective line P is the set of lines of R2 passing through the origin. Such a line is determined by
3</p>
      <p>1
(− 1+22 , − 1+22 )

 = 
(, )
(, 1)

2

any of its non-zero vectors (, ) ∈ R2 or by any of its non-zero multiples, so if we denote by ( : )
the set (equivalence class) of such vectors, we have P = {( : ) : (, ) ∈ R2 ∖ {(0, 0)}}. This set
identifies with R ∪ {∞} by mapping ( : ) to  if  ̸= 0 and to ∞ otherwise. Finally, P identifies with
a circle (as an analytic manifold). Possible identifications are visualized in Figure 2.</p>
      <p>As P identifies with a circle, we cannot use a linear order on P; however, P has a cyclic ordering that
extends the usual order on R, as intuitively given in Figure 2. For distinct 1, 2, 3 ∈ P, we use [1, 2, 3]
to denote that “after 1, one reaches 2 before 3” in that cyclic ordering on P. We use [1, . . . , ] for
 &gt; 3 to denote ∀ &lt; ′ &lt; ′′ ∈ []. [ , ′ , ′′ ].</p>
      <p>Projective Roots. The introduction of the projective line enables us to handle roots at infinity of
(univariate) polynomials, and their multiplicities (see [19, Defn. 2, 3 and 5]): if  ∈ Q[] has degree less
than or equal to  ∈ N, we associate with  the homogeneous bivariate polynomial () (also called
a binary form of degree ) defined by ()(, ) = (  ). The concepts of roots and multiplicities
are well-defined for binary forms, and we thus import them for polynomials: ( : ) ∈ P is a projective
root of multiplicity  of  with respect to  if (, ) is a root of () with multiplicity .</p>
      <p>The set of projective roots of  (with respect to ) splits into the real roots on the one hand and the
root at infinity on the other hand (see [19, Lemmas 2 and 3]): ( : ) ∈ P is a projective root of  of
multiplicity  w.r.t.  if and only if either  ̸= 0 and  is a real root  of multiplicity  or  = 0 and
 =  − deg().</p>
      <p>Projective Delineability. We finally formalize the notion of projective delineability, by transferring
the concept of projective roots to multivariate polynomials.</p>
      <p>Definition 3.1 (Projective Delineability [19, Defn. 11]). Let  ∈ N,  ⊆ R  be a cell, and  ∈
Q[1, . . . , +1] ∖ {0}. The polynomial  is called projectively delineable on  if there exist
continuous functions  1, . . . ,   :  → P (for  ∈ N) such that:
• for any point in , the values of  1, . . . ,   are distinct;
• the projective roots of the univariate polynomial (, +1) with respect to deg+1 () are
 1(), . . . ,  () for all  ∈ ; and
• there exist constants 1, . . . ,  ∈ N&gt;0 such that for all  ∈  and all  ∈ [], the multiplicity of
the root   () of (, +1) w.r.t. deg+1 () is  .</p>
      <p>The   are called projective root functions of  on . The cells  ×   ,  ∈ [] are called projective
-sections over .</p>
      <p>Analytic projective delineability is similar, but  is a connected analytic submanifold of R and the
projective root functions are analytic.</p>
      <p>x1
(a) Variety of  in R2.</p>
      <p>(b) Variety of  in R×P . The black line marks the points
at ∞.</p>
      <p>In particular, the first condition means the function values as points around the unit circle maintain a
cyclic ordering. Figure 3 illustrates an example of a polynomial that is projectively delineable.</p>
      <p>The central theorem for this work states that order-invariance of the discriminant plus
nonnullification is enough to guarantee projective delineability, with no need to maintain the sign-invariance
of the leading coeficient. Note that the theorem requires the underlying cell to be simply connected,
which is stronger than connectedness. This assumption is always met for locally cylindrical cells,
since they are homeomorphic to open cubes of Euclidean spaces [3, Proposition 5.3] (which are simply
connected).</p>
      <p>Theorem 3.1 (Projective Delineability [19, Thm. 2]). Let  ∈ N,  ⊆ R  be a simply connected analytic
submanifold, and  ∈ [1, . . . , +1] of level +1. If  is not nullified on any point in  and disc+1 ()
is not the zero polynomial and is order-invariant on , then  is analytically projectively delineable on 
and  is order-invariant in each projective -section over .</p>
      <p>Delineability is guaranteed by projective delineability plus sign-invariance of the leading coeficient.
Lemma 3.1 (Delineability and Projective Delineability [19, Cor. 1]). Let  ∈ N&gt;0,  ⊆ R  be connected,
and  ∈ Q[1, . . . , +1] of level  + 1. Assume that  is projectively delineable on , and ldcf+1 () is
sign-invariant on . Then  is delineable on .</p>
      <p>The definition of projective delineability is equivalent to delineability over cells where the polynomial
does not have any roots. In those cases, we can guarantee delineability without sign-invariance of the
leading coeficient.</p>
      <p>Lemma 3.2. Let  ∈ N&gt;0,  ⊆ R ,  ∈ , and  ∈ Q[1, . . . , +1] of level  + 1. If  is projectively
delineable on , ldcf+1 ()() ̸= 0, and rroots((, +1)) = ∅, then  is delineable on .
Proof. Let  1, . . . ,   be the projective -sections over . If ldcf+1 ()() ̸= 0, then it
holds deg+1 ((, +1)) = deg+1 (), thus the projective roots (, +1) are all real. Thus
{ 1(), . . . ,  ()} = rroots((, +1)) = ∅, and it follows  = 0. It follows that (, +1) ̸= 0
for all  ∈ , and thus  is delineable on .</p>
      <p>Root Orderings. As single cell construction relies on root orderings, we give the analogous statement
for projective delineability. Note that in contrast to Theorem 2.2, we can only ensure that two root
functions are disjoint or equal.</p>
      <p>Theorem 3.2 (Lifting of Pairs of Polynomials [19, Theorem 3]). Let  ∈ N,  ⊆ R  be a connected analytic
submanifold,  ∈ , and 1, 2 ∈ Q[1, . . . , +1] of level  + 1. Assume 1 and 2 are analytically
2
x
2
1
x1
(a) The cell which we aim to construct.
projectively delineable on  and res+1 (1, 2) is not the zero polynomial and is order-invariant on .
Let  1,  2 :  → P be real projective root functions of 1 and 2 respectively, and ∼∈ {=, ̸=} such that
 1() ∼  2(). Then  1 ∼  2 on .
4. Projective Delineability in Single Cell Construction
We motivate the use of projective delineability by considering Example 2.1 again.</p>
      <p>Example 4.1. The singularity of 4 (witnessed by its leading coeficient) was a boundary to the cell in
Figure 1, but crossing that boundary does not change the sign of any input polynomial. Figure 4a shows the
cell that we aim to construct instead: if we detect that the singularity of 4 does not afect the cell, we can
omit the leading coeficient of  4 and build the enlarged version.</p>
      <p>For this reasoning, we view the roots of the polynomials in the projective real line, as depicted in Figure 4b,
where intuitively −∞ and +∞ are identified with the same point ∞. Above the singularity of 4, the two
distinct root functions of 4 coincide at the point ∞, and thus can be described as a unique real projective
root function of 4. The order-invariance of the discriminant of 4 ensures that the variety of 4 can be
described using such projective root functions (Theorem 3.1). Now, by adding the resultant of 2 and 4,
we ensure that the mentioned root function does not intersect the circle, and thus does not enter the cell
(Theorem 3.2). By projective delineability of 4, we know that there are no other roots (Definition 3.1), and
we thus can omit the leading coeficient from our projection polynomials.</p>
      <p>We modify the single cell construction algorithm as follows. We still describe the cell boundaries
using real root functions, as we can encode them using indexed roots which we can evaluate in a
straightforward way. Thus, their defining polynomials are still required to be delineable. For the other
polynomials, however, we only maintain projective delineability, and hence allow their roots to go
through the point at ∞. We thus need to adapt Theorem 2.3, as a root function may not stay below
(above) the lower (upper) bound even if it does not cross it by going through ∞.</p>
      <p>Theorem 4.1 (Projective Root “Ordering” for Sign Invariance). Let  ∈ N,  ⊆ R  be connected,  ∈ ,
and , ℓ,  ∈ Q[1, . . . , +1] of level  + 1. Assume that  is projectively delineable on , ℓ,  are
delineable on . Let  ℓ,   :  → R be real root functions of ℓ and  on  respectively.
• If  ℓ &lt;   on , and for each projective root function  of  on  either  =  ℓ on ,  =   on ,
or  ℓ ̸=  ̸=   on  and [ ℓ(),  (), ()]; then  is sign-invariant on  × ( ℓ,  ).
• If for each projective root function  of  on  either  =   on , or ∞ ̸=  ̸=   on  and
[∞,  (), ()]; then  is sign-invariant on  × (−∞,  ).</p>
      <p>(a) Resultant with bounds.</p>
      <p>(b) Resultants computed anyway.
(c) Cell defined by single polynomial.
(d) Exploiting transitivity.
(e) Adding the leading coeficient.</p>
      <p>(f) Combining the previous two ideas.</p>
      <p>• If for each projective root function  of  on  either  =  ℓ on , or  ℓ ̸=  ̸= ∞ on  and
[(),  ℓ(), ∞]; then  is sign-invariant on  × ( ℓ, +∞).
• If for each projective root function  of  on  either  ̸=  ℓ on , or  =  ℓ on ; then  is
sign-invariant on  ×  ℓ.</p>
      <p>• If there is no projective root function  of  on ; then  is sign-invariant on  × R.</p>
      <p>Example 4.2. This theorem only allows to omit leading coeficients if the interval is bounded in both
directions (otherwise we need the leading coeficient for preventing crossing ∞) and the resultant of the
polynomial with the polynomials defining the lower and upper bound are computed: e.g. we can omit the
leading coeficient of blue polynomial in Figure 5a (which we would add for its delineability in the classical
setting) by additionally adding the resultant of the blue and red polynomial (which is not added in the
classical setting). The trade-of may not be attractive; but if the polynomial has a root below and above the
cell at the current sample point (e.g. Figure 5b), or if both bounds are defined by the same polynomial (e.g.
Figure 5c), this would not require additional resultants.</p>
      <p>The single cell construction allows for flexibility for diferent sets of resultants to maintain
signinvariance by exploiting the transitivity of root orderings. In the projective real line, there is only a
cyclic ordering. The following insight transfers the idea to the new setting.</p>
      <p>Lemma 4.1 (Transitive Projective Root “Ordering”). Let  ∈ N,  ⊆ R  be connected,  ∈ ,
 1,  2,  3,  4 :  → P be continuous. Assume that [ 1(),  2(),  3(),  4()] and  1 ̸=  2 ̸=  3 ̸=  4 ̸=
 1 on . Then  1 ̸=  3 on .</p>
      <p>Example 4.3. Consider a projective root (as depicted in blue in Figures 5d to 5f) that is below the symbolic
interval at the current sample point. Preventing the root from crossing the lower bound is analogous to the
case of regular delineability. However, we now also need to prevent it to cross the upper bound; for that,
we now have three options. (1) We compute a chain of resultants that maintain a cyclic ordering of the
given root, the upper bound and some roots in between (in the cyclic sense), exploiting Theorem 3.2 (in
Figure 5d, by adding the resultants of the blue with the purple and magenta polynomials respectively, its
root is trapped between the other; additionally, we add the resultant of the purple with the red one, and of
the magenta with the green). (2) We add the leading coeficient of the defining polynomial to the projection,
avoiding the intersection of the root with ∞, thus making it delineable using Lemma 3.1 (see Figure 5e).
(3) We mix the two approaches, e.g. for some polynomial in the chain maintaining the cyclic ordering,
we add its leading coeficient to avoid crossing ∞ (in Figure 5f, like (1) the blue root is trapped between
the magenta and purple, however, instead of the resultant of the purple and red polynomials, we add the
leading coeficient of the purple).</p>
      <p>To summarize, we replace Lines 9 to 14 of Algorithm 1 by Algorithm 2. We maintain projective
delineability for each polynomial (Algorithm 2) using Theorem 3.1, and delineability using Lemma 3.1
for polynomials defining the bounds (Algorithm 2) and for polynomials without roots (Algorithm 2)
where we make use of the optimization by Lemma 3.2 to omit leading coeficients. In Algorithm 2, we
determine a relation for maintaining sign-invariance of polynomials (Theorem 4.1), where we may
exploit transitivity (using Lemma 4.1), now maintaining a cyclic ordering. The relation involves ∞ to
enable the choice of adding leading coeficients (Algorithm 2) using Lemma 3.1 instead of resultants
(Algorithm 2) using Theorem 3.2.</p>
      <p>
        We now elaborate how me make determine the ordering in Algorithm 2, exploiting the options
elaborated in Example 4.3. [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] describes some heuristics for choosing root orderings (in the non-cyclic
setting). The biggest cell heuristic is the straightforward ordering that fulfils the minimal requirement
from Theorem 2.3, and the lowest degree barrier heuristic greedily minimizes the degrees of the
computed resultants using transitivity. In our modification, our aim is - compared to the classical setting
- to avoid additional resultants but omit leading coeficients whenever possible. We thus compute the
ordering according to the biggest cell or lowest degree barrier heuristic as in the classical setting (as
if every polynomial would be delineable). To transfer this ordering to the projective delineability setting,
for each root  above (below) the cell, we either add (, ∞) (efectively adding a leading coeficient) or
(,  ′) for some root  ′ below (above) the cell (efectively adding a resultant with a polynomial that has
roots on the “other” side). As we do not want to add additional resultants, we do the latter only if the
corresponding resultant would have been added in the non-projective case.
      </p>
    </sec>
    <sec id="sec-4">
      <title>5. Experiments</title>
      <p>
        We implemented our single cell construction algorithm based on the proof system described in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]
in our solver SMT-RAT, which uses it for generating explanations for the NLSAT algorithm. For this
paper, we test the following variants: BC and LDB are the baseline variants using the biggest cell and
lowest degree barriers heuristic respectively. BC-PD and LDB-PD are the modified versions using
projective delineability as described above. Although we use the incomplete McCallum’s projection
operator, the implementation of our proof system is complete: in case a polynomial is nullified, we add
some of its partial derivatives to ensure its order invariance, as suggested in [17, Section 5.2].
      </p>
      <p>We conduct our experiments on Intel®Xeon®8468 Sapphire CPUs with 2.1 GHz per core, testing
upon the SMT-LIB QF_NRA benchmark set [22] which contains 12 154 instances. We use a time limit of
Algorithm 2: Modifications of single_cell_construction
9 foreach  ∈  do
10 if ([−1] , ) = 0 then return FAIL
11  :=  ∪ {} for some  ∈ coeff  () such that () ̸= 0
12  :=  ∪ {disc ()}
13  :=  ∪ {ldcf (ℓ), ldcf ()} where ℓ, define I 
14 foreach  ∈  s.t. rroots(([−1] , )) = ∅ and ldcf () ̸= 0 do
15  :=  ∪ {ldcf ()}
// proj. delineability, Theorem 3.1
// del., Lemma 3.1</p>
      <p>// Lemma 3.2
// delineability, Lemma 3.1
16 choose symmetric ̸≈ ⊆ (Θ ∪ {∞}) 2 that ensures  ℓ ̸=   (if I = ( ℓ,  )) and sign-invariance of each  ∈  by</p>
      <p>Theorem 4.1, using “transitivity” by Lemma 4.1
17  :=  ∪ {res (, ′) | (root,, root′,′ ) ∈ ̸≈} // Theorem 3.2
18  :=  ∪ {ldcf () | (root,, ∞) ∈ ̸≈} // Lemma 3.1
60 seconds and a memory limit of 4 gigabytes. The code, instructions for reproducing and raw results
are available at: https://doi.org/10.5281/zenodo.14900915.</p>
      <p>
        Overall Results. The number of solved instances is reported in Table 1, showing that the use of
projective delineability does not greatly afect which problems are tractable within the time limit. The
actual running times are depicted in Figure 6a: they show similar performance of the modified and
baseline versions on the majority of instances, but significantly diferent behaviour on some instances.
The diferences largely even out over the whole benchmark set (a typical picture for changes to the
projection heuristics in our experience). Nevertheless, it is clear that many instances do benefit from
projective delineability. Identifying a criterion to predict whether the optimization pays of a priori is
desirable (a machine learning based approach may be possible [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]), but that is not in the scope of this
paper.
      </p>
      <p>In the remainder of this section we compare the behaviour of BC and BC-PD variants to better
understand these results.</p>
      <p>Number of Applications. The results may suggest that the optimization from projective delineability
is only applied in very rare cases, but this is not the case. Considering the instances solved by BC-PD: in
total, the leading coeficient can be omitted for 307 822 polynomials, while for 826 795 polynomials, the
optimization cannot be applied as the cell is unbounded in some direction, and for 4 089 polynomials,
the optimization cannot be applied as it does not have a root on both sides of the bounds, or we did not
ifnd an appropriate resultant that may replace the leading coeficient. The optimization is thus applied
in a substantial 37% of the cases. However, we also need to add a coeficient for each polynomial to
ensure its non-nullification: if we add the leading coeficient, this sufices in most of the cases. Still, if it
is omitted, we may choose another coeficient which is potentially simpler (e.g. of lower degree, fewer
variables, etc) that the leading coeficient. We thus investigate whether this choice has an impact on
another metric.</p>
      <p>Quality of Cells. A good indicator for the quality of the generated cells is their size, which may be
indirectly measured by the number of cells constructed (Figure 6b). By leaving out leading coeficients,
we also hope to decrease the number of projection polynomials (Figure 6c). By choosing “simpler”
coeficients than the leading coeficients (in terms of a lower degree), we aim to reduce the degree of the
computed polynomials (not depicted in Figure 6 as there is no visible diference between the variants)
and indirectly the number of computed roots (Figure 6d). However, all these measures do not seem to
difer significantly in aggregate between the baseline and modified variants. An explanation could be
that the (degree of the) leading coeficients do not carry much weight, or that the alternative coeficients
are not much simpler.</p>
      <p>Role of Projection Polynomials. To address the latter hypothesis, we compare the impact of the
diferent projection polynomials (resultants, discriminants, and (leading) coeficients). On the 10 157
instances solved by BC-PD, of the time spent on algebraic computations, 55% is spent on computing
discriminants and 5% is spent on computing resultants, and almost no time is spent on computing
coeficients. Regarding the polynomials with a maximum total degree of the ones occurring in an</p>
      <p>solved by no variant
solved by BC/LDB but not by BC-PD/LDB-PB
solved by BC-PD/LDB-PB but not by BC/LDB
solved by both variants</p>
      <p>BC</p>
      <p>LDB
D
P
BC2000
0
⊥</p>
      <p>0
D
CP-15k
B
0
0
0
20
40
BC
instance, in 15% of the instances, that polynomial is a discriminant, in 30% of the instances, that
polynomial is a resultant, and in only 3% of the instances, that polynomial is a coeficient. Both
measures show that the coeficients have a minor impact on the complexity of the projection.</p>
    </sec>
    <sec id="sec-5">
      <title>6. Conclusion</title>
      <p>
        We provided a first application for the notion of projective delineability recently introduced in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ],
that formally describes the role of the leading coeficients in the projection. We modified the single cell
construction algorithm accordingly and evaluated the result in the context of the NLSAT algorithm for
SMT solving. The results ofer a variety of possibilities for modifying the projection, and thus fit nicely
as an extension of the proof system introduced in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ].
      </p>
      <p>Our experimental evaluation shows the resulting optimization is applied in many cases, however,
these do not translate to significant improvements in terms of running times or quality of intermediate
results, as other projection polynomials play a greater role for the computational efort. That is the case
when viewing the dataset as a whole: we have found many individual instances that benefit from the
optimisation bringing further the future research question of how to recognise this in advance. Also in
future work, further symbiotic optimizations may lead to practical improvements, such as reducing the
amount of coeficients required for maintaining non-nullification of polynomials.</p>
    </sec>
    <sec id="sec-6">
      <title>Declaration on Generative AI</title>
      <p>No generative AI was used.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Erika</given-names>
            <surname>Ábrahám</surname>
          </string-name>
          et al. “
          <article-title>Deciding the Consistency of Non-Linear Real Arithmetic Constraints with a Conflict Driven Search Using Cylindrical Algebraic Coverings”</article-title>
          .
          <source>In: Journal of Logical and Algebraic Methods in Programming 119 (Feb</source>
          .
          <year>2021</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Haniel</given-names>
            <surname>Barbosa</surname>
          </string-name>
          et al. “
          <article-title>Cvc5: A Versatile and Industrial-Strength SMT Solver”</article-title>
          . In:
          <article-title>Tools and Algorithms for the Construction and Analysis of Systems (TACAS</article-title>
          <year>2022</year>
          ).
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Saugata</given-names>
            <surname>Basu</surname>
          </string-name>
          , Richard Pollack, and
          <string-name>
            <surname>Marie-Françoise Roy</surname>
          </string-name>
          .
          <article-title>Algorithms in Real Algebraic Geometry</article-title>
          . 2nd ed. Algorithms and Computation in Mathematics volume
          <volume>10</volume>
          . Berlin: Springer,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Christopher</surname>
            <given-names>W. Brown.</given-names>
          </string-name>
          “
          <article-title>Improved Projection for Cylindrical Algebraic Decomposition”</article-title>
          .
          <source>In: Journal of Symbolic Computation</source>
          <volume>32</volume>
          .5 (
          <issue>Nov</issue>
          .
          <year>2001</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Christopher</surname>
            <given-names>W. Brown.</given-names>
          </string-name>
          “QEPCAD B:
          <article-title>A Program for Computing with Semi-Algebraic Sets Using CADs”</article-title>
          .
          <source>In: ACM SIGSAM Bulletin 37.4</source>
          (
          <issue>Dec</issue>
          .
          <year>2003</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Christopher</surname>
            <given-names>W. Brown.</given-names>
          </string-name>
          “
          <article-title>Constructing a Single Open Cell in a Cylindrical Algebraic Decomposition”</article-title>
          .
          <source>In: Symbolic and Algebraic Computation (ISSAC</source>
          <year>2013</year>
          ).
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>Christopher</surname>
            <given-names>W. Brown.</given-names>
          </string-name>
          “
          <article-title>Open Non-uniform Cylindrical Algebraic Decompositions”</article-title>
          .
          <source>In: Symbolic and Algebraic Computation (ISSAC</source>
          <year>2015</year>
          ).
          <year>June 2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Christopher</surname>
            <given-names>W.</given-names>
          </string-name>
          <string-name>
            <surname>Brown</surname>
          </string-name>
          and Marek Košta. “
          <article-title>Constructing a Single Cell in Cylindrical Algebraic Decomposition”</article-title>
          .
          <source>In: Journal of Symbolic Computation</source>
          <volume>70</volume>
          (
          <issue>Sept</issue>
          .
          <year>2015</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Changbo</given-names>
            <surname>Chen</surname>
          </string-name>
          et al. “
          <article-title>Computing Cylindrical Algebraic Decomposition via Triangular Decomposition”</article-title>
          .
          <source>In: Symbolic and Algebraic Computation (ISSAC</source>
          <year>2009</year>
          ).
          <source>July</source>
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>George</surname>
            <given-names>E. Collins.</given-names>
          </string-name>
          “
          <article-title>Quantifier Elimination for Real Closed Fields by Cylindrical Algebraic Decomposition”</article-title>
          .
          <source>In: Automata Theory and Formal Languages</source>
          .
          <year>1975</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>Florian</given-names>
            <surname>Corzilius</surname>
          </string-name>
          et al. “
          <article-title>SMT-RAT: An Open Source C++ Toolbox for Strategic and Parallel SMT Solving”</article-title>
          .
          <source>In: Theory and Applications of Satisfiability Testing (SAT</source>
          <year>2015</year>
          ).
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Leonardo de Moura</surname>
          </string-name>
          and Nikolaj Bjørner. “
          <article-title>Z3: An Eficient SMT Solver”</article-title>
          . In:
          <article-title>Tools and Algorithms for the Construction and Analysis of Systems (TACAS</article-title>
          <year>2008</year>
          ).
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <article-title>Tereso del Río and Matthew England. “Lessons on Datasets and Paradigms in Machine Learning for Symbolic Computation: A Case Study on CAD”</article-title>
          .
          <source>In: Mathematics in Computer Science</source>
          <volume>18</volume>
          .3 (
          <issue>Oct</issue>
          .
          <year>2024</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>Bruno</given-names>
            <surname>Dutertre</surname>
          </string-name>
          .
          <source>“Yices 2</source>
          .2”. In: Computer Aided Verification (CAV
          <year>2014</year>
          ).
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>Dejan</given-names>
            <surname>Jovanović</surname>
          </string-name>
          and Leonardo de Moura. “
          <article-title>Solving Non-linear Arithmetic”</article-title>
          .
          <source>In: Automated Reasoning (IJCAR</source>
          <year>2012</year>
          ).
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Steven</surname>
            <given-names>G.</given-names>
          </string-name>
          <string-name>
            <surname>Krantz and Harold R. Parks</surname>
          </string-name>
          .
          <article-title>A Primer of Real Analytic Functions</article-title>
          . Boston, MA: Birkhäuser,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Scott</surname>
            <given-names>McCallum.</given-names>
          </string-name>
          “
          <article-title>An Improved Projection Operation for Cylindrical Algebraic Decomposition”</article-title>
          .
          <source>PhD thesis</source>
          . University of Wisconsin-Madison,
          <year>1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Scott</surname>
            <given-names>McCallum.</given-names>
          </string-name>
          “
          <article-title>An Improved Projection Operation for Cylindrical Algebraic Decomposition”</article-title>
          .
          <source>In: Quantifier Elimination and Cylindrical Algebraic Decomposition</source>
          .
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>Lucas</given-names>
            <surname>Michel</surname>
          </string-name>
          et al. “
          <article-title>On Projective Delineability”</article-title>
          .
          <source>In: Symbolic and Numeric Algorithms for Scientific Computing (SYNASC</source>
          <year>2024</year>
          ). Sept.
          <year>2024</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>Jasper</given-names>
            <surname>Nalbach</surname>
          </string-name>
          and
          <string-name>
            <given-names>Erika</given-names>
            <surname>Ábrahám</surname>
          </string-name>
          . “
          <article-title>Merging Adjacent Cells During Single Cell Construction”</article-title>
          .
          <source>In: Computer Algebra in Scientific Computing (CASC</source>
          <year>2024</year>
          ).
          <year>2024</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>Jasper</given-names>
            <surname>Nalbach</surname>
          </string-name>
          et al. “
          <article-title>Levelwise Construction of a Single Cylindrical Algebraic Cell”</article-title>
          .
          <source>In: Journal of Symbolic Computation</source>
          <volume>123</volume>
          (
          <year>July 2024</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>Andreas</given-names>
            <surname>Seidl</surname>
          </string-name>
          and Thomas Sturm.
          <article-title>“A Generic Projection Operator for Partial Cylindrical Algebraic Decomposition”</article-title>
          .
          <source>In: Symbolic and Algebraic Computation (ISSAC</source>
          <year>2003</year>
          ). Aug.
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>Adam</given-names>
            <surname>Strzeboński</surname>
          </string-name>
          . “
          <article-title>Cylindrical Algebraic Decomposition Using Local Projections”</article-title>
          .
          <source>In: Symbolic and Algebraic Computation (ISSAC</source>
          <year>2014</year>
          ).
          <source>July</source>
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>