computing popov and hermite forms of rectangular
play

Computing Popov and Hermite forms of rectangular polynomial matrices - PowerPoint PPT Presentation

Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018 (New York, USA) Vincent Neiger, Johan Rosenkilde, Grigory Solomatov XLIM University of Limoges, France Technical University of Denmark July 17, 2018 Outline


  1. Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018 (New York, USA) Vincent Neiger, Johan Rosenkilde, Grigory Solomatov XLIM – University of Limoges, France Technical University of Denmark July 17, 2018

  2. Outline • Context and contribution • Algorithmic tools and general approach • Overview of new algorithms 1/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  3. Context and contribution Polynomial matrix computations 3 X 3 + X 2 + 5 X + 3   6 X + 5 2 X + 1 K a field 5 X 2 + 3 X + 1 5 5 X + 3   Matrices over K [ X ] X 3 + 4 X + 1 4 X 2 + 3 3 X + 4 Usual matrix operations • matrix multiplication • rank, determinant • system solving, inversion Transformations to normal forms • triangularization � Hermite form • row reduction � Popov form • diagonalization � Smith form 2/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  4. Context and contribution Hermite and Popov forms ( K = Z / 7 Z ) 3 X 3 + X 2 + 5 X + 3   6 X + 5 2 X + 1 5 X 2 + 3 X + 1 Input matrix: 5 5 X + 3   X 3 + 4 X + 1 4 X 2 + 3 3 X + 4  row i ← row i + p ( X ) row j  Transform, via elementary row operations, row i ↔ row j row i ← α row i , α ∈ K \{ 0 }  � into Popov form [Popov ’72] X 3 + 5 X 2 + 4 X + 1   2 X + 4 3 X + 5 X 2 + 2 X + 3 1 X + 2   X 2 3 X + 2 4 X � into Hermite form [Hermite 1851] X 6 + 6 X 4 + X 3 + X + 4  0 0  5 X 5 + 5 X 4 + 6 X 3 + 2 X 2 + 6 X + 3 X 0   3 X 4 + 5 X 3 + 4 X 2 + 6 X + 1 5 1 3/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  5. Context and contribution Goal: fast algorithms 3 X 3 + X 2 + 5 X + 3  6 X + 5 2 X + 1  K a field 5 X 2 + 3 X + 1 5 5 X + 3   Matrices over K [ X ] X 3 + 4 X + 1 4 X 2 + 3 3 X + 4 Usual matrix operations • matrix multiplication • rank, determinant • system solving, inversion Transformations to normal forms • triangularization � Hermite form [Gupta-Storjohann ’11] [Labahn-Neiger-Zhou ’17] • row reduction � Popov form [Gupta-Sarkar-Storjohann-Valeriote ’11 & ’12] • diagonalization � Smith form 4/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  6. Context and contribution Goal: fast algorithms 3 X 3 + X 2 + 5 X + 3  6 X + 5 2 X + 1  K a field 5 X 2 + 3 X + 1 5 5 X + 3   Matrices over K [ X ] X 3 + 4 X + 1 4 X 2 + 3 3 X + 4 Usual matrix operations • matrix multiplication cost O ˜ ( m ω d ) • rank, determinant • system solving, inversion m × m matrix with degree d Transformations to normal forms • triangularization � Hermite form [Gupta-Storjohann ’11] [Labahn-Neiger-Zhou ’17] • row reduction � Popov form [Gupta-Sarkar-Storjohann-Valeriote ’11 & ’12] • diagonalization � Smith form 4/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  7. Context and contribution Contribution: rectangular normal forms For a matrix in K [ X ] m × n with m � n : Popov form deterministic algorithm with cost O ˜ ( m ω − 1 nd ) d the degree of the matrix size of Popov form is O ( mnd ) previous fastest: O ( rmnd 2 ) [Mulders-Storjohann ’03] and O ˜ ( mn ω d ) [ ⋆ ] Las Vegas: O ˜ ( m ω − 1 nd ) assuming full row rank [Sarkar-Storjohann ’11] [ ⋆ ] = based on some kernel computation [Beckermann-Labahn-Villard ’06] 5/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  8. Context and contribution Contribution: rectangular normal forms For a matrix in K [ X ] m × n with m � n : Hermite form deterministic algorithm with cost O ˜ ( m ω − 1 nδ ) δ � md δ = min ( sum of row/col degrees ) size of Hermite form can be Θ ( mnδ ) previous fastest: O ˜ ( n ω + 1 δ ) [ ⋆ ] (speed-up factor � n ) [ ⋆ ] = based on some kernel computation [Beckermann-Labahn-Villard ’06] 5/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  9. Algorithmic tools and general approach Tool: kernel bases Left kernel basis of a matrix A ∈ K [ X ] m × n  K has full row rank  Matrix K ∈ K [ X ] k × m such that KA = 0 rows of K generate the kernel of A  • core algorithmic tool: rank, inversion, determinant, Hermite form, . . . • kernel bases can now be computed fast in Popov form � combine [Zhou-Labahn-Storjohann ’12] + this work • shifted normal forms: UA = P (via shifted Popov approximant basis [Jeannerod-Neiger-Schost-Villard ’16]) � cost of this approach: unsatisfactory 6/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  10. Algorithmic tools and general approach Reduction to the full row rank case Row basis of a matrix A ∈ K [ X ] m × n � B has full row rank Matrix B ∈ K [ X ] r × n such that B and A have the same row space Fast algorithm: [Zhou-Labahn ’13] Consequence: deal with m � n and rank-deficient matrices Normal form of arbitrary A Step 1: B ← row basis of A // use [Zhou-Labahn ’13] Step 2: P ← the normal form of B // full row rank case Step 3: Return P Step 1 costs O ˜ ( m ω − 1 ( m + n ) d ) What do pivots become in the full row rank case? 7/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  11. Algorithmic tools and general approach Degree structure and pivots nonsingular, m × m pivot of a row: rightmost entry of largest degree   [ 6 ] [ 1 ] [ 2 ] [ 4 ] [ 2 ] [ 2 ] [ 1 ] [ 1 ]   Popov   [ 3 ] [ 1 ] [ 3 ] [ 2 ]   [ 5 ] [ 1 ] [ 2 ] [ 5 ] size O ( m 2 d ) pivot of a row: rightmost nonzero entry   [ 12 ] [ 11 ] [ 3 ]   Hermite   [ 11 ] [ 2 ] [ 0 ]   [ 11 ] [ 2 ] [ 1 ] size O ( m 2 d ) 8/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  12. Algorithmic tools and general approach Degree structure and pivots nonsingular, m × m full row rank, m × n pivot of a row: rightmost entry of largest degree     [ 6 ] [ 1 ] [ 2 ] [ 4 ] [ 6 ] [ 5 ] [ 5 ] [ 1 ] [ 5 ] [ 2 ] [ 4 ] [ 2 ] [ 2 ] [ 1 ] [ 1 ] [ 2 ] [ 2 ] [ 2 ] [ 2 ] [ 1 ] [ 1 ] [ 1 ]     Popov     [ 3 ] [ 1 ] [ 3 ] [ 2 ] [ 3 ] [ 3 ] [ 3 ] [ 1 ] [ 3 ] [ 3 ] [ 2 ]     [ 5 ] [ 1 ] [ 2 ] [ 5 ] [ 5 ] [ 5 ] [ 5 ] [ 1 ] [ 5 ] [ 2 ] [ 5 ] size O ( m 2 d ) size O ( mnd ) pivot of a row: rightmost nonzero entry   [ 12 ] [ 11 ] [ 3 ]   Hermite   [ 11 ] [ 2 ] [ 0 ]   [ 11 ] [ 2 ] [ 1 ] size O ( m 2 d ) 8/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  13. Algorithmic tools and general approach Degree structure and pivots nonsingular, m × m full row rank, m × n pivot of a row: rightmost entry of largest degree     [ 6 ] [ 1 ] [ 2 ] [ 4 ] [ 6 ] [ 5 ] [ 5 ] [ 1 ] [ 5 ] [ 2 ] [ 4 ] [ 2 ] [ 2 ] [ 1 ] [ 1 ] [ 2 ] [ 2 ] [ 2 ] [ 2 ] [ 1 ] [ 1 ] [ 1 ]     Popov     [ 3 ] [ 1 ] [ 3 ] [ 2 ] [ 3 ] [ 3 ] [ 3 ] [ 1 ] [ 3 ] [ 3 ] [ 2 ]     [ 5 ] [ 1 ] [ 2 ] [ 5 ] [ 5 ] [ 5 ] [ 5 ] [ 1 ] [ 5 ] [ 2 ] [ 5 ] size O ( m 2 d ) size O ( mnd ) pivot of a row: rightmost nonzero entry     [ 12 ] [ 12 ] [ 11 ] [ 21 ] [ 3 ] [ 11 ] [ 3 ]     Hermite     [ 11 ] [ 37 ] [ 2 ] [ 193 ] [ 0 ] [ 11 ] [ 2 ] [ 0 ]     [ 11 ] [ 32 ] [ 2 ] [ 5 ] [ 243 ] [ 1 ] [ 11 ] [ 2 ] [ 1 ] size O ( m 2 d ) size O ( mnδ ) 8/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

  14. Algorithmic tools and general approach Pivot support   [ 4 ] [ 3 ] [ 5 ] [ 2 ] [ 1 ] [ 4 ] [ 5 ] [ 7 ] [ 9 ] [ 4 ] [ 4 ] [ 2 ] [ 9 ] [ 3 ] From now, focus on Popov form    = A   [ 5 ] [ 8 ] [ 5 ] [ 5 ] [ 0 ] [ 5 ] [ 9 ]  • full row rank m × n matrix A [ 7 ] [ 4 ] [ 9 ] [ 3 ] [ 5 ] [ 5 ] [ 9 ] • input/output size O ( mnd ) unimodular • target cost O ˜ ( m ω − 1 nd )  [ 6 ] [ 5 ] [ 5 ] [ 1 ] [ 5 ] [ 2 ] [ 4 ]  [ 2 ] [ 2 ] [ 2 ] [ 2 ] [ 1 ] [ 1 ] [ 1 ]    = P   [ 3 ] [ 3 ] [ 3 ] [ 1 ] [ 3 ] [ 3 ] [ 2 ]  [ 5 ] [ 5 ] [ 5 ] [ 1 ] [ 5 ] [ 2 ] [ 5 ] pivot support of A : indices of the pivots in P � any multiple UA has its pivots in the pivot support Algorithmic approach • Find the pivot support of A • Use the pivot support to compute P 9/13 Vincent Neiger Computing Popov and Hermite forms of rectangular polynomial matrices ISSAC 2018

Recommend


More recommend