MatrixPolynomialAlgebra
MatrixGCRD
compute a greatest common right divisor of 2 matrices of polynomials in row-reduced form
MatrixGCLD
compute a greatest common left divisor of 2 matrices of polynomials in column-reduced form
Calling Sequence
Parameters
Description
Examples
References
MatrixGCRD(A, B, x, U, V)
MatrixGCLD(A, B, x, U, V)
A
-
Matrix of polynomials
B
x
variable name of the polynomial domain
U
(optional) list of two matrices of polynomials
V
The MatrixGCRD(A, B, x) command computes a right matrix GCD of two matrices of polynomials. Both input matrices of polynomials can be square or rectangular, but must have the same number of columns. The entries are either univariate polynomials in x over the field of rational numbers Q, or rational expressions over Q (that is, univariate polynomials in x with coefficients in Q(a1,...,an)).
It is required that the matrix of polynomials [⁢AT⁢BT⁢]^T have full column rank.
The fourth argument is optional. It is used to return a list U1,U2 of matrices. These matrices satisfy the matrix linear diophantine equation U1 . A + U2 . B = MatrixGCRD(A,B).
The fifth argument is optional. It is used to return a list V1,V2 of matrices. These matrices satisfy the matrix linear diophantine equation V1·A+V2·B=0. This is useful. If B is square and nonsingular this gives A·1B=−1V1·V2 a left-reduced matrix rational function.
The MatrixGCLD(A, B, x) command returns a left matrix GCD with optional arguments for returning solutions for matrix linear diophantine equations and right-reduced matrix rational functions. It is required that the matrix of polynomials [A⁢B] have full row rank.
The method used is a fraction-free algorithm by Beckermann and Labahn that computes a matrix GCD using Mahler systems.
with⁡MatrixPolynomialAlgebra:
A≔Matrix⁡2,2,−9⁢z2−3⁢z+1,12⁢z2+10⁢z,−3⁢z3+2⁢z2−z,4⁢z3+2⁢z−2⁢z2:
B≔Matrix⁡2,2,−3⁢z3+6⁢z2+5⁢z+1,−12⁢z2−13⁢z,z4+z3+z2,−4⁢z3−3⁢z+3⁢z2:
Left matrix GCDs:
C≔MatrixGCLD⁡A,B,z
C≔18⁢z2+3⁢z−2−1−6⁢z−z2+2⁢z−z
Left matrix extended GCD:
C≔MatrixGCLD⁡A,B,z,U
map⁡expand,A·U1+B·U2−C
0000
Left matrix extended GCD with 2 matrix diophantine equations:
C≔MatrixGCLD⁡A,B,z,U,V
U;V
−9⁢z4−9⁢z3−9⁢z2−3⁢z−2z3+z2+z−1−454⁢z4−92⁢z3−92⁢z254⁢z3+12⁢z2+12⁢z−1,00−9⁢z42z32
124416⁢z2+124416⁢z+4147282944⁢z196992⁢z2+62208⁢z+20736−62208+103680⁢z,−414720103680⁢z2−41472+41472⁢z
map⁡expand,A·V1+B·V2
Right matrix GCDs:
C≔MatrixGCRD⁡A,B,z
C≔−5+21⁢z−50⁢z10
Right matrix extended GCD:
C≔MatrixGCRD⁡A,B,z,U
map⁡expand,U1·A+U2·B−C
Right matrix extended GCD with 2 matrix diophantine equations:
C≔MatrixGCRD⁡A,B,z,U,V
−26789945377⁢z5−3335765377⁢z4−4745795377⁢z3−27⁢z2+6⁢z−596122705377⁢z4+62980745377⁢z3+99⁢z2−193945377⁢z4−320065377⁢z3+353715377⁢z2−2⁢z+11239905377⁢z3+1459645377⁢z2−z−5,2625485377⁢z5−14719595377⁢z4+8617235377⁢z37876445377⁢z4−20529455377⁢z3109685377⁢z4−283695377⁢z3+291535377⁢z2329045377⁢z3+136055377⁢z2
385423360⁢z3+75708160⁢z2+68825600⁢z+13765120−1404042240⁢z2−1025501440⁢z−158298880137651200⁢z3+6882560⁢z2+27530240⁢z−495544320⁢z2−295950080⁢z−20647680,−41295360⁢z3+213359360⁢z2−117003520⁢z−13765120−123886080⁢z2+268419840⁢z−13765120⁢z3+75708160⁢z2−48177920⁢z−41295360⁢z2+103238400⁢z−13765120
map⁡expand,V1·A+V2·B
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.
See Also
expand
indets
map
Matrix
MatrixPolynomialAlgebra[HermiteForm]
MatrixPolynomialAlgebra[MahlerSystem]
MatrixPolynomialAlgebra[MatrixLCLM]
MatrixPolynomialAlgebra[PopovForm]
Download Help Document