compute the Popov normal form of a Matrix - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Linear Algebra : LinearAlgebra Package : Solvers : LinearAlgebra/PopovForm

LinearAlgebra[PopovForm] - compute the Popov normal form of a Matrix

Calling Sequence

PopovForm(A, x, shifts, out, options, outopts)

Parameters

A

-

Matrix of univariate polynomials in x

x

-

variable name of the polynomial domain

shifts

-

(optional) equation of the form shifts = obj where obj is a list of one or two lists

out

-

(optional) equation of the form output = obj where obj is one of 'P', 'U', 'rank', 'P_pivots', 'U_pivots', or a list containing one or more of these names; select result objects to compute

options

-

(optional); constructor options for the result object(s)

outopts

-

(optional) equation(s) of the form outputoptions[o] = list where o is one of 'P' or 'U'; constructor options for the specified result object

Description

• 

The PopovForm(A, x) function computes the column Popov normal form P (also called the polynomial echelon form) of an m x n rectangular Matrix of univariate polynomials in x over the field of rational numbers Q, or rational expressions over Q. You can request the form P, the unimodular multiplier U which gives P, the rank and various pivots in P and U via a specification of the output option.

Definition of Column Popov Form

• 

There are a number of variations of column Popov forms, typically unique up to permutation of the columns. The definitions used for both the full and non-full column rank case are as follows.

  

If m=n and P is nonsingular, P has the following degree constraints.

  

 

degPj&comma;i<degPi&comma;i&comma;for all j > i

degPj&comma;idegPi&comma;i&comma;for all j < i

  

If n<m and P has full column rank, there is a trailing list of n pivot rows P_pivots such that P[P_pivots,*] is in Popov normal form.

  

If nm and P has column rank r<n, P has the first nr columns 0 and there is a trailing list of r rows P_pivots such that P[P_pivots,*] is in Popov normal form. In this case, U is a minimal unimodular multiplier and as such there is a list U_pivots of rows such that U[U_pivots,*] is also in Popov normal form.

  

The Popov normal form P is obtained by doing elementary column operations on A. This includes interchanging columns, multiplying through a column by a unit, and subtracting a polynomial multiple of one column from another. The method used is a fraction-free algorithm by Beckermann, Labahn, and Villard.  The returned Matrix objects have the property that P&equals;A&period;U.

• 

The output option (out) determines the content of the returned expression sequence.

  

Depending on what is included in the output option, an expression sequence containing one or more of the factors P (the Popov normal form), U (the unimodular transformation Matrix), rank (the rank of the matrix), P_pivots, or U_pivots (the pivot rows of P and U, respectively) can be returned.

  

If output is a list, the objects are returned in the same order as specified in the list.

• 

The shifts option is an optional input which allows the user to shift the degree constraints on both the Popov form and the minimal multiplier (in the non-full column rank case).

• 

The constructor options provide additional information (readonly, shape, storage, order, datatype, and attributes) to the Matrix constructor that builds the result(s). These options may also be provided in the form outputoptions[o]=[...], where [...] represents a Maple list.  If a constructor option is provided in both the calling sequence directly and in an outputoptions[o] option, the latter takes precedence (regardless of the order).

Examples

withLinearAlgebra&colon;

A:=z3z2&comma;z32z2&plus;2z2&verbar;z32z21&comma;z33z2&plus;3z4

A:=z3z2z32z21z32z2&plus;2z2z33z2&plus;3z4

(1)

P:=PopovFormA&comma;z&comma;datatype&equals;algebraic

P:=z111&plus;z

(2)

P&comma;U:=PopovFormA&comma;z&comma;output&equals;&apos;P&apos;&comma;&apos;U&apos;

P&comma;U:=z111&plus;z&comma;12z2&plus;32z1212z212z3212z2z12z2&plus;1

(3)

mapexpand&comma;PA&period;U

0000

(4)

DeterminantU

12

(5)

A low rank matrix.

A:=3z6&comma;3z&plus;3&comma;2z&plus;3&comma;z&verbar;3z&comma;3z&comma;2&comma;1&verbar;6&comma;3&comma;2z1&comma;z&plus;1

A:=3z63z63z&plus;33z32z&plus;322z1z1z&plus;1

(6)

P&comma;U&comma;r:=PopovFormA&comma;z&comma;output&equals;&apos;P&apos;&comma;&apos;U&apos;&comma;&apos;rank&apos;

P&comma;U&comma;r:=0z60z30231&plus;2z0131&plus;z&comma;1011131100&comma;2

(7)

P&comma;U&comma;r&comma;II&comma;K:=PopovFormA&comma;z&comma;output&equals;&apos;P&apos;&comma;&apos;U&apos;&comma;&apos;rank&apos;&comma;&apos;P_pivots&apos;&comma;&apos;U_pivots&apos;

P&comma;U&comma;r&comma;II&comma;K:=0z60z30231&plus;2z0131&plus;z&comma;1011131100&comma;2&comma;2&comma;4&comma;3

(8)

A [2,2,0,0]-shifted Popov form.

P&comma;U&comma;r&comma;II&comma;K:=PopovFormA&comma;z&comma;shifts&equals;2&comma;2&comma;0&comma;0&comma;output&equals;&apos;P&apos;&comma;&apos;U&apos;&comma;&apos;rank&apos;&comma;&apos;P_pivots&apos;&comma;&apos;U_pivots&apos;

P&comma;U&comma;r&comma;II&comma;K:=0z2&plus;z22z2&plus;z&plus;40z2z&plus;12z2z2010001&comma;11323113z123z100&comma;2&comma;3&comma;4&comma;3

(9)

A Popov form with [0,-3,0,0]-shift for unimodular multiplier.

A:=z3&plus;4z2&plus;z&plus;1&comma;z2&plus;7z&plus;4&verbar;z1&comma;z&plus;2&verbar;2z2&plus;2z2&comma;z2&plus;6z&plus;6&verbar;z2&comma;2z

A:=z3&plus;4z2&plus;z&plus;11&plus;z2z2&plus;2z2z2z2&plus;7z&plus;4z&plus;2z2&plus;6z&plus;62z

(10)

P&comma;U&comma;r&comma;II&comma;K:=PopovFormA&comma;z&comma;shifts&equals;0&comma;0&comma;0&comma;3&comma;0&comma;0&comma;output&equals;&apos;P&apos;&comma;&apos;U&apos;&comma;&apos;rank&apos;&comma;&apos;P_pivots&apos;&comma;&apos;U_pivots&apos;

P&comma;U&comma;r&comma;II&comma;K:=00z1002z&comma;221z&plus;17z22z27&plus;17z121z37100037&plus;221zz2z17z&plus;1727&plus;121z221z213z421z39z717z2&plus;97121z2&plus;13z2321&comma;2&comma;1&comma;2&comma;2&comma;4

(11)

mapexpand&comma;PA&period;U

00000000

(12)

DeterminantU

1

(13)

See Also

expand, indets, LinearAlgebra, LinearAlgebra[Determinant], LinearAlgebra[HermiteForm], LinearAlgebra[Map], Matrix

References

  

Beckermann, B., and Labahn, G. "Fraction-free Computation of Matrix Rational Interpolants and Matrix GCDs." SIAM Journal on Matrix Analysis and Applications, Vol. 22 No. 1. (2000): 114-144.

  

Beckermann, B.; Labahn, G.; and Villard, G. "Shifted Normal Forms of General Polynomial Matrices." University of Waterloo, Technical Report. Department of Computer Science, 2001.

  

Beckermann, B.; Labahn, G.; and Villard, G. "Shifted Normal Forms of Polynomial Matrices."  ISSAC'99, pp. 189-196. 1999.


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam