On Computing the Resultant of Generic Bivariate Polynomials Gilles Villard ISSAC, New York, July 17th, 2018
Outline of the talk Appetizer The problem New algorithm: A key ingredient A central remark
Outline of the talk Appetizer The problem New algorithm: A key ingredient A central remark
Minimal polynomial in a field extension g ( y ) = y 4 + 10 y 3 + 3 y 2 + 7 y + 4 mod 11 픸 = 햪 [ y ]/ g ( y ) α ( y ) = y 4 + 4 y 2 + 8 y + 9 ∈ 픸 α ( y ) 2 + α ( y ) + 4 = 0 Find the relation ?
Minimal polynomial in a field extension 픸 = 햪 [ y ]/ g ( y ) deg g = n α ( y ) ∈ 픸 μ ( y ) monic (and irreducible) such that μ ( α ( y )) ≡ 0 mod g ( y ) α n ( y ) + μ n − 1 α n − 1 ( y ) + … + μ 1 α ( y ) + μ 0 ≡ 0 mod g ( y ) ? Generic case: μ ( y ) = χ ( y )
Projection for saving operations: use a K- linear map : π : 햪 [ y ]/ g ( y ) → 햪
[Ly 1989] Minimal polynomial in a field extension [Rifà, Borrell 1991] [Shoup 1994] π (1), π ( α ), π ( α 2 ), …, π ( α 2 n − 1 ) 1. Compute /* The sequence is linearly generated over */ 햪 2. Compute the minimal polynomial of the sequence using e.g. a Euclidean scheme or the Berlekamp-Massey algorithm Nota. One uses the trace and Leverrier’s approach for the characteristic polynomial .
MinPoly / CharPoly μ ( α ) ≡ 0 mod g O ˜ ( n ) PowerProjections π : 픸 → 햪 π (1), π ( α ), π ( α 2 ), …, π ( α 2 n − 1 )
픸 = 햪 [ y ]/ g ( y ) ≃ 햪 n 1 1 π 2 … α 0 α 1 α 2 … α n − 1 π n − 1 ] ⋅ [ π 0 π 1 1 1 Left matrix-vector product PowerProjections π : 픸 → 햪 π (1), π ( α ), π ( α 2 ), …, π ( α 2 n − 1 )
픸 = 햪 [ y ]/ g ( y ) ≃ 햪 n h 0 1 1 h 1 ⋅ h 2 π 2 … α 0 α 1 α 2 … α n − 1 π n − 1 ] ⋅ [ π 0 π 1 ⋮ 1 h n − 1 1 Left matrix-vector product Right matrix-vector product PowerProjections Modular Composition π : 픸 → 햪 For a polynomial h π (1), π ( α ), π ( α 2 ), …, π ( α 2 n − 1 ) h ( α ) mod g ?
Transposition principle [Shoup 94] [Canny, Kaltofen, Yagati 1989] [Kaltofen 2000] O ( n ) PowerProjections Modular Composition π : 픸 → 햪 For a polynomial h π (1), π ( α ), π ( α 2 ), …, π ( α 2 n − 1 ) h ( α ) mod g ?
MinPoly / CharPoly μ ( α ) ≡ 0 mod g O ˜ ( n ) O ( n ) PowerProjections Modular Composition π : 픸 → 햪 For a polynomial h π (1), π ( α ), π ( α 2 ), …, π ( α 2 n − 1 ) h ( α ) mod g ?
Minimal polynomial in a field extension Modular MinPoly / CharPoly ⟹ Composition O ˜ ( n 2 ) operations in 햪 Baby steps / giant steps strategy [Paterson, Stockmeyer 1973] O ˜ ( n ω 2 /2 ) ⟹ O ( n 1.626 ) [Brent & Kung 1978] [Shoup 1994] n × n ) ⋅ ( n × n ) ( [Huang, Pan 1998] [Kaltofen 2000] [Bostan, Flajolet, Salvy, Schost 2006] [Le Gall, Urrutia 2018]
Improvement for generic polynomials Particular case of the resultant approach α ( y ) ∈ 픸 Multiplication endomorphism: A : u ↦ α u Characteristic polynomial 1 1 1 1 x I − A ? A det … α n − 1 α 0 α 1 α 2 α 0 α 1 α 2 … α n − 1 1 1 1 1 n × n
Outline of the talk Appetizer The problem New algorithm: A key ingredient A central remark
A ( x ) ∈ 햪 [ x ] n × n ‘’structured’’ polynomial matrix det A ( x ) ? Ex: Toeplitz, Sylvester matrix, Frobenius matrix algebra, etc.
Entries in K p , q ∈ 햪 [ x ] Sylvester matrix deg p , q = n p n q n p n − 1 p n q n − 1 q n ⋮ ⋮ ⋱ ⋮ ⋮ ⋱ ⋮ ⋮ p n ⋮ ⋮ q n ∈ 햪 2 n × 2 n S = ⋮ ⋮ p 0 p n − 1 q 0 q n − 1 p 0 ⋮ q 0 ⋮ ⋱ ⋮ ⋱ ⋮ p 0 q 0 Res( p , q ) = det S ∈ 햪 ? O ˜ ( n ) Knuth-Schönhage-Moenck recursive polynomial gcd: operations [Bini, Pan 1994] [von zur Gathen, Gerhard 1999]
Rule of thumb: Cost over Cost over 햪 Output degree ⪯ × 햪 [ x ] (Evaluation-interpolation scheme)
Entries in K[x] p , q ∈ 햪 [ x , y ] deg x = 1, deg y = n p n ( x ) q n ( x ) p n − 1 ( x ) p n ( x ) q n − 1 ( x ) q n ( x ) ⋮ ⋮ ⋱ ⋮ ⋮ ⋱ ⋮ ⋮ p n ( x ) ⋮ ⋮ q n ( x ) ∈ 햪 [ x ] 2 n × 2 n S ( x ) = ⋮ ⋮ p 0 ( x ) p n − 1 ( x ) q 0 ( x ) q n − 1 ( x ) p 0 ( x ) ⋮ q 0 ( x ) ⋮ ⋱ ⋮ ⋱ ⋮ p 0 ( x ) q 0 ( x ) det S ( x ) ? Output degree: 2 n O ˜ ( n × n ) = O ˜ ( n 2 ) operations points 2 n ⟹
? Rule of thumb: Cost over Cost over 햪 Output degree ⪯ × 햪 [ x ] (Evaluation-interpolation scheme)
[Storjohann 2003-2005] [Labahn, Neiger, Zhou 2017] Dense polynomial matrices A ( x ) ∈ 햪 [ x ] n × n Degree: d Output degree: nd Determinant in O ˜ ( n ω d ) ≪ O ˜ ( n ω × nd ) operations in 햪
[Beckermann, Labahn 1994] [Giorgi et al. 2003] Dense matrix fractions Generic case H ( x ) = R ( x ) Q ( x ) − 1 ∈ 햪 [ x ] n × n of degree d R , Q Matrix fraction reconstruction: H ( x ) = Σ i H i x i from terms of O ( d ) in O ˜ ( n ω d ) operations in 햪
The problem To simplify: deg x = 1 p n ( x ) q n ( x ) p n − 1 ( x ) p n ( x ) q n − 1 ( x ) q n ( x ) ⋮ ⋮ ⋱ ⋮ ⋮ ⋱ ⋮ ⋮ ⋮ ⋮ ∈ 햪 [ x ] 2 n × 2 n p n ( x ) q n ( x ) S ( x ) = p 0 ( x ) ⋮ p n − 1 ( x ) q 0 ( x ) ⋮ q n − 1 ( x ) ⋮ ⋮ p 0 ( x ) q 0 ( x ) ⋱ ⋮ ⋱ ⋮ p 0 ( x ) q 0 ( x ) det S ( x ) ? Best known complexity bound O ˜ ( n 2 ) Size of a system solution ( entries of degree ) n 2 n
New algorithm From 10.000 feet
Recommend
More recommend