Choosing the Variable Ordering for Cylindrical Algebraic Decomposition via Exploiting Chordal Structure
CChoosing the Variable Ordering for Cylindrical AlgebraicDecomposition via Exploiting Chordal Structure
Haokun Li, Bican Xia, Huiying Zhang, and Tao Zheng haokunli,huiyingz,[email protected]@math.pku.edu.cnSchool of Mathematical Sciences, Peking UniversityBeijing, China
ABSTRACT
Cylindrical algebraic decomposition (CAD) plays an important rolein the field of real algebraic geometry and many other areas. As iswell-known, the choice of variable ordering while computing CADhas a great effect on the time and memory use of the computationas well as the number of sample points computed. In this paper, weindicate that typical CAD algorithms, if executed with respect to aspecial kind of variable orderings (called βthe perfect eliminationorderingsβ), naturally preserve chordality, which is an importantproperty on sparsity of variables. Experimentation suggests thatif the associated graph of the polynomial system in question ischordal ( resp. , is nearly chordal), then a perfect elimination orderingof the associated graph ( resp. , of a minimal chordal completion ofthe associated graph) can be a good variable ordering for the CADcomputation. That is, by using the perfect elimination orderings, theCAD computation may produce a much smaller full set of projectionpolynomials than by using other naive variable orderings. Moreimportantly, for the complexity analysis of the CAD computationvia a perfect elimination ordering, an ( π, π ) -property of the fullset of projection polynomials obtained via such an ordering isgiven, through which the βsizeβ of this set is characterized. Thisproperty indicates that when the corresponding perfect eliminationtree has a lower height, the full set of projection polynomials alsotends to have a smaller βsizeβ. This is well consistent with theexperimental results, hence the perfect elimination orderings withlower elimination tree height are further recommended to be usedin the CAD projection. KEYWORDS
Cylindrical algebraic decomposition, chordality, variable ordering,polynomial.
ACM Reference Format:
Haokun Li, Bican Xia, Huiying Zhang, and Tao Zheng. 2021. Choosing theVariable Ordering for Cylindrical Algebraic Decomposition via ExploitingChordal Structure. In
International Symposium on Symbolic and AlgebraicComputation (ISSAC β21), July 18β22, 2021, Saint Petersburg, .
ACM, NewYork, NY, USA, 9 pages. https://doi.org/10.1145/...
Permission to make digital or hard copies of all or part of this work for personal orclassroom use is granted without fee provided that copies are not made or distributedfor profit or commercial advantage and that copies bear this notice and the full citationon the first page. Copyrights for components of this work owned by others than ACMmust be honored. Abstracting with credit is permitted. To copy otherwise, or republish,to post on servers or to redistribute to lists, requires prior specific permission and/or afee. Request permissions from [email protected].
ISSAC β21, July 18β22, 2021, Saint Petersburg, Russia Β© 2021 Association for Computing Machinery.ACM ISBN 978-1-4503-6084-5/19/07...$15.00https://doi.org/10.1145/...
Cylindrical algebraic decomposition (CAD) has been widely usedin real algebraic geometry and beyond since it was introducedby Collins in 1975 [13]. A CAD of an Euclidean space R π fora given polynomial set π β Z [ π₯ , . . . , π₯ π ] is a cylindrical par-tition of the space R π so that every polynomial in the set π issign-invariant in each component (called βcellβ) of this partition.There are many CAD algorithms and their variants, see for example[4, 5, 7, 9, 13, 14, 18β22, 25, 26, 31]. A typical CAD algorithm usu-ally contains two parts: the projection part and the lifting part. Inthe projection part, one eliminates the variables of the polynomialset π successively in some order. Then the sample points obtainedin some one-dimensional space via the full set of projection poly-nomials are lifted step-by-step to sample points in the original( π -dimensional) space during the lifting part and each sample pointin R π represents a cell of the CAD.It is long known that the variable ordering used in the projectionpart has a great effect on the time and memory use of the CADcomputation as well as the number of sample points computed.There are many researches focusing on the problem of choosing agood variable ordering for the CAD computation. For instance, in[3, 6, 16], various heuristics are provided to suggest a relatively goodvariable ordering based on different rules. Latter in [10, 17, 23], themethods based on machine learning and artificial neural networkare used to choose a good variable ordering for CAD computation.The present paper is inspired by the previous work [8, 12, 27, 28]on combining the chordal structure with triangular decompositionof polynomial sets. In [12], based on the computation of triangulardecomposition, Cifuentes and Parrilo compute the chordal networkof a polynomial set by exploiting the chordal structure of its associ-ated graph. Latter in [27], Mou et al indicate that Wangβs algorithmand a subresultant-based algorithm, both in top-down style, for com-puting the triangular decomposition of a polynomial set preservethe chordal structure. And another subresultant-based algorithmfor computing the regular decomposition in the same style is alsoproved to preserve the chordal structure. Then in [28] by Mou andLai, it is proved that Wangβs algorithm for computing the simpledecomposition of a polynomial set in top-down style preservesthe chordal structure of the polynomial set as well. Recently in[8], Chen proves that an incremental algorithm for computing thetriangular decomposition of a polynomial set preserves the chordalstructure, too. On the contrary, Cifuentes and Parrilo indicate thatthe computation of GrΓΆbner basis of a polynomial set seems toviolate the chordal structure [11].In this paper we take advantage of the chordal structure of theassociated graph of a polynomial set while computing CAD for a r X i v : . [ c s . S C ] F e b SSAC β21, July 18β22, 2021, Saint Petersburg, Russia Haokun Li, Bican Xia, Huiying Zhang, and Tao Zheng this set to exploit its variable sparsity. We first indicate that all thebasic operations usually used in the CAD projection algorithms,such as resultant, discriminant, subresultant, etc , preserve chordalstructures. Based on this, it is an easy corollary that typical CADalgorithms naturally preserve chordal structures (if executed withrespect to a perfect elimination ordering), thus also the variablesparsity pattern embedded in the chordality. Some experimental re-sults show that a perfect elimination ordering of a chordal structureof the polynomial set in question may be a good variable order-ing for computing CAD compared with other naive ones. Moreimportantly, for the complexity analysis of the CAD computationvia a perfect elimination ordering, an ( π, π ) -property for the fullset of projection polynomials obtained by using such an orderingis provided, through which the βsizeβ of this set is characterized.According to that property, when the corresponding perfect elimi-nation tree has a lower height, the full set of projection polynomialstends to have a smaller βsizeβ. This is further supported by someexperimental results. And because of that, the perfect eliminationorderings with lower elimination tree height are further recom-mended while computing the CAD projection.The rest of this paper is organized as follows: Section 2 includessome basic definitions. In Sections 3 and 4, we prove that typicalCAD algorithms preserve the chordal structure of the associatedgraph of the polynomial set in question. In Section 5, the βsizeβof the full set of projection polynomials obtained in accordancewith a perfect elimination ordering is characterized via an ( π, π ) -property, while Section 6 is devoted to showing the effectivenessof our approach by some examples from applications. Section 7concludes the paper. Denote by K [ Β― π₯ ] = K [ π₯ , . . . , π₯ π ] the polynomial ring in variables π₯ , . . . , π₯ π with coefficients in a domain K . For any π₯ π , a nonzeropolynomial π β K [ Β― π₯ ] can be written in the form π = (cid:205) π π = π π π₯ ππ with π π (cid:46) , π π β , . . . , π β K [ π₯ , . . . , π₯ π β , π₯ π + , . . . , π₯ π ] and π β Z β₯ .The number π is called the degree of π with respect to ( w.r.t. ) thevariable π₯ π and is denoted by deg ( π , π₯ π ) , while those π π βs are calledthe coefficients of π w.r.t. π₯ π and they form a set coeff ( π , π₯ π ) = { π π , π π β , . . . , π } . In particular, we call π π the leading coefficient of π w.r.t. π₯ π and denote it by lc ( π , π₯ π ) . The content of π w.r.t. π₯ π , denoted by cont ( π , π₯ π ) , refers to the GCD of the coefficients π , π , . . . π π . The polynomial π is called primitive w.r.t. π₯ π if cont ( π , π₯ π ) = while the polynomial π / cont ( π , π₯ π ) is defined to be the primitivepart of π w.r.t. the variable π₯ π . In addition, we denote by cont ( πΉ, π₯ π ) the set of those non-constant contents of the elements of a polyno-mial set πΉ .In the following, we recall the definition of the associated graphof a polynomial set and the concept of chordal graph. Let π bea polynomial in K [ Β― π₯ ] and denote by var ( π ) the set of variableswhich appear in π . For a polynomial set πΉ , we define var ( πΉ ) = βͺ π β πΉ var ( π ) . Then we have the following definition: Definition 2.1. ([27], Def.1) Let πΉ β K [ Β― π₯ ] be a finite polynomialset. The undirected graph with the vertex set var ( πΉ ) and the edgeset {( π₯ π , π₯ π ) | β π β πΉ, π₯ π , π₯ π β var ( π )} is called the associated graph of πΉ and is denoted by G ( πΉ ) . Remark 1. If var ( πΉ ) = β , then G ( πΉ ) is the empty graph.Example 2.2. Set πΉ = { π₯ π₯ β , π₯ π₯ β , π₯ π₯ β } and πΉ = { π¦ β , π¦ + π¦ , π¦ + π¦ , π¦ + π¦ } . Then the associated graphs G ( πΉ ) and G ( πΉ ) of them are shown in Fig. 2 and Fig. 3, respectively. π₯ π₯ π₯ Figure 2: G ( πΉ ) π¦ π¦ π¦ π¦ Figure 3: G ( πΉ ) Definition 2.3. ([2]) Let πΊ = ( π , πΈ ) be a graph with π = { π₯ , . . . , π₯ π } .An ordering of the vertices π₯ π > π₯ π > Β· Β· Β· > π₯ π π is called a perfectelimination ordering if for each vertex π₯ π , the induced subgraphwith the vertex set π π = { π₯ π } βͺ { π₯ π | π₯ π < π₯ π , ( π₯ π , π₯ π ) β πΈ } is a clique. A graph πΊ with a perfect elimination ordering is said tobe chordal .The graphs G ( πΉ ) and G ( πΉ ) in Fig. 2 and Fig. 3 are both chordalgraphs. In the graph G ( πΉ ) , any vertex ordering is a perfect elimi-nation ordering. The graph G ( πΉ ) is a tree, we know that trees arechordal with perfect elimination orderings obtained by randomlypruning the leafs. Definition 2.4. ([1]) Let πΊ = ( π , πΈ ) be a graph, a chordal comple-tion of πΊ is a chordal graph Λ πΊ = ( Λ π , Λ πΈ ) such that πΊ is a subgraph of Λ πΊ , i.e. π β Λ π and πΈ β Λ πΈ . We call Λ πΊ a minimal chordal completionof πΊ , if any subgraph of Λ πΊ is not a chordal completion of πΊ .For a given graph, there are some known algorithms, e.g. the elimination game algorithm in [29], to find one of its chordal com-pletions and a corresponding perfect elimination ordering of thatchordal completion. Definition 2.5.
Given a polynomial set πΉ β K [ Β― π₯ ] , a graph πΊ is a chordal structure of πΉ if πΊ is a chordal completion of G ( πΉ ) . Inparticular, if G ( πΉ ) is a chordal structure of πΉ , then πΉ is said to be chordal . For convenience, any chordal graph is regarded as a chordalstructure of G ( πΉ ) if var ( πΉ ) = β . The propositions presented in this section show that some basicpolynomial operations, such as discriminant, resultant and subre-sultant, preserve the chordal structure. Then it is reasonable thatany algorithm, containing only these operations, also preservesthe chordal structure. Now that the chordal structure is preservedby the algorithm, the variable sparsity embedded in the chordalstructure is preserved as well. Later we will see the advantages ofpreserving such a sparsity pattern during the computation of CAD.For any π , π β K [ Β― π¦, π₯ ] = K [ π¦ , . . . , π¦ π , π₯ ] , we denote by dis ( π , π₯ ) the discriminant of π w.r.t. π₯ , and set res ( π , π, π₯ ) to be the Sylvesterresultant, π π to be the π -th subresultant and π π + , π π , π π β , Β· Β· Β· , π hoosing the Variable Ordering for Cylindrical Algebraic Decomposition via Exploiting Chordal Structure ISSAC β21, July 18β22, 2021, Saint Petersburg, Russia to be the subresultant chain of π and π w.r.t. π₯ , respectively. Thenwe haveProposition 3.1. Let π be a polynomial in K [ Β― π¦, π₯ ] and πΊ = ( π , πΈ ) a chordal structure of the set { π } , then πΊ is a chordal structure of theset π = coeff ( π , π₯ ) βͺ { cont ( π , π₯ ) , dis ( π , π₯ )} . In particular, πΊ is achordal structure of the set { lc ( π , π₯ )} . Proof. Since var ( π ) β var ( π ) , G ( π ) is a subgraph of G ({ π }) ,which is a subgraph of πΊ . β‘ Proposition 3.2.
Let π , π be polynomials in K [ Β― π¦, π₯ ] and πΊ = ( π , πΈ ) a chordal structure of the set { π , π } . If there is a perfect elimina-tion ordering of πΊ such that π₯ > π¦ π for any π¦ π β Β― π¦ , then πΊ is a chordalstructure of the set π = { res ( π , π, π₯ ) , π π + , π π , π π β , Β· Β· Β· , π } . Proof. Since π₯ > π¦ π for any π¦ π β Β― π¦ , var ( π ) β var ({ π , π }) β π π₯ with π π₯ = { π₯ } βͺ { π§ β π | π§ < π₯, ( π₯, π§ ) β πΈ } a clique of πΊ . So πΊ is a chordal completion of the graph G ( π ) . β‘ The finest squarefree basis of π΄ β K [ Β― π₯ ] , denoted by F ( π΄ ) , isthe set of all the irreducible factors of the elements of π΄ (see [13],P.146). Then the following observation is clear:Proposition 3.3. If a finite set π΄ β K [ Β― π₯ ] has a chordal structure πΊ , then πΊ is also a chordal structure of the set F ( π΄ ) and the set π΄ βͺ F ( π΄ ) . Proof. Clearly we have var ( F ( π΄ )) β var ( π΄ ) . Since any poly-nomial in F ( π΄ ) is either a polynomial in π΄ or a factor of a poly-nomial in π΄ , G ( F ( π΄ )) is a subgraph of G ( π΄ ) , which is again asubgraph of πΊ . β‘ In this section, we first prove that some well-known CAD algo-rithms, with the projection operators used in them preserving thechordal structure, also preserve the chordal structure themselvesif the projection is done in accordance with a perfect eliminationordering. Based on this, the perfect elimination orderings are recom-mended while computing the CAD projection. Then, through twoexamples, we compare the size of the full sets of projection poly-nomials obtained by the CAD algorithms with respect to perfectelimination orderings and other random variable orderings. Theexamples show that the perfect elimination orderings can result inmuch smaller polynomial sets than other naive ones do.A key concept in the CAD algorithms is the projection operator.In an abstract sense, the projection operator
Proj is a mappingwhich maps an π -dimensional polynomial set π containing somevariable π₯ to an ( π β ) -dimensional polynomial set π β² such that π₯ β var ( π β² ) and any π β² -sign-invariant CAD of R π β can be inducedby a π -sign-invariant CAD of R π . The projection procedure of π withvariable ordering π₯ π > Β· Β· Β· > π₯ is defined to be the sequence ofpolynomial sets { π π , π π β , . . . , π } , where π π = π and each π π = Proj ( π π + , π₯ π + ) is a set of polynomials in π₯ π , . . . , π₯ for π = π β , . . . , . In particular, we call π π β , . . . , π the projection polynomialsets w.r.t. the ordering π₯ π > Β· Β· Β· > π₯ .The projection operator introduced by Collins is defined to bea union of some coefficients, some resultants, some discriminantsand some subresultants with respect to a fixed variable π₯ . Many improved projection operators are obtained by simplifying Collinsβprojection operator.Proposition 4.1. Set π΄ β K [ Β― π¦, π₯ ] to be a polynomial set. Supposethat a projection operator Proj ( π΄, π₯ ) only consists of some coeffi-cients, contents, resultants, discriminants and some subresultants ofthe polynomials in π΄ βͺ F ( π΄ ) w.r.t. π₯ and πΊ is a chordal structure of π΄ with a perfect elimination ordering such that π₯ > π¦ π for any π¦ π β Β― π¦ ,then πΊ is also a chordal structure of the polynomial set Proj ( π΄, π₯ ) . Proof. Set π β Proj ( π΄, π₯ ) . If π is the discriminant, the contentor a coefficient of a polynomial in π΄ βͺ F ( π΄ ) , then πΊ is a chordalstructure of { π } by Prop. 3.3 and Prop. 3.1. If π is a resultant or asubresultant of two polynomials in π΄ βͺ F ( π΄ ) , then by Prop. 3.3 andProp. 3.2, the same conclusion holds. Hence πΊ is a chordal structureof any { π } β Proj ( π΄, π₯ ) , thus also a chordal structure of the set Proj ( π΄, π₯ ) . β‘ Proposition 4.2.
Set π΄ β K [ Β― π₯ ] to be a polynomial set. Supposethe graph πΊ is a chordal structure of π΄ and π₯ π > Β· Β· Β· > π₯ is a perfectelimination ordering of πΊ . If a projection operator Proj ( π, Β·) , with π the polynomial set on which it operates, consists of some coefficients,contents, resultants, discriminants and some subresultants of the poly-nomials in π βͺ F ( π ) and { π π = π΄, π π β , . . . , π } is a projectionprocedure of π΄ obtained via the projection ordering π₯ π > Β· Β· Β· > π₯ ,then πΊ is a chordal structure of any π π , π = , . . . , π . Proof. The proof is inductive on the index π : If π = π , then π π = π΄ , the conclusion holds. Suppose that πΊ is a chordal structureof π π for some π β€ π . Since π π β = Proj ( π π , π₯ π ) , πΊ is a chordalstructure of π π β by Prop. 4.1. The proposition is proved. β‘ As can be seen from above, the original projection operatorand most of the improved projection operators used in the CADalgorithms preserve the chordal structure of a polynomial set. Forthis reason, when the polynomial system is sparse and with thechordal structure, the perfect elimination orderings of that chordalstructure are recommended while computing the CAD projectionin order to preserve the chordal structure (as well as the sparsityembedded in the chordal structure) of the system. In this way,the growth of the size of the polynomial sets obtained during theprojection can possibly be reduced.In the following we take care of two popular projection operatorsand indicate that they preserve the chordal structure.
Definition 4.3. ([25]) Let π΄ β Z [ Β― π₯ ] be a finite polynomial setcontaining at least two variables. McCallumβs projection operator Proj mc (Β· , Β·) is defined as follows: Let the polynomial set π΅ be thefinest squarefree basis of all the primitive parts of the elements of π΄ with positive degrees, then Proj mc ( π΄, π₯ π ) = cont ( π΄, π₯ π ) βͺ (cid:216) π ,π β π΅, π β π { res ( π , π, π₯ π )}βͺ (cid:216) π β π΅ (cid:0) ( coeff ( π , π₯ π )\{ }) βͺ { dis ( π , π₯ π )} (cid:1) . Since π΅ β F ( π΄ ) , Prop. 4.2 holds for the operator Proj mc . Indeed,by Prop. 3.3 and Prop. 4.1, each set in the projection procedure ofany π΄ β Z [ Β― π₯ ] obtained by the operator F ( Proj mc (Β· , Β·)) preservesthe chordal structure of π΄ as well. SSAC β21, July 18β22, 2021, Saint Petersburg, Russia Haokun Li, Bican Xia, Huiying Zhang, and Tao Zheng
Example 4.4.
Consider the quantified formula below: β π₯ . π₯ + π₯ > β§ π₯ + π₯ β₯ β§ π₯ + π₯ < β§ π₯ + π₯ β€ β§ π₯ + π₯ > β§ π₯ + π₯ + π₯ < . The CAD-based methods solving this example rely on construct-ing a CAD for the set of polynomials πΉ = { π₯ + π₯ , π₯ + π₯ , π₯ + π₯ , π₯ + π₯ , π₯ + π₯ , π₯ + π₯ + π₯ } . The associated graph of πΉ is a chordal graph, shown in Fig. 3. π₯ π₯ π₯ π₯ π₯ Figure 3: G ( πΉ ) We successively use the operator F ( Proj mc (Β· , Β·)) in accordancewith the perfect elimination ordering π₯ > π₯ > π₯ > π₯ > π₯ andobtain a projection procedure: πΉ β² = F ( Proj mc ( πΉ, π₯ )) = { π₯ , π₯ , π₯ + π₯ , π₯ + π₯ , π₯ + π₯ , π₯ + π₯ + π₯ , π₯ β π₯ } ,πΉ β²β² = F ( Proj mc ( πΉ β² , π₯ )) = { π₯ + π₯ , π₯ + π₯ , π₯ β π₯ , π₯ + π₯ , π₯ , π₯ } ,πΉ β²β²β² = F ( Proj mc ( πΉ β²β² , π₯ )) = { π₯ β π₯ , π₯ + π₯ , π₯ , π₯ , π₯ + π₯ } ,πΉ β²β²β²β² = F ( Proj mc ( πΉ β²β²β² , π₯ )) = { π₯ , π₯ + , π₯ β } . When a random variable ordering, say, π₯ > π₯ > π₯ > π₯ > π₯ is used instead, we finally obtain: πΉ β²β²β²β² = { π₯ , π₯ β , π₯ + , π₯ β , π₯ β , π₯ β , π₯ β , π₯ β , π₯ β , π₯ + π₯ β , π₯ + π₯ + , π₯ β π₯ + , π₯ β π₯ + ,π₯ β π₯ + π₯ β , π₯ β π₯ + π₯ + π₯ + π₯ β ,π₯ + π₯ + π₯ + π₯ + , π₯ + π₯ β π₯ + π₯ β , β π₯ + π₯ β π₯ + , π₯ β π₯ β π₯ β π₯ + π₯ β } . The above process presents the results of the computation withrespect to two specific variable orderings, while Table 1 showsthe experimental results with respect to two classes of variableorderings with the first two maximal variables being π₯ > π₯ > Β· Β· Β· and π₯ > π₯ > Β· Β· Β· , respectively. Therein, the βPEOβ column showswhether the variable orderings with the corresponding maximalvariables in the βMax-Varβ column are perfect elimination orderingsor not. By β w.r.t. a variableordering. Finally, the βavgβ column shows the average of those π₯ > π₯ > Β· Β· Β· yes 21 20 21 20.721 20 21 π₯ > π₯ > Β· Β· Β· no 53 74 34 48.833 52 47 Table 1: Different variable orderings in Example 4.4.
Definition 4.5. ([5]) Let π΄ β Z [ Β― π₯ ] be a squarefree basis [13] withat least two variables. Brownβs projection operator Proj br (Β· , Β·) isdefined as follows: Set π΅ = { π β π΄ | π₯ π β var ( π )} , then Proj br ( π΄, π₯ π ) = cont ( π΄, π₯ π ) βͺ (cid:216) π ,π β π΅, π β π { res ( π , π, π₯ π )} βͺ (cid:216) π β π΅ { lc ( π , π₯ π ) , dis ( π , π₯ π )} . Similarly, Prop. 4.2 holds for Brownβs operator
Proj br . Also, byProp. 3.3 and Prop. 4.1, each set in the projection procedure of any π΄ β Z [ Β― π₯ ] obtained by the operator F ( Proj br (Β· , Β·)) preserves thechordal structure of π΄ as well. Example 4.6.
Let πΉ = { π₯ + π₯ + , π₯ π₯ + π₯ + π₯ , π₯ π₯ + π₯ π₯ + π₯ β , π₯ + π₯ } be a squarefree basis. The associated graph G ( πΉ ) of πΉ is a chordalgraph with π₯ > π₯ > π₯ > π₯ a perfect elimination ordering. As inExample 4.4, by successively applying the operator F ( Proj br (Β· , Β·)) in that order, we can finally obtain the full set of projection polyno-mials: { π₯ , π₯ + , π₯ β , π₯ β } .If a random projection ordering, say, π₯ > π₯ > π₯ > π₯ , whichis not a perfect elimination ordering, is used in the CAD projection,then we will finally obtain the following polynomial set: { π₯ , + π₯ , + π₯ , + π₯ , π₯ + , π₯ + , π₯ + , π₯ + , π₯ + , π₯ + π₯ + , π₯ + π₯ + , π₯ + π₯ + , π₯ + π₯ + π₯ + , π₯ β π₯ β π₯ β ,π₯ + π₯ + , π₯ + π₯ + π₯ + π₯ + } . Max-Var PEO π₯ > Β· Β· Β· yes 13 13 13 12.713 12 12 π₯ > Β· Β· Β· no 26 25 35 33.337 36 41 π₯ > Β· Β· Β· no 14 14 22 17.221 15 17 π₯ > Β· Β· Β· yes 12 12 19 16.224 14 16 Table 2: Different variable orderings in Example 4.6.
Moreover, the sum of the size of the projection polynomial setsobtained via each of the 24 variable orderings is shown in Table 2.Again we see that, when the perfect elimination orderings are used,the CAD projection may yield smaller polynomial sets than it doeswhen other kind of variable orderings are used instead. hoosing the Variable Ordering for Cylindrical Algebraic Decomposition via Exploiting Chordal Structure ISSAC β21, July 18β22, 2021, Saint Petersburg, Russia
In this section, we discuss the complexity of the CAD computationvia a perfect elimination ordering by giving a new estimate of theβsizeβ of the full set of projection polynomials obtained via thatordering. The results in this section are obtained by the method ofBradford et al. [4], based on which they estimate the growth of theβsizeβ of the projection polynomials.For a set of polynomials π΄ β Z [ Β― π₯ ] , the combined degree [24] of π΄ refers to the number max π₯ β var ( π΄ ) deg ( (cid:206) π΄, π₯ ) , where (cid:206) π΄ is theproduct of all the polynomials in π΄ . And we say the set π΄ has the ( π, π ) -property [4] if it can be partitioned into at most π pairwisedisjoint subsets, each with combined degree at most π . This typeof properties are useful while tracking the size of the projectionpolynomials.The following lemma estimates the growth of the βsizeβ of theprojection polynomial sets while using the operator Proj mc .Lemma 5.1. ([4], Lemma 11, Corollary 12) Suppose π΄ β R [ Β― π₯ ] is aset of polynomials with the ( π, π ) -property and π₯ β var ( π΄ ) , then theset Proj mc ( π΄, π₯ ) has the ( π, π ) -property with π = (cid:106) ( π + ) (cid:107) . If π > , then the set Proj mc ( π΄, π₯ ) has the ( π , π ) -property. In Subsection 5.1 we recall the general complexity analysis forCAD while in Subsection 5.2 we provide the complexity analysiswith respect to the case where a perfect elimination ordering isused during the CAD projection.
In Table 3 ([4] Table 1), Lemma 5.1 is applied recursively to estimatethe growth of the pair ( π, π ) in the ( π, π ) -property during theCAD projection rendered by the operator Proj mc . The βNumberβcolumn shows the upper bound of the number of the subsets ina possible partition and the βDegreeβ column shows the upperbound of the corresponding combined degree of those subsets, and π = (cid:106) ( π + ) (cid:107) . Table 3: Growth of the βsizeβ of the polynomial sets in CADprojection.
Variables Number Degree π π ππ β π π π β π π ... ... ...π β π π π β π β π π ... ... ... π π β π β β π π β The number of the real roots of the product of the polynomialsin a univariate polynomial set with the ( π, π ) -property is at most ππ . And the number of the corresponding cells in R is twice thenumber of the real roots plus one. Therefore, the total number ofthe cells in the CAD of R π is at most the product of those π β² π β² + ,with π β² and π β² taking the corresponding values in the βNumberβ and the βDegreeβ columns in Table 3, i.e. ( ππ + ) π β (cid:214) π = (cid:104) ( π β π π β π π ) + (cid:105) . So the following estimate is obtained:Theorem 5.2. ([4]) The number of the CAD cells in R π obtained bythe operator Proj mc is π (( π ) π β π π β β π ) with π = (cid:106) ( π + ) (cid:107) . First, we introduce the concept of elimination tree to further exploitthe relationship between the variables during the perfect elimina-tion process. For convenience, we assume in this section that allthe associated graphs of the polynomial sets are connected.
Definition 5.3. ([12] Def. 2.5) Let πΊ be a chordal graph with aperfect elimination ordering π₯ < π₯ < . . . < π₯ π . The eliminationtree of πΊ is the following directed spanning tree: for each π β there is an arc from π₯ π toward the largest π₯ π that is adjacent to π₯ π and π₯ π < π₯ π . We will say that π₯ π is the parent of π₯ π and π₯ π is a childof π₯ π (we denote by child ( π₯ π ) the set of all the children of π₯ π ).Note that the elimination tree is rooted at π₯ .Lemma 5.4. Let π be the elimination tree of a chordal graph πΊ . If π₯ π < π₯ π‘ and ( π₯ π , π₯ π‘ ) is an edge of πΊ , then there is a path from π₯ π‘ to π₯ π in π . Proof. If π₯ π is the parent of π₯ π‘ , there is nothing to prove. Other-wise, let π₯ π‘ β² be the parent of π₯ π‘ . By Def. 5.3, π₯ π < π₯ π‘ β² . Because ( π₯ π , π₯ π‘ ) and ( π₯ π‘ β² , π₯ π‘ ) are edges of πΊ which is a chordal graph, ( π₯ π , π₯ π‘ β² ) is alsoan edge of πΊ . We are done by repeating the same discussion. β‘ We will see that the path from a node to the root in the elimina-tion tree is exactly the projection path of the polynomials with thevariable corresponding to this node being the maximal variable. Itis in this way the elimination tree describes the relationships be-tween those variables, and this enables us to give a new complexityanalysis.Let π΄ β Z [ Β― π₯ ] be a polynomial set, πΊ a chordal structure of π΄ with a perfect elimination ordering π₯ < . . . < π₯ π and π theelimination tree of πΊ with respect to that ordering. We denote by π π the projection polynomial sets of the operator Proj mc , i.e. π π = π΄ and π π = Proj mc ( π π + , π₯ π + ) for π = π β , . . . , . We define π π to be the projection polynomial sets of the operator Proj mc along the elimination tree as follows: Definition 5.5.
For each β€ π β€ π we define π΄ π = { π β π΄ | max ( var ( π )) = π₯ π } and π π = π΄ π βͺ (cid:216) π₯ π β child ( π₯ π ) Proj mc ( π π , π₯ π ) . (1)Note that when π₯ π is a leaf of π , π π = π΄ π .Proposition 5.6. For π = , . . . , π , we have { π β π π | π₯ π β var ( π )} = { π β π π | π₯ π β var ( π )} . Furthermore, we have { π β (cid:216) π π π | var ( π ) β β } = { π β (cid:216) π π π | var ( π ) β β } . SSAC β21, July 18β22, 2021, Saint Petersburg, Russia Haokun Li, Bican Xia, Huiying Zhang, and Tao Zheng
Proof. It is clear that { π β π π | π₯ π β var ( π )} β π π . So we onlyneed to prove that for any β€ π β€ π , { π β π π | π₯ π β var ( π )} β π π . (2)When π = π , the claim holds. Assume that the containment (2)holds for π = π, π β , . . . , π + . In the following we prove that it alsoholds for π = π . Set π β π π to be a polynomial such that π₯ π β var ( π ) and set π = max ({ β€ π β€ π | π β π π }) β₯ π . If π = π , then π β π΄ π β π π . Otherwise π < π , and π β π π + but π β π π . Supposethat the polynomial π is constructed from a polynomial β β π π + (orfrom two polynomials β , β β π π + ), then we have π₯ π + β var ( β ) ( resp. , π₯ π + β var ( β ) β© var ( β ) ). Since π₯ π β var ( π ) , π₯ π β var ( β ) ( resp. , π₯ π β var ( β ) βͺ var ( β ) ). So there is a polynomial ( β, β or β ) that contains both the variables π₯ π and π₯ π + . This meansthat ( π₯ π , π₯ π + ) is an edge of πΊ . By Lemma 5.4, there is a path from π₯ π + to π₯ π in π . On the other hand, π + > π . So by the inductiveassumption, (2) holds for π = π + and we have β β π π + ( resp. , β , β β π π + ). Thus π β Proj mc ( π π + , π₯ π + ) β π π with π such that π₯ π is the parent of π₯ π + in π . Since max ( var ( π )) = π₯ π , π remainsunchanged in the projection process along the sub-path from π₯ π to π₯ π in π (which is defined by (1)). Therefore, π β π π .Further, for every π β (cid:208) π π π so that var ( π ) β β . Set π = min ({ β€ π β€ π | π β π π }) , then π₯ π β var ( π ) and π β π π . Therefore { π β (cid:208) π π π | var ( π ) β β } β { π β (cid:208) π π π | var ( π ) β β } . The reversecontainment can be proved similarly. β‘ The above proposition shows that the difference between βͺ π π and βͺ π π merely consists of some constants, which make no differencesin the CAD computation. So we can estimate the growth of theβsizeβ of the projection polynomials by estimating the βsizeβ of π π .Lemma 5.7. For a variable π₯ π , if the set π΄ π has the ( π, π ) -propertyand the set π π also has this property for each π₯ π β child ( π₯ π ) , then π π has the (cid:0) (| child ( π₯ π )| + ) π, π (cid:1) -property with π = (cid:106) ( π + ) (cid:107) .When π > , the set π π has the (cid:0) (| child ( π₯ π )|+ ) π , π (cid:1) -property. Proof. By Def. 5.5, π π = π΄ π βͺ (cid:208) π₯ π β child ( π₯ π ) Proj mc ( π π , π₯ π ) . Forany π₯ π β child ( π₯ π ) , the set Proj mc ( π π , π₯ π ) has the ( π, π ) -propertywith π = (cid:106) ( π + ) (cid:107) by Lemma 5.1. And π΄ π has the ( π, π ) -property.Since π β€ π and π < π , π΄ π also has the ( π, π ) -property. β‘ Table 4: Growth of the βsizeβ of the polynomial sets in CADprojection with perfect elimination ordering.
Height Number Degree π π ( π€ + ) π π ( π€ + ) π π ( π€ + ) π π ... ... ...π ( π€ + ) π β π π β π β π π ... ... ...β ( π€ + ) β β π β β β β π β As in Section 5.1, we apply Lemma 5.7 recursively to estimate thegrowth of the βsizeβ of the sets π π . The results are shown in Table4 with π = (cid:106) ( π + ) (cid:107) and π€ = max β€ π β€ π (| child ( π₯ π )|) therein. This is how one reads the table: a triple ( β β² , π β² , π β² ) shown in a rowmeans that for any node π₯ π with height β β² in π , the set π π has the ( π β² , π β² ) -property. The main difference of this table from Table 3 isthat we replace the number of variables therein by the height ofthe nodes in the perfect elimination tree. Rigorously, we haveTheorem 5.8. Suppose the set π΄ π has the ( π, π ) -property for any β€ π β€ π . Then for every internal node π₯ π with height β π , the set π π has the (cid:0) ( π€ + ) βπ β π βπ β , βπ β π βπ (cid:1) -propertywith π€ = max β€ π β€ π (| child ( π₯ π )|) and π = (cid:106) ( π + ) (cid:107) . Note thatfor a leaf node π₯ π , the set π π = π΄ π has the ( π, π ) -property by assump-tion. The following theorem gives the upper bound of the number ofthe CAD cells according to Theorem 5.8 and Prop. 5.6.Theorem 5.9.
If the set π΄ π has the ( π, π ) -property for every π₯ π ,then the number of CAD cells in R π is at most (cid:206) ππ = ( πΎ π + ) , where πΎ π = (cid:40) ππ, if π₯ π is a leaf node (cid:0) ( π€ + ) (cid:1) βπ β π βπ β π βπ , otherwisewith π€ = max β€ π β€ π (| child ( π₯ π )|) , π = (cid:106) ( π + ) (cid:107) and β π theheight of the node π₯ π in the tree π . Comparing Table 4 with Table 3, we can see some significantdifferences. The first one is that the ( π, π ) -property is for π΄ in Table3, but it is for the subsets π΄ π β π΄ in Table 4. This means Table 4(hence Theorem 5.9) may accept a smaller pair ( π, π ) than Table3 ( resp . Theorem 5.2) does. The second difference is the quantityin the double-exponent: one is the number of variables while theother is the height of the node. In general, the difference betweenthese two is not big. But in the case of sparsity, the latter estimatewill be much smaller than the former one. This is consistent withour guess at the very beginning. Also, there is a double exponentwith π€ + β₯ as the base in the new estimate, but note that π€ describes the number of branches and the height is lower if thereare more branches, and vice versa. So this wonβt be too bad for thenew estimate. In this section, we compare the performance of the CAD computa-tion via perfect elimination orderings and via other random variableorderings by testing some polynomial sets with variable sparsity. Asexplained before, computing CAD projection via a perfect elimina-tion ordering preserves the chordal structure (as well as the patternof sparsity embedded in it). This is how we exploit the variablesparsity in the CAD computation. And because of this, the CADcomputation via a perfect elimination ordering usually performsbetter on the examples with variable sparsity.All tests were conducted on 6-Core Intel Core [email protected] 32GB of memory and ARCH LINUX SYSTEM.
According to the result in Section 5, the new complexity analysis forthe CAD computation via a perfect elimination ordering has two hoosing the Variable Ordering for Cylindrical Algebraic Decomposition via Exploiting Chordal Structure ISSAC β21, July 18β22, 2021, Saint Petersburg, Russia main differences from the original one for the CAD computation viaa general variable ordering: one is the new ( π, π ) -property and theother is the height of the elimination tree introduced in the formulae.Among them, the impact of the tree height on the new complexityis particularly noteworthy, and the height of the elimination treeswith respect to different perfect elimination orderings of the samechordal structure can be different. We recommend not only theperfect elimination orderings as the variable orderings used inthe CAD projection, but also the ones among them which resultin perfect elimination trees of the minimal height. The followingexample shows how this can be used to reduce the computation. Example 6.1.
The following polynomial set forms a lattice reach-ablility problem which is described in [15]: πΉ π = { π₯ π π₯ π + β π₯ π + π₯ π + | π = , , . . . , π β } , β€ π β Z . The associated graph G ( πΉ π ) of the set πΉ π is shown in Fig. 4 and itis obviously already a chordal structure of πΉ π . π₯ π₯ π₯ π₯ π₯ π₯ π₯ π β π₯ π β π₯ π β π₯ π β π₯ π π₯ π β Figure 4: Associated graph G ( πΉ π ) of πΉ π in Example 6.1. We consider two different perfect elimination orderings π π : π₯ > π₯ > π₯ > . . . > π₯ π β > π₯ π , and π π : π₯ > Β· Β· Β· > π₯ β π β β > π₯ π > . . . > π₯ β π β β . The figures below (Fig. 6 and Fig. 7) show the elimination trees withrespect to the ordering π π and π π , respectively. π₯ π₯ π Figure 6: The elimi-nation tree with re-spect to π π . π₯ β π + β π₯ β π + β π₯ β π β β π₯ β π β β π₯ β π + β π₯ π₯ π Figure 7: The elimination tree withrespect to π π . Note that the height of the tree in Fig. 6 is π β and the heightof the tree in Fig. 7 is (cid:6) π + (cid:7) . Hence, from the complexity analysisin the last section, π π can be a better variable ordering. We com-pute the CADβs for the polynomial set πΉ π by the CAD tools inMathematica 12 and in Maple 2020. In Mathematica 12, we usethe command βCylindricalDecompositionβ [30] for the formula (cid:211) π β πΉ π π β while in Maple 2020, we use the command βPartial-CylindricalAlgebraicDecompositionβ [32] for the polynomial (cid:206) πΉ π instead. The results are shown in Table 5. We see that the run-time with respect to the ordering π π with a smaller elimination tree height is much shorter. Also, less sample points are obtained withrespect to the ordering π π (For this example, these two tools givethe same number of sample points in each case shown in the ta-ble). Both of these are well consistent with the previous complexityanalysis. Table 5: Comparing the runtime and the number of samplepoints of the CAD computation via the perfect eliminationorderings π π and π π with different elimination tree height(βOMβ means out of memory). π π π π π Random Orderings8 Mathematica 12 0.32s 0.17s 18.13s 28.17s 1.87sMaple 2020 0.09s 0.04s 8.80s 5.97s 0.27s
In practice, the associated graph of a sparse polynomial system isnot necessarily a chordal graph. In this case we need to computeone of its chordal completions together with a perfect eliminationordering of that completion. Conversely, from any variable orderingone can also construct a corresponding chordal completion viathe elimination game. For the case where the associated graphis not chordal, we recommend those variable orderings for CADcomputation, which, via the elimination game, result in minimalchordal completions. The following example shows the impact ofdifferent chordal completions on the CAD computation.
Example 6.2. ([12]) Consider the following polynomial set: πΌ π ,π = (cid:216) β€ π < π , β€ π < π  π π,π π π,π + β π π,π π π + ,π ,π· π,π + π π,π β π π,π + π· π + ,π + ,π· π + ,π + πΏ π + ,π β πΏ π + ,π + π· π,π + ,π π + ,π πΏ π + ,π + β πΏ π + ,π π π,π  . In Table 6 we show the runtime and the numbers of samplepoints of the CAD computation for πΌ π ,π . Therein, the symbol β π βdenotes the number of variables and β π π β denotes the variable or-derings which, via the elimination game, result in minimal chordalcompletions of the associated graph of πΌ π ,π . We know that eachof these variable orderings is a perfect elimination ordering of thecorresponding completion. The symbol β π π π£ β denotes the variableorderings given by the Maple command βSuggestVariableOrderβwhile β π π β denotes some of the random variable orderings. Theletter β π‘ β denotes the runtime of the command βPartialCylindri-calAlgebraicDecompositionβ for the polynomial (cid:206) πΌ π ,π in Maple2020, while β π β denotes the number of sample points. The num-ber π is defined by π = β | πΊ |/| Β― πΊ | with | πΊ | the number of theedges of the associated graph and | Β― πΊ | the number of the edges ofits chordal completion obtained by playing the elimination game SSAC β21, July 18β22, 2021, Saint Petersburg, Russia Haokun Li, Bican Xia, Huiying Zhang, and Tao Zheng via the corresponding variable ordering in the table. The number π characterizes the difference between the associated graph and itschordal completion. Table 6: The CAD computation via different variable order-ings resulting different chordal completions. ( π , π ) π π π π π π£ π π (1,1) 8 π‘ π π
288 864 1153 864(2,1) 14 π‘ π π π‘ π π π is, the faster the computation may be done. In otherwords, a variable ordering could be better for the CAD projectionif the difference between the corresponding chordal completionand the original associated graph is smaller. On the other hand, therelations between the number of sample points and π seem not easyto grasp. One thing is clear that, for this example, the numbers ofsample points obtained in the cases with smaller π are less thanor equal to the ones obtained in the other cases with bigger π . Asomewhat surprising fact is that, when π = , the number ofsample points keeps unchanged under several different variableorderings. In this paper, we indicate for the first time that classical CAD pro-jection algorithms preserve the chordal structure of a polynomialset, if the projection process is done in accordance with a perfectelimination ordering. More importantly, we provide a complexityanalysis for the CAD algorithms executed with respect to a per-fect elimination ordering by giving a new ( π, π ) -property whichcharacterizes the βsizeβ of the corresponding full set of projectionpolynomials. Combining these theoretical results with the experi-ments, we find that: (i) When the polynomial set is sparse and ofthe chordal structure, it can be better to compute the CAD via theperfect elimination orderings which result in perfect eliminationtrees of the minimal height. (ii) When the polynomial set is not ofthe chordal structure but still nearly chordal (and also sparse), itcould be better to use the variable orderings that result in minimalchordal completions of the original system. The core idea is thatwe use the perfect elimination ordering during the computation sothat the sparsity embedded in the (nearly) chordal structure canpass from the original polynomial set to all the successive polyno-mial sets produced later on. Both the complexity analysis and theexperimental results show that this idea really helps reduce the sizeof the full set of projection polynomials in many cases. ACKNOWLEDGMENTS
The work has been supported by the NSFC under grant No. 61732001.
REFERENCES [1] A. Berry, J. R. S. Blair, P. Heggernes, and B. W. Peyton. 2004. Maximum CardinalitySearch for Computing Minimal Triangulations of Graphs.
Algorithmica
39, 4(2004), 287β298.[2] J. R. S. Blair and B. Peyton. 1993. An Introduction to Chordal Graphs and CliqueTrees. In
Graph Theory and Sparse Matrix Computation . Springer New York, 1β29.[3] R. Bradford, J.H. Davenport, M. England, and D. Wilson. 2013. OptimisingProblem Formulation for Cylindrical Algebraic Decomposition. In
InternationalConference on Intelligent Computer Mathematics . Springer, 19β34.[4] R. J. Bradford, J. H. Davenport, M. England, S. McCallum, and D. J. Wilson. 2016.Truth Table Invariant Cylindrical Algebraic Decomposition.
Journal of SymbolicComputation
76 (2016), 1β35.[5] C. W. Brown. 2001. Improved Projection for Cylindrical Algebraic Decomposition.
Journal of Symbolic Computation
32, 5 (2001), 447β465.[6] C. W. Brown. 2004. Companion to the Tutorial: Cylindrical Algebraic Decompo-sition.
Presented at ISSACβ04 (2004).[7] C. W. Brown. 2015. Open Non-Uniform Cylindrical Algebraic Decompositions.In
Proc. ISSACβ15 . ACM Press, 85β92.[8] C. Chen. 2020. Chordality Preserving Incremental Triangular Decompositionand Its Implementation. In
ICMSβ20 . Springer, 27β36.[9] C. Chen, M. Moreno Maza, B. Xia, and L. Yang. 2009. Computing CylindricalAlgebraic Decomposition via Triangular Decomposition. In
Proc. ISSACβ09 . ACMPress, 95β102.[10] C. Chen, Z. Zhu, and H. Chi. 2020. Variable Ordering Selection for Cylindrical Al-gebraic Decomposition with Artificial Neural Networks. In
International Congresson Mathematical Software . Springer, 281β291.[11] D. Cifuentes and P. A. Parrilo. 2016. Exploiting Chordal Structure in PolynomialIdeals: A GrΓΆbner Bases Approach.
SIAM Journal on Discrete Mathematics
30, 3(2016), 1534β1570.[12] D. Cifuentes and P. A. Parrilo. 2017. Chordal Networks of Polynomial Ideals.
SIAM Journal on Applied Algebra and Geometry
1, 1 (2017), 73β110.[13] G. E. Collins. 1975. Quantifier Elimination for Real Closed Fields by CylindricalAlgebraic Decomposition. In
Automata Theory and Formal Languages, 2nd GIConference, Kaiserslautern, May 20-23, 1975 (Lecture Notes in Computer Science,Vol. 33) , H. Barkhage (Ed.). Springer, 134β183.[14] G. E. Collins and H. Hong. 1991. Partial Cylindrical Algebraic Decomposition forQuantifier Elimination.
Journal of Symbolic Computation
12, 3 (1991), 299β328.[15] P. Diaconis, D. Eisenbud, and B. Sturmfels. 1998.
Lattice Walks and PrimaryDecomposition . BirkhΓ€user Boston, 173β193.[16] A. Dolzmann, A. Seidl, and T. Sturm. 2004. Efficient Projection Orders for CAD.In
Proc. ISSACβ04 . ACM Press, 111β118.[17] M. England and D. Florescu. 2019. Comparing Machine Learning Models toChoose the Variable Ordering for Cylindrical Algebraic Decomposition. In
Inter-national Conference on Intelligent Computer Mathematics . Springer, 93β108.[18] J. Han, L. Dai, H. Hong, and B. Xia. 2017. Open Weak CAD and Its Applications.
Journal of Symbolic Computation
80 (2017), 785β816.[19] J. Han, Z. Jin, and B. Xia. 2016. Proving Inequalities and Solving Global Optimiza-tion Problems via Simplified CAD Projection.
Journal of Symbolic Computation
72 (2016), 206β230.[20] H. Hong. 1990. An Improvement of the Projection Operator in CylindricalAlgebraic Decomposition. In
Proc. ISSACβ1990 . ACM Press, 261β264.[21] H. Hong. 1990.
Improvements in CAD-Based Quantifier Elimination . Ph.D. Disser-tation. The Ohio State University.[22] H. Hong and M. Safey El Din. 2012. Variant Quantifier Elimination.
Journal ofSymbolic Computation
47, 7 (2012), 883β901.[23] Z. Huang, M. England, D. Wilson, J. H. Davenport, L.C. Paulson, and J. Bridge.2014. Applying Machine Learning to the Problem of Choosing a Heuristic to Selectthe Variable Ordering for Cylindrical Algebraic Decomposition. In
InternationalConference on Intelligent Computer Mathematics . Springer, 92β107.[24] S. McCallum. 1985.
An Improved Projection Operation for Cylindrical AlgebraicDecomposition . Ph.D. Dissertation. University of Wisconsin-Madison.[25] S. McCallum. 1988. An Improved Projection Operation for Cylindrical AlgebraicDecomposition of Three-Dimensional Space.
Journal Symbolic Computation
Quantifier Elimination and Cylindrical Algebraic Decomposition .Springer, 242β268.[27] C. Mou, Y. Bai, and J. Lai. 2019. Chordal Graphs in Triangular Decomposition inTop-Down Style.
Journal of Symbolic Computation
102 (2019), 108β131.[28] C. Mou and J. Lai. 2019. On the Chordality of Simple Decomposition in Top-Down Style. In
International Conference on Mathematical Aspects of Computerand Information Sciences . Springer, 138β152.[29] S. Parter. 1961. The Use of Linear Graphs in Gauss Elimination.
SIAM Review
Journal of Symbolic Computation
41, 9 (2006), 1021β1038. hoosing the Variable Ordering for Cylindrical Algebraic Decomposition via Exploiting Chordal Structure ISSAC β21, July 18β22, 2021, Saint Petersburg, Russia [31] A. W. StrzeboΕski. 2016. Cylindrical Algebraic Decomposition Using LocalProjections.
Journal of Symbolic Computation
76 (2016), 36β64. [32] L. Yang, X. Hou, and B. Xia. 2001. A Complete Algorithm for Automated Discover-ing of a Class of Inequality-Type Theorems.