arXiv:1007.1836v1 [math.AC] 12 Jul 2010 [] 2,[],tesnua au eopsto SD fteSletrm Sylvester the sequence of (SVD) remainder appr decomposition value various polynomial singular with the the [3]), studied on [2], a extensively ([1], method possible, been Euclidean as has the small including problem as This perturbations GCD. the the making with inputs, original degree of GCD a ie aro oyoil n degree a and such polynomials polynomials, of univariate pair of given (GCD) divisor which common to greatest mate those especially problems, applicable. of not range fact were wide algorithms common meaningfu more algebraic a a to as a algorithms applicable such algebraic seek be approximate input, inputs, characteristic, the this the of By degree. on property desired changes a reflect such minimal n errors that with floating-point practical with more then, or polynomials errors, errors, as rounding Th such with recently. “noise” coefficients attentions some of with range inputs take broad attracting approximat matrices, are and algorithms polynomials on computations algebraic For Introduction 1 PC,a trtv ehdfrCalculating for Method Iterative an GPGCD, sa prxmt leri loih,w osdrcluaigteap the calculating consider we algorithm, algebraic approximate an As prxmt C,frMlil Univariate Multiple for GCD, Approximate oyoil ihtera offiinsa ninput. an as mo coefficients accept real to the method with our extend polynomials we searchi paper, by this method, which In iteratively. gradient-projection method, Newton the modified of proble so-called eralization the the minimizati method, with constrained solved GPGCD a then to our transferred In is perturbations GCD. GCD the approximate the making with poly inputs, along pe of original are possible, pair the coefficients whose in a and degree those finds given from algorithm the of our GCD a degree, has which a Fo and inputs. polynomials polynomial of multiple diviso to common polynomials, greatest univariate approximate calculating for method Abstract. epeeta xeso forGGDmto,a iterative an method, GPGCD our of extension an present We rdaeSho fPr n ple Sciences Applied and Pure of School Graduate d n hs offiinsaeprubtosfo hs nthe in those from perturbations are coefficients whose and [email protected] skb,3587,Japan 305-8571, Tsukuba, nvriyo Tsukuba of University Polynomials kr Terui Akira d nigapi fplnmaswihhas which polynomials of pair a finding , gtesolution the ng ie pair given a r nproblem, on GD of (GCD) r eta two than re ssalas small as measurement s s algorithms ese sagen- a is eepce to expected re nomials rturbed ro given a of or of m algebraic e ht o a for that, ogwith long ti ([4], atrix answer l oaches umber (PRS) proxi- exact [5]), the QR factorization of the Sylvester matrix or its displacements ([6], [7], [8]), Pad´eapproximation [9], optimization strategies ([10], [11], [12], [13], [14]). Furthermore, stable methods for ill-conditioned problems have been discussed ([6], [15], [16]). Among methods in the above, we focus our attention on optimization strate- gies. Already proposed algorithms utilize iterative methods including the Levenberg- Marquardt method [10], the Gauss-Newton method [14] and the structured total least norm (STLN) method ([11], [12]). Among them, STLN-based methods have shown good performance calculating approximate GCD with sufficiently small perturbations efficiently. In this paper, we discuss an extension of the GPGCD method, proposed by the present author ([17], [21]), an iterative method with transferring the original approximate GCD problem into a constrained optimization problem, then solv- ing it by the so-called modified Newton method [18], which is a generalization of the gradient-projection method [19]. In the previous papers ([17], [21]), we have shown that our method calculates approximate GCD with perturbations as small as those calculated by the STLN-based methods and with significantly better efficiency than theirs. While our previous methods accept two polynomials with the real or the complex coefficients as inputs and outputs, respectively, we extend it to handle more than two polynomial inputs with the real coefficients in this paper. The rest part of the paper is organized as follows. In Section 2, we transform the approximate GCD problem into a constrained minimization problem for the case with the complex coefficients. In Section 3, we show details for calculating the approximate GCD, with discussing issues in minimizations. In Section 4, we demonstrate performance of our algorithm with experiments.
2 Formulation of the Approximate GCD Problem
Let P1(x),...,Pn(x) be real univariate polynomials of degree d1,...,dn, respec- tively, given as
(i) di (i) (i) Pi(x)= pdi x + ··· p1 x + p0 , for i = 1,...,n, with min{d1,...,dn} > 0. We permit Pi and Pj be relatively prime for any i 6= j in general. For a given integer d satisfying min{d1,...,dn} > d> 0, let us calculate a deformation of P1(x),...,Pn(x) in the form of
P˜i(x)= Pi(x)+ ∆Pi(x)= H(x) · P¯i(x), where ∆Pi(x) is a real polynomial whose degrees do not exceed di, respec- tively, H(x) is a polynomial of degree d, and P¯i(x) and P¯j (x) are pairwise rel- atively prime for any i 6= j. In this situation, H(x) is an approximate GCD of 2 2 P1(x),...,Pn(x). For a given d, we try to minimize k∆P1(x)k2 +···+k∆Pn(x)k2, the norm of the deformations.
2 n 0 For a real univariate polynomial P (x) represented as P (x)= pnx +···+p0x , let Ck(P ) be a real (n + k, k + 1) matrix defined as
pn . .. . . C (P )= p p , k 0 n . . .. . p 0 k+1 and let p be the coefficient vector of P (|x) defined{z } as
p = (pn,...,p0). (1) In this paper, for a generalized Sylvester matrix, we use a formulation by Rupprecht [20, Sect. 3]. Then, a generalized Sylvester matrix for P1,...,Pn becomes as
Cd1−1(P2) Cd2−1(P1) 0 ··· 0
Cd1−1(P3) 0 Cd3−1(P1) ··· 0 N(P1,...,Pn)= . . . . , (2) . . .. . C 1 (P ) 0 ··· 0 C n (P ) d −1 n d −1 1 and the k-th subresultant matrix (with min{d1,...,dn} > k ≥ 0) is also defined similarly as
Nk(P1,...,Pn)
Cd1−1−k(P2) Cd2−1−k(P1) 0 ··· 0
Cd1−1−k(P3) 0 Cd3−1−k(P1) ··· 0 = . . . . , (3) . . .. . C 1 (P ) 0 ··· 0 C n (P ) d −1−k n d −1−k 1 with rk = d1 + d2 + ··· + dn − (n − 1)k + (n − 2)d1 (4) rows and ck = d1 + d2 + ··· + dn − n · k (5) columns. Calculation of GCD is based on the following fact.
Proposition 1 (Rupprecht [20, Proposition 3.1]). Nk(P1,...,Pn) has full rank if and only if deg(gcd(P1,...,Pn)) ≤ k.
Thus, for a given degree d, if Nd−1(P˜1,..., P˜n) is rank-deficient, then there exist real univariate polynomials U1(x),...,Un(x) of degree at most d1−d,...,dn− d, respectively, satisfying U1P˜i + UiP˜1 =0, (6)
3 for i = 2,...,n. In such a case, if Ui and Uj are pairwise relatively prime for i j H P˜1 P˜2 P˜n any 6= , then = U1 = − U2 = ··· = − Un becomes the expected GCD. Therefore, for given polynomials P1,...,Pn and a degree d, our problem is to find perturbations ∆P1,...,∆Pn along with cofactors U1,...,Un satisfying (6) 2 2 with making k∆P1(x)k2 + ··· + k∆Pn(x)k2 as small as possible. By representing P˜i(x) and Ui(x) as
˜ (i) di (i) (i) Pi(x)=˜pdi x + ··· +˜p1 x +˜p0 , (7) (i) di−d (i) (i) Ui(x)= udi−dx + ··· + u1 x + u0 , we express the objective function and the constraint as follows. For the objective 2 2 function, k∆P1(x)k2 + ··· + k∆Pn(x)k2 becomes as
n di 2 k∆P (x)k2 + ··· + k∆P (x)k2 = p˜(i) − p(i) . (8) 1 2 n 2 j j i=1 j=0 X X For the constraint, (6) becomes as t Nd−1(P˜1,..., P˜n) · (u1,..., un)= 0, (9) where ui is the coefficient vector of Ui(x) defined as in (1). Furthermore, we add another constraint for the coefficient of Ui(x) as 2 2 kU1k2 + ··· + kUnk2 =1, (10) which can be represented together with (9) as u ··· u −1 1 n · t(u ,..., u , 1) = 0, (11) N (P˜ ,..., P˜ ) 0 1 n d−1 1 n where (10) has been put on the top of (9). Note that, in (11), we have total of
d¯= d1 + ··· + dn − (n − 1)(d − 1)+(n − 2)d1 + 1 (12) equations in the coefficients of polynomials in (7) as a constraint, with the j-th row of which is expressed as gj = 0. Now, we substitute the variables (1) (1) (n) (n) (1) (1) (n) (n) (˜pd1 ,..., p˜0 ,..., p˜dn ,..., p˜0 ,ud1−d,...,u0 ,...,udn−d,...,u0 ), (13) as x = (x1,...,x2(d1+···+dn)+(2−d)n), then (8) and (11) become as
(1) 2 (1) 2 f(x) = (x1 − pd1 ) + ··· + (xd1 − p0 ) + ··· (n) 2 (n) 2 ··· + (xd1+···+dn−1+n − pdn ) + ··· + (xd1+···+dn−1+dn+n − p0 ) , (14) t g(x)= (g1(x),...,gd¯(x)) = 0, (15) respectively, where d¯ in (15) is defined as in (12). Therefore, the problem of finding an approximate GCD can be formulated as a constrained minimization problem of finding a minimizer of the objective function f(x) in (14), subject to g(x)= 0 in (15).
4 3 The Algorithm for Approximate GCD
We calculate an approximate GCD by solving the constrained minimization problem (14), (15) with the gradient projection method by Rosen [19] (whose ini- tials become the name of our GPGCD method) or the modified Newton method by Tanabe [18] (for review, see the author’s previous paper [17]). Our preceding experiments ([17, Sect. 5.1], [21, Sect. 4]) have shown that the modified Newton method was more efficient than the original gradient projection method while the both methods have shown almost the same convergence property, thus we adopt the modified Newton method in this paper. In applying the modified Newton method to the approximate GCD problem, we discuss issues in the construction of the algorithm in detail, such as
– Representation of the Jacobian matrix Jg(x) and certifying that Jg(x) has full rank (Sect. 3.1), – Setting the initial values (Sect. 3.2), – Regarding the minimization problem as the minimum distance problem (Sect. 3.3), – Calculating the actual GCD and correcting the coefficients of P˜i (Sect. 3.4), as follows.
3.1 Representation and the rank of the Jacobian Matrix
By the definition of the constraint (15), we have the Jacobian matrix Jg(x) (with the original notation of variables (13) for x) as
0 0 0 ··· 0
Cd1 (U2) Cd2 (U1) 0 ··· 0 C (U ) 0 C (U ) 0 Jg(x)= d1 3 d3 1 . . . . . . .. . C 1 (U ) 0 ··· 0 C n (U ) d n d 1 t t t t 2 · u1 2 · u2 2 · u3 ··· 2 · un
Cd1−d(P2) Cd2−d(P1) 0 ··· 0 Cd1−d(P3) 0 Cd3−d(P1) 0 , . . . . . . .. . C 1 (P ) 0 ··· 0 C n (P ) d −d n d −d 1 which can easily be constructed in every iteration. Note that the number of rows in Jg(x) is equal to d¯ in (12), which is equal to the number of constraints, while the number of columns is equal to 2(d1 + ··· + dn)+(2 − d)n, which is equal to the number of variables (see (13)). In executing iterations, we need to keep that Jg(x) has full rank: otherwise, we are unable to decide proper search direction. For this requirement, we have the following observations.
5 Proposition 2. Assume that we have deg d< min{d1,...,dn}−1 and deg Ui ≥ ∗ 1 for i = 1,...,n. Let x ∈ Vg be any feasible point satisfying (15). Then, if the corresponding polynomials do not have a GCD whose degree exceeds d, then ∗ Jg(x ) has full rank.
Proof. Let
∗ (1) (1) (n) (n) (1) (1) (n) (n) x = (˜pd1 ,..., p˜0 ,..., p˜dn ,..., p˜0 ,ud1−d,...,u0 ,...,udn−d,...,u0 ) as in (13), with its polynomial representation expressed as in (7) (note that this assumption permits the polynomials P˜i(x) to be relatively prime in general). To ∗ verify our claim, we show that we have rank(Jg(x )) = d¯= d1 + ··· + dn − (n − ∗ 1)(d − 1)+(n − 2)d1 + 1 (see (12)). Let us divide Jg(x ) into two column blocks ∗ such that Jg(x )= JL | JR , where JL and JR are expressed as