An Efficient Algorithm for Computing Parametric Multivariate - - PowerPoint PPT Presentation

an efficient algorithm for computing parametric
SMART_READER_LITE
LIVE PREVIEW

An Efficient Algorithm for Computing Parametric Multivariate - - PowerPoint PPT Presentation

An Efficient Algorithm for Computing Parametric Multivariate Polynomial GCD Dong Lu Key Laboratory of Mathematics Mechanization Academy of Mathematics and Systems Science, CAS Joint work with Deepak Kapur, Michael Monagan, Yao Sun and Dingkang


slide-1
SLIDE 1

An Efficient Algorithm for Computing Parametric Multivariate Polynomial GCD

Dong Lu

Key Laboratory of Mathematics Mechanization Academy of Mathematics and Systems Science, CAS Joint work with Deepak Kapur, Michael Monagan, Yao Sun and Dingkang Wang July 16-19, 2018, The City University of New York, USA

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 1 / 28

slide-2
SLIDE 2

Outline

1 The Problem 2 Previous Works 3 The New Algorithm 4 A Simple Example 5 Implementation 6 Conclusions Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 2 / 28

slide-3
SLIDE 3

Outline

1 The Problem 2 Previous Works 3 The New Algorithm 4 A Simple Example 5 Implementation 6 Conclusions Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 3 / 28

slide-4
SLIDE 4

The Problem

Notations k is a field. e1 := (1, 0) and e2 := (0, 1). X = {x1, . . . , xn} are variables. U = {u1, . . . , um} are parameters. k[U][X] is the polynomial ring in X.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 4 / 28

slide-5
SLIDE 5

The Problem

Example 1

Let f1, f2 ∈ C[a][x, y], where

  • f1 = ax3 + (a3 − a + 1)x2y + (a2 + 2)xy2 + (3a2 − 3)y3,

f2 = ax3 + (a + 1)x2y + 4xy2 + 3y3. The results are:      when a = 0, gcd(f1, f2) = y(x + 3y); when a2 − 2 = 0, gcd(f1, f2) = 2x3 + (a + 2)x2y + 4axy2 + 3ay3; when a(a2 − 2) = 0, gcd(f1, f2) = ax2 + xy + 3y2.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 5 / 28

slide-6
SLIDE 6

The Problem

Problem: For any given parametric polynomials f1, f2, . . . , fs in k[U][X], how to divide the parametric space and obtain the corresponding GCD on each branch quickly?

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 6 / 28

slide-7
SLIDE 7

Outline

1 The Problem 2 Previous Works 3 The New Algorithm 4 A Simple Example 5 Implementation 6 Conclusions Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 7 / 28

slide-8
SLIDE 8

Previous Works

  • Non-parametric polynomials case
  • J. Moses and D.Y.Y. Yun: The EZ GCD algorithm. In Proceedings of ACM’ 73,

ACM Press, New York, 1973, 159-166. (Hensel lifting)

  • R. Zippel: Probabilistic algorithms for sparse polynomials. In Proceedings of

EUROSAM’ 79, Springer-Verlag, 1979, 216-226. (sparse interpolation)

  • P. Gianni and B. Trager: GCDs and factoring multivariate polynomials using

Gr¨

  • bner bases. In Proceedings of EUROCAL’ 85, Springer, Berlin, Heidelberg,

1985, 409-410. (Gr¨

  • bner basis)
  • T. Sasaki and M. Suzuki: Three new algorithms for multivariate polynomial GCD.

Journal of Symbolic Computation, 1992, 395-411. (Gr¨

  • bner basis)

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 8 / 28

slide-9
SLIDE 9

Previous Works

  • Parametric polynomials case

S.A. Abramov and K.Y. Kvashenko: On the greatest common divisor of polynomials which depend on a parameter. In Proceedings of ISSAC 1993, 152-156. (subresultant chain)

  • A. Ayad: Complexity of algorithms for computing greatest common divisors of

parametric univariate polynomials. International Journal of Algebra, 2010, 173-188. (Gaussian elimination)

  • K. Nagasaka: Parametric greatest common divisors using comprehensive Gr¨
  • bner
  • systems. In Proceedings of ISSAC 2017, 341-348. (extended the ideas of Gianni

and Trager as well as Sasaki and Suzuki)

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 9 / 28

slide-10
SLIDE 10

Outline

1 The Problem 2 Previous Works 3 The New Algorithm 4 A Simple Example 5 Implementation 6 Conclusions Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 10 / 28

slide-11
SLIDE 11

The New Algorithm

  • Non-parametric polynomials case

Definition 1

Let I ⊂ k[X] be an ideal and g ∈ k[X] \ {0}. The set I : g = {f ∈ k[X] : fg ∈ I} is called the quotient ideal (or colon ideal) of I divided by g.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 11 / 28

slide-12
SLIDE 12

The New Algorithm

  • Non-parametric polynomials case

Definition 1

Let I ⊂ k[X] be an ideal and g ∈ k[X] \ {0}. The set I : g = {f ∈ k[X] : fg ∈ I} is called the quotient ideal (or colon ideal) of I divided by g.

Example 2

In k[x, y, z], let I = xy and g = xz. Then I : g = {f : xzf ∈ xy} = {f : zf ∈ y} = y.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 11 / 28

slide-13
SLIDE 13

The New Algorithm

Lemma 1

Let f1, f2 ∈ k[X] \ {0}, then f1 : f2 is a principal ideal. Suppose that f1 : f2 = f , then we have gcd(f1, f2) = f1 f .

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 12 / 28

slide-14
SLIDE 14

The New Algorithm

Lemma 1

Let f1, f2 ∈ k[X] \ {0}, then f1 : f2 is a principal ideal. Suppose that f1 : f2 = f , then we have gcd(f1, f2) = f1 f .

Example 3

Let f1 = xy and f2 = xz. According to the Example 2, we have that xy : xz = y. Then gcd(f1, f2) = f1/f = x.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 12 / 28

slide-15
SLIDE 15

The New Algorithm

Problem: How to compute the generator of f1 : f2?

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 13 / 28

slide-16
SLIDE 16

The New Algorithm

Problem: How to compute the generator of f1 : f2? ◮ Original Method

Lemma 2

Let f1, f2 ∈ k[X] \ {0} and w be a new variable, then wf1, (w − 1)f2 ∩ k[X] = g for some g ∈ k[X] \ {0}. Moreover, we have f1 : f2 = g

f2 and

gcd(f1, f2) = f1f2

g .

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 13 / 28

slide-17
SLIDE 17

The New Algorithm

◮ New Method

Lemma 3

Let f1, f2 ∈ k[X] \ {0} and ≺ be a monomial order on k[X]2 with e2 ≺ e1. Suppose G is a minimal Gr¨

  • bner basis of f1 · e1, f2 · e1 − e2.

Then there is a unique f ∈ k[X] \ {0} such that f · e2 ∈ G and f1 : f2 = f . Therefore, gcd(f1, f2) = f1

f .

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 14 / 28

slide-18
SLIDE 18

The New Algorithm

◮ New Method

Lemma 3

Let f1, f2 ∈ k[X] \ {0} and ≺ be a monomial order on k[X]2 with e2 ≺ e1. Suppose G is a minimal Gr¨

  • bner basis of f1 · e1, f2 · e1 − e2.

Then there is a unique f ∈ k[X] \ {0} such that f · e2 ∈ G and f1 : f2 = f . Therefore, gcd(f1, f2) = f1

f .

Example 4

Let f1 = xy, f2 = xz. Given the lexicographic order ≺ and extend it to k[X]2 in a position over term with e2 ≺ e1. A minimal Gr¨

  • bner basis of

xy · e1, xz · e1 − e2 is G = {y · e2, xy · e1, xz · e1 − e2}. So, f = y and xy : xz = y. Moreover, gcd(xy, xz) = f1/f = x.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 14 / 28

slide-19
SLIDE 19

The New Algorithm

  • Parametric polynomials case

Theorem 1

Let f1, f2 ∈ k[U][X] and ≺ be a monomial order on k[X]2 with e2 ≺ e1. Suppose {(Ai, Gi)}l

i=1 is a minimal comprehensive Gr¨

  • bner system of

f1 · e1, f2 · e1 − e2. For each branch (Ai, Gi), let Hi = {f | f · e2 ∈ Gi}. Then we have

1 If Hi = ∅, then f1 = 0 and gcd(f1, f2) = f2 on Ai. 2 If Hi = ∅, then Hi = {f } and gcd(f1, f2) = f1

f on Ai.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 15 / 28

slide-20
SLIDE 20

The New Algorithm

◮ Parametric GCD Algorithm

Input: f1, f2 ∈ k[U][X], a constructible set A ⊂ ¯ km, and two monomial orders ≺X, ≺U. Output: a comprehensive GCDs: {(Ai, hi)}s

i=1, where hi = gcd(f1, f2) under any

specialization from Ai and ∪s

i=1Ai = A.

Step 1: compute a minimal comprehensive Gr¨

  • bner system {(Ai, Gi)}s

i=1 for the module

f1 · e1, f2 · e1 − e2 on A. Step 2: For every i, let Hi = {h | h · e2 ∈ Gi}, then do Step 2.1: if Hi is empty, then hi = f2 on Ai and turn to Step 2;

  • therwise, turn to Step 2.2.

Step 2.2: hi = f1/h on Ai. Step 3: return {(Ai, hi)}s

i=1. Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 16 / 28

slide-21
SLIDE 21

Outline

1 The Problem 2 Previous Works 3 The New Algorithm 4 A Simple Example 5 Implementation 6 Conclusions Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 17 / 28

slide-22
SLIDE 22

A Simple Example

Example 5

Let f1, f2, f3 ∈ C[a, b][x, y, z] be as follows:    f1 = ax2 + bxy + a2xz + abx + abyz + b2y, f2 = ax2 + bxy + (ab − a)xz − a2x + (b2 − b)yz − aby, f3 = ax2 + bxy + a2xz + (a2 − ab)x + abyz + (ab − b2)y, Using the new algorithm to compute the GCDs of f1, f2, f3.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 18 / 28

slide-23
SLIDE 23

A Simple Example

Monomial order: ≺X and ≺U are all lexicographic orders with x > y > z and a > b, respectively. We extend ≺X to k[X]2 in a position over term with e2 ≺X e1.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 19 / 28

slide-24
SLIDE 24

A Simple Example

Monomial order: ≺X and ≺U are all lexicographic orders with x > y > z and a > b, respectively. We extend ≺X to k[X]2 in a position over term with e2 ≺X e1. Step 1: Compute a minimal comprehensive Gr¨

  • bner system (CGS)

G0 of f1 · e1, f2 · e1 − e2, and get six branches {(Ai, Gi)}6

i=1.

The first branch of G0 is (A1, G1), where A1 = V(0) \ V(a3 − a2b + a2), G1 = {f1 · e1, (x + az + b) · e2, ((a2 − ab + a)xz+ (a2 + ab)x + (ab − b2 + b)yz + (ab + b2)y) · e1 + e2}. Then, H1 = {x + az + b | (x + az + b) · e2 ∈ G1} and the GCD of f1 and f2 on A1 is h1 = f1/(x + az + b) = ax + by.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 19 / 28

slide-25
SLIDE 25

A Simple Example

Similarly, the GCDs of f1 and f2 on other five branches are: (A2, h2) = (V(a − b + 1) \ V(2b2 − 3b + 1), (b − 1)x + by), (A3, h3) = (V(a, b − 1), y), (A4, h4) = (V(2a + 1, 2b − 1) \ V(b − 1), − 1

2x2 + 1 2xy + 1 4xz − 1 4x − 1 4yz + 1 4y),

(A5, h5) = (V(a, b), 0), (A6, h6) = (V(a) \ V(ab3 − ab2 − b4 + 2b3 − b2), by).

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 20 / 28

slide-26
SLIDE 26

A Simple Example

Step 2: For A1, compute the GCD of h1 and f3. A minimal CGS G1 of h1 · e1, f3 · e1 − e2 on A1 has one branch: (A1, G11) = (V(0) \ V(a3 − a2b + a2), {e2, h1 · e1}). Then H11 = {1} and the GCD of h1 and f3 on A1 is h11 = h1/1 = ax + by. So, the GCD of f1, f2, f3 on A1 is gcd(f1, f2, f3) = ax + by.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 21 / 28

slide-27
SLIDE 27

A Simple Example

Similarly, we can compute the GCD of hi and f3 on Ai, where i = 2, . . . , 6. Then the parametric GCDs of {f1, f2, f3} are                (V(0) \ V(a3 − a2b + a2), ax + by), (V(a − b + 1) \ V(2b2 − 3b + 1), (b − 1)x + by), (V(a, b − 1), y), (V(2a + 1, 2b − 1) \ V(b − 1), −x + y), (V(a, b), 0), (V(a) \ V(ab3 − ab2 − b4 + 2b3 − b2), by).

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 22 / 28

slide-28
SLIDE 28

Outline

1 The Problem 2 Previous Works 3 The New Algorithm 4 A Simple Example 5 Implementation 6 Conclusions Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 23 / 28

slide-29
SLIDE 29

Implementation

The new algorithm and two algorithms proposed by Nagasaka have been implemented in the Singular. More comparative examples can be generated by the codes at: http://www.mmrc.iss.ac.cn/~dwang/software.html. The experimental data was obtained on a Core i7-4790 3.60GHz with 4GB Memory running Windows 7.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 24 / 28

slide-30
SLIDE 30

Implementation

Table: Timings(sec.)

Ex. New NGT NSS 1 0.640 2.062 0.809 2 1.023 47.210 19.680 3 0.836 6.730 4.125 4 0.597 > 1h 12.736 5 2.475 10.760 4.108 6 2.426 > 1h 21.558 7 6.419 > 1h > 1h 8 5.286 > 1h 37.172 9 15.351 > 1h 98.744 10 10.011 > 1h > 1h

NGT: K. Nagasaka, P. Gianni and B. Trager. NSS: K. Nagasaka, T. Sasaki and M. Suzuki.

  • K. Nagasaka: Parametric greatest common divisors using comprehensive Gr¨
  • bner systems, in Proceedings of ISSAC

2017, 341-348. July 25-28, Kaiserslautern Germany. Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 25 / 28

slide-31
SLIDE 31

Outline

1 The Problem 2 Previous Works 3 The New Algorithm 4 A Simple Example 5 Implementation 6 Conclusions Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 26 / 28

slide-32
SLIDE 32

Conclusions

1 We compute the GCDs of parametric polynomials by using quotient

ideal and comprehensive Gr¨

  • bner system of a module.

2 Our method does not need to compute the primitive part of

parametric polynomials with respect to main variable.

3 Without any knowledge of f1 or f2 being zero or not on different

branch, the GCDs of f1 and f2 can be obtained from the minimal comprehensive Gr¨

  • bner system of f1 · e1, f2 · e1 − e2.

4 When we compute the GCDs of more than two parametric

polynomials, the results can be obtained iteratively.

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 27 / 28

slide-33
SLIDE 33

Thanks for your attention!

Dong Lu (KLMM, AMSS, CAS) Algorithm for Computing Parametric GCD July 16-19, CUNY, New York 28 / 28