Hierarchical Comprehensive Triangular Decomposition
aa r X i v : . [ c s . S C ] J un Hierarchical Comprehensive TriangularDecomposition ⋆ Zhenghong Chen, Xiaoxian Tang, and Bican Xia
School of Mathematical Sciences, Peking University, China [email protected], [email protected], [email protected]
Abstract.
The concept of comprehensive triangular decomposition (CTD)was first introduced by Chen et al. in their CASC’2007 paper and couldbe viewed as an analogue of comprehensive Gr¨obner systems for paramet-ric polynomial systems. The first complete algorithm for computing CTDwas also proposed in that paper and implemented in the
RegularChains library in Maple. Following our previous work on generic regular decom-position for parametric polynomial systems, we introduce in this paper aso-called hierarchical strategy for computing CTDs. Roughly speaking,for a given parametric system, the parametric space is divided into sev-eral sub-spaces of different dimensions and we compute CTDs over thosesub-spaces one by one. So, it is possible that, for some benchmarks, itis difficult to compute CTDs in reasonable time while this strategy canobtain some “partial” solutions over some parametric sub-spaces. Theprogram based on this strategy has been tested on a number of bench-marks from the literature. Experimental results on these benchmarkswith comparison to
RegularChains are reported and may be valuablefor developing more efficient triangularization tools.
Keywords:
Comprehensive triangular decomposition, regular chain, hi-erarchical, generic regular decomposition, parametric polynomial system.
Solving parametric polynomial system plays a key role in many areas such as au-tomated geometry theorem deduction, stability analysis of dynamical systems,robotics and so on. For an arbitrary parametric system, in symbolic computation,solving this system is to convert equivalently the parametric system into new sys-tems with special structures so that it is easier to analyze or solve the solutionsto the new systems. There are two main kinds of symbolic methods to solve para-metric systems, i.e. , the algorithms based on
Gr¨obner bases [12,14,15,16,17,23]and those based on triangular decompositions [1,2,5,9,11,13,19,20,24,25,26,27].The methods based on triangular decompositions have been studied by manyresearchers since Wu’s work [24] on characteristic sets . A significant concept inthe theories of triangular sets is regular chain (or normal chain ) introduced ⋆ The work was supported by National Science Foundation of China (Grants 11290141and 11271034). Chen-Tang-Xia by Yang and Zhang [27] and Kalkbrener [11] independently. Gao and Chouproposed a method in [9] for identifying all parametric values for which a givensystem has solutions and giving the solutions by p − chains without a partitionof the parameter space. Wang generalized the concept of regular chain to regularsystem and gave an efficient algorithm for computing it [20,21,22]. It should benoticed that, due to their strong projection property, the regular systems orseries may also be used as representations for parametric systems. Chen et. al. introduced the concept of comprehensive triangular decomposition (CTD) [5] tosolve parametric systems, which could be viewed as an analogue of comprehensiveGr¨obner systems. Algorithm CTD for computing CTD was also proposed in [5].There are several implementations based on the above triangularization meth-ods, such as
Epsilon [22],
RegularChains [6] and wsolve [19].Suppose P ⊂ Q [ U ][ X ] is a parametric polynomial system where X = ( x , . . . ,x n ) are variables and U = ( u , . . . , u d ) are parameters. The above mentionedalgorithms all solve the system in C d + n directly. That means all the unknowns( U and X ) are viewed as variables and triangular decompositions are computedover Q . It may happen that no triangular decompositions over Q can be obtainedin a reasonable time for some systems while a triangular decomposition over Q [ U ]is much easier to be computed.Based on this observation, we propose a strategy which computes CTDs forgiven parametric systems hierarchically and the CTDs are called hierarchicalcomprehensive triangular decompositions (HCTD). By “hierarchical” we meanthat, roughly speaking, a generic regular decomposition is computed first over Q [ U ] and a parametric polynomial B ( U ) is obtained at the same time such thatthe solutions to the original system in C d + n can be expressed as the union of solu-tions to those regular systems in the decomposition provided that the parametervalues satisfying B ( U ) = 0. Then, by applying similar procedure recursively, thesolutions satisfying B ( U ) = 0 are obtained through adding B ( U ) = 0 to the sys-tem and treating some parameters as variables. We give an algorithm based onthis hierarchical strategy which computes CTDs for given parametric systems.The algorithm has been implemented with Maple and tested on a number ofbenchmarks from the literature. Experimental results on these benchmarks withcomparison to RegularChains are reported (see Tables 2) and may be valuablefor developing more efficient triangularization tools. For some benchmarks, itis difficult to compute CTDs in reasonable time while our program can output“partial solutions” (see Table 4).The rest part of this extended abstract is organized as follows. Section 2 in-troduces an algorithm, Algorithm
HCTD , for computing CTDs hierarchically andan example is illustrated there. Section 3 compares the Algorithm
HCTD and theAlgrotihm
CTD in [5] by experiments. Section 4 introduces another hierarchicalstrategy for computing CTD and the comparing experiments are also shown.Section 5 shows the benefit of the hierarchical strategy by experiments. ierarchical CTD 3
HCTD
For the concepts and notations without definitions, please see [2,21,6].Suppose T is a regular chain in Q [ U ][ X ] and H ⊂ Q [ U ][ X ]. [ T , H ] is saidto be a regular system [5] if res( H, T ) = 0 for any H ∈ H . For any B ⊂ Q [ U ],V U ( B ) denotes the set { ( a , . . . , a d ) ∈ C d | B ( a , . . . , a d ) = 0 , ∀ B ∈ B } . For any P ⊂ C [ X ], V( P ) denotes the set { ( b , . . . , b n ) ∈ C n | P ( b , . . . , b n ) = 0 , ∀ P ∈ P } . For any P ⊂ Q [ U ][ X ], V( P ) denotes the set { ( a , . . . , a d , b , . . . , b n ) ∈ C d + n | P ( a , . . . , a d , b , . . . , b n ) = 0 , ∀ P ∈ P } . For D ⊂ C d + n , denote by Π U ( D )the set { ( a , . . . , a d ) ∈ C d | ( a , . . . , a d , b , . . . , b n ) ∈ D } . Suppose [ T , H ] is a reg-ular system in Q [ U ][ X ]. If H = { H } , then [ T , H ] is denoted by [ T , H ] for short.Due to page limitation, we only present the specification of an algorithm forcomputing CTDs hierarchically. Algorithm HCTDInput : a finite set P ⊂ Q [ U ][ X ], a non-negative integer m (0 ≤ m ≤ d ) output : finitely many 3-tuples [ A i , B i , T i ], a polynomial B , where – B ∈ Q [ u m +1 , . . . , u d ], A i , B i ⊂ Q [ U ] – T i is a finite set of regular systems in Q [ U ][ X ]such that – ∪ i V U ( A i \ B i ) = (cid:0) C d \ V U ( B ) (cid:1) ∩ Π U (V( P )) – for any i, j ( i = j ), V U ( A i \ B i ) ∩ V U ( A j \ B j ) = ∅ – for any i , if a ∈ V U ( A i \ B i ), then [ T ( a ) , H ( a )] is a regularsystem in C [ X ] for any [ T , H ] ∈ T i – for any i , if a ∈ V U ( A i \ B i ), thenV( P ( a )) = ∪ [ T , H ] ∈ T i V( T ( a ) \ H ( a )) . The output of
HCTD ( P , m ) is called the m -HCTD of P . Each [ A i , B i , T i ] inthe m -HCTD is called a branch . Each regular system in the set ∪ T i is calleda grape . By Algorithm HCTD , for any P , if m = 0, the output is the so-called generic regular decomposition [8] of P ; if m = d , the output is the comprehensivetriangular decomposition [5] of P . The Example 1 below shows how to get m -HCTD ( m = 0 , . . . , d ). Example 1
Consider the parametric system P = x ( x + x ) + ( u − u ) x − u x ( x + x ) + 2 u u ( x + x ) − u x + u ( u − u ) , x + 4 x ( x + x ) − u x − u x ( x + x ) + 2( u − u ) x + 2 u u , x x − u x − u x + 2 u u . where x , x are variables and u , u are parameters.1. By the Algorithm RDU in [8], we compute a set T of regular systems and apolynomial B ( u , u ) such that if B ( u , u ) = 0 , then the solution set of P = 0 is equal to the union of the solution sets of the regular systems in T . Then weobtain the -HCTD of P : [ A , B , T ] . Chen-Tang-Xia
2. Let P = P ∪ { B } . Regard { u , x , x } as the new variable set. By theAlgorithm RDU , we compute a set S of regular systems and a polynomial B ( u ) such that if B ( u , u ) = 0 and B ( u ) = 0 , then the solution set of P = 0 is equalto the union of the solution sets of the regular systems in S . For S , applying thesimilar method as the Algorithm RegSer in [20] and the Algorithms
Difference and
CTD in [6], we obtain the -HCTD of P : [ A , B , T ] , . . . , [ A , B , T ] .
3. Let P = P ∪ { B } . Regard { u , u , x , x } as the new variable set. Bythe Algorithm RDU , we compute a set of regular systems S and a polynomial B = 1 such that if B ( u , u ) = 0 , B ( u ) = 0 and B = 0 , then the solutionset of P = 0 is equal to the union of the solution sets of the regular systems in S . For S , applying the similar method as the Algorithms RegSer , Difference and
CTD , we obtain the -HCTD of P : [ A , B , T ] , . . . , [ A , B , T ] . Table 1 [ A i , B i , T i ] i A i B i T i ∅ { u u ( u − u ) } { [ {− x + 3 x u − u + u , x x + u − u x } , u ] } { u } { u } { [ {− x + u , u − x } , } { u − u } { u } { [ { x , x − u } , , [ { x − u , x + u } , } { u + u } { u } { [ { x , x − u } , , [ { x − u , x + u } , } { u } { u } { [ { x − u , x − u } , } { u , u } { } { [ { x } , , [ { x , x } , , [ { x − u , x − u } , } We have implemented the Algorithm
HCTD as a Maple function
HCTD and testeda great many benchmarks from the references [7,5,12,14]. Throughout this pa-per, all the computational results are obtained in Maple 17 using an Intel(R)Core(TM) i5 processor (3.20GHz CPU), 2.5 GB RAM and Windows 7 (32 bit).All the timings are given by seconds. The “ timeout ” mark means the time isgreater than 1000 seconds. The Table 2 compares the functions
HCTD (when m = d ) and ComprehensiveTriangularize ( CTD ) in
RegularChains .In Table 2, the column “time” lists the timings of
HCTD ( m = d ) and CTD ; thecolumn “branch” lists the numbers of branches output by
HCTD and
CTD ; andthe column “grape” lists the numbers of grapes output by
HCTD and
CTD . It isindicated by Table 2 that – for the benchmarks 3–27, HCTD runs faster than
CTD , especially, for the bench-mark 27,
CTD is timeout and
HCTD completes the computation in time; forthe benchmarks 28–40,
CTD runs faster than
HCTD , especially, for the bench-marks 38–40,
HCTD is timeout and
CTD solves the systems efficiently; for thebenchmarks 41–49, both
HCTD and
CTD are timeout; – for the benchmarks 14, 31, 32, 35 and 36, the number of branches output by HCTD is much bigger than that output by
CTD ; – for the benchmarks 6, 10, 12, 29, 30, 32, 35 and 37, the number of grapesoutput by HCTD is much bigger than that output by
CTD . ierarchical CTD 5 To compute a m -HCTD for a given parametric system, as shown by Example 1,we first take { x , . . . , x n } as variable set and then add one parameter into thevariable set at each recursive step. A different hierarchical strategy may be thatwe add a prescribed number (say s ) of parameters into the variable set at thefirst step and each recursive step.The algorithm applying this different hierarchical strategy is called HCTDA and has been implemented as a function
HCTDA . The comparing data of
HCTD and
HCTDA (for s = 1) is shown in Table 3. It is indicated by Table 3 that – for the benchmarks 3–11, HCTD runs faster than
HCTDA , especially, for thebenchmarks 10–11,
HCTDA is timeout and
HCTD completes the computationin time; for the benchmarks 12–18,
HCTDA runs faster than
HCTD , especially,for the benchmarks 19–20,
HCTD is timeout and
HCTDA completes the com-putation in time; – the difference of the numbers of branches (grapes) output by HCTD and
HCTDA is not striking.In fact, we can input different s when calling HCTDA . For many benchmarks inTable 2, the timings of different s are similar. There are some benchmarks onwhich the timings of HCTDA differ greatly for different s . Due to page limitation,we do not report the timings here. We see that the benchmarks 41–49 in Table 2 are timeout when using both
CTD and
HCTD ( m = d ). In fact, for some polynomial systems from practical areas,the complexity of computing comprehensive triangular decomposition is waybeyond current computing capabilities. However for these systems (especiallythe systems with many parameters), we may try to compute the m -HCTD for m = 0 , . . . , d −
1. In this way, although we cannot solve the system completely,we may still get partial solutions.We have tried the timeout benchmarks 41-49 in Table 2. The experimentalresults are shown in Table 4, where the columns “ m = 0”, “ m = 1”, “ m = 2”,“ m = 3” and “ m = 4” denote the timings of calling Algorithm HCTD for m =0 , , , ,
4; and the “ error ” mark means Maple returns an error message andstops computing. It is seen from the Table 4 that – for all the benchmarks, we successfully get partial solutions; – for most of the benchmarks, such as the benchmark 1 and benchmarks 3–7,we get results only when m = 0. Table 2
Comparing
HCTD and
CTD
Chen-Tang-Xia benchmark d n time branch grape
HCTD CTD HCTD CTD HCTD CTD MontesS2
MontesS4 F8 Hereman-2
MontesS3
MontesS5
MontesS6
MontesS7
MontesS8
MontesS12
MontesS13
MontesS14
MontesS15
MontesS16
Bronstein
AlkashiSinus
Lanconelli zhou1 zhou2 zhou6
SBCD13
SBCD23 F2 F3 F5 F7 S2 timeout
150 9228.
MontesS9
MontesS10
MontesS11 F4 zhou5 F6 MontesS1
Hereman-8-8 S3 Maclane S1 timeout Neural timeout
Gerdt timeout
Lazard-ascm2001 timeout timeout
Leykin-1 timeout timeout
Cheaters-homotopy-easy timeout timeout
Cheaters-homotopy-hard timeout timeout
Lazard-ascm2001 timeout timeout
MontesS18 timeout timeout
Pavelle timeout timeout p3p timeout timeout z3 timeout timeout ierarchical CTD 7 Table 3
Comparing
HCTD and
HCTDA (for s = 1 )benchmark d n time branch grape HCTD HCTDA HCTD HCTDA HCTD HCTDA MontesS5 zhou1
MontesS9
MontesS11
MontesS12
AlkashiSinus
Bronstein
MontesS7
SBCD13 F6 timeout
13 1111. S2 timeout
150 9212.
Maclane
SBCD23 F4 MontesS15 F8 MontesS16 S3 Neural timeout
Gerdt timeout
Table 4
Timings of m -HCTD for different m benchmark d n time m = 0 m = 1 m = 2 m = 3 m = 4 Lazard-ascm2001 timeout Leykin-1 timeout Cheaters-homotopy-easy timeout Cheaters-homotopy-hard timeout Lazard-ascm2001 timeout MontesS18 timeout Pavelle timeout p3p timeout z3 error References
1. P. Alvandi, C. Chen, M. Moreno Maza: Computing the limit points of the quasi-component of a regular chain in dimension one.
Computer Algebra in ScientificComputing , 30–45, 2013.2. P. Aubry, D. Lazard, M. Moreno Maza: On the theories of triangular sets.
J. Symb.Comp. , : 105–124, 1999.3. C. Chen, J. Davenport, J. P. May, M. Moreno Maza, B. Xia, R. Xiao: Triangulardecomposition of semi-algebraic systems. Proc. ISSAC , 187–194, 2010.4. C. Chen, J. Davenport, M. Moreno Maza, B. Xia, R. Xiao: Computing with semi-algebraic sets represented by triangular decomposition.
Proc. ISSAC , 75–82, 2011.5. C. Chen, O. Golubitsky, F. Lemaire, M. Moreno Maza, W. Pan: Comprehensivetriangular decomposition.
Proc. CASC 2007, LNCS 4770 , 73–101, 2007. Chen-Tang-Xia6. C. Chen, M. Moreno Maza: Algorithms for computing triangular decomposition ofpolynomial systems.
J. Symb. Comp. ,
47 (6) : 610–642, 20127. S.-C. Chou: Mechanical geometry theorem proving.
Springer , 1988.8. Z. Chen, X. Tang, B. Xia: Generic regular decompositions for parametric poly-nomial systems.
Accepted by Journal of Systems Science and Complexity , 2013.arXiv:1301.3991v1.9. X.-S. Gao, S.-C. Chou: Solving parametric algebraic systems.
Proc. ISSAC , 335–341, 1992.10. X.-S. Gao, X. Hou, J. Tang, H. Chen: Complete solution classification for theperspective-three-point problem.
Pattern Analysis and Machine Intelligence, IEEETransactions on ,
25 (8) , 930–943, 2003.11. M. Kalkbrener: A generalized euclidean algorithm for computing for computingtriangular representationa of algebraic varieties.
J. Symb. Comp. , : 143–167,1993.12. D. Kapur, Y. Sun, D. Wang: A new algorithm for computing comprehensivegr¨obner systems. Proc. ISSAC , 25–28, 2010.13. M. Moreno Maza: On triangular decompositions of algebraic varieties.
TechnicalReport TR 4/99, NAG Ltd, Oxford, UK , 1999.14. A. Montes, T. Recio: Automatic discovery of geometry theorems using minimalcanonical comprehensive Gr¨obner systems.
ADG 2006, LNAI 4869 , 113–138, 2007.15. K. Nabeshima: A speed-up of the algorithm for computing comprehensive gr¨obnersystems.
Proc. ISSAC , 299–306, 2007.16. A. Suzuki, Y. Sato: An alternative approach to comprehensive gr¨obner bases.
Proc.ISSAC , 255–261, 2002.17. A. Suzuki, Y. Sato: A simple algorithm to compute comprehensive gr¨obner bases.
Proc. ISSAC , 326–331, 2006.18. X. Tang, Z. Chen, B. Xia: Generic regular decompositions for generic zero-dimensional systems.
Accepted by Science China: Information Sciences , 2012. DOI:10.1007/s11432-013-5057-5.19. D. K. Wang: Zero decomposition algorithms for system of polynomial equations.
Computer Mathematics, World Scientific , 67–70, 2000.20. D. M. Wang: Computing triangular systems and regular systems.
J. Symb. Comp. , : 221–236, 2000.21. D. M. Wang: Elimination methods. Springer , 2001.22. D. M. Wang: Elimination practice: software yools and applications.
Imperial Col-lege Press , 2004.23. V. Weispfenning: Comprehensive gr¨obner bases.
J. Symb. Comp. , : 1–29, 1992.24. W.-T. Wu: Basic principles of mechanical theorem proving in elementary geome-tries (in Chinese) . Science in China Series A Mathematics , 507–516, 1977.25. L. Yang, X. Hou, B. Xia: A complete algorithm for automated discovering of aclass of inequality-type theorems.
Science in China Series F Information Sciences ,
44 (1) : 33–49, 2001.26. L. Yang, B. Xia: Automatic inequality proving and discovering (in Chinese) . Sci-ence Press , 2008.27. L. Yang, J. Zhang: Searching dependency between algebraic equations: An al-gorithm applied to automated reasoning.