 MahlerSystem - Maple Help

MatrixPolynomialAlgebra

 MahlerSystem
 compute the Mahler system of a matrix of polynomials Calling Sequence MahlerSystem(A, x, vn, vo, returnAll) Parameters

 A - Matrix x - variable name of the polynomial domain vn - list of integers specifying type of Mahler system vo - list of integers specifying order of Mahler system returnAll - (optional) boolean; specify whether to return expression sequence of Mahler system, residual, closest normal point, the order of the Mahler system computed, and a list of indices indicating the nonzero columns of R, or only the Mahler system, residual, and closest normal point Description

 • The MahlerSystem(A, x, vn, vo) command computes the Mahler system of an m x n rectangular Matrix of 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)), its residual R, and its closest normal point v.
 • The MahlerSystem(A, x, vn, vo, true) command returns the Mahler system, residual, closest normal point, the order of the Mahler system computed, and a list of indices indicating the nonzero columns of R.
 • If M = MahlerSystem(A, x, vn, vo) with the entries of A from ${F}_{x}$, the columns of M form a  module basis for the  (mathematical) module

$\left\{w\in {F}^{n}\left[x\right]|A.w=\mathrm{O}\left({x}^{\mathrm{vo}}\right),\mathrm{degree}\left({w}_{i}\right)\le {\mathrm{vn}}_{i}\right\}$

 in the sense that a module basis consists of $M[*,i],\mathrm{...},{x}^{{v}_{i}-1}M[*,i]$ for $i=1,...,n$ where n is the number of columns of M and v is the closest normal point to vn.
 • If the residual R is returned, it satisfies $A·M={x}^{\mathrm{vo}}·R$, where ${x}^{\mathrm{vo}}$ is the diagonal matrix containing ${x}^{{\mathrm{vo}}_{i}}$ in entry $i,i$. Examples

 > $\mathrm{with}\left(\mathrm{MatrixPolynomialAlgebra}\right):$
 > $A≔⟨⟨{z}^{5}-{z}^{2}-1,{z}^{3}-2{z}^{2}+2z-2,z+1⟩|⟨{z}^{3}-2{z}^{2}-1,{z}^{3}-3{z}^{2}+3z-4,2-{z}^{3}⟩⟩$
 ${A}{≔}\left[\begin{array}{cc}{{z}}^{{5}}{-}{{z}}^{{2}}{-}{1}& {{z}}^{{3}}{-}{2}{}{{z}}^{{2}}{-}{1}\\ {{z}}^{{3}}{-}{2}{}{{z}}^{{2}}{+}{2}{}{z}{-}{2}& {{z}}^{{3}}{-}{3}{}{{z}}^{{2}}{+}{3}{}{z}{-}{4}\\ {z}{+}{1}& {-}{{z}}^{{3}}{+}{2}\end{array}\right]$ (1)
 > $\mathrm{vorder}≔\left[3,5,4\right]:$
 > $M≔\mathrm{MahlerSystem}\left(A,z,\left[1,3\right],\mathrm{vorder}\right)$
 ${M}{≔}\left[\begin{array}{cc}{-}{128}{}{{z}}^{{3}}& {0}\\ {-}{16}{}{{z}}^{{4}}{+}{64}{}{{z}}^{{3}}& {-}{128}{}{{z}}^{{5}}\end{array}\right]$ (2)

Check the order condition.

 > $\mathrm{map}\left(\mathrm{expand},A·M\right)$
 $\left[\begin{array}{cc}{-}{128}{}{{z}}^{{8}}{-}{16}{}{{z}}^{{7}}{+}{96}{}{{z}}^{{6}}{+}{16}{}{{z}}^{{4}}{+}{64}{}{{z}}^{{3}}& {-}{128}{}{{z}}^{{8}}{+}{256}{}{{z}}^{{7}}{+}{128}{}{{z}}^{{5}}\\ {-}{16}{}{{z}}^{{7}}{-}{16}{}{{z}}^{{6}}{+}{16}{}{{z}}^{{5}}& {-}{128}{}{{z}}^{{8}}{+}{384}{}{{z}}^{{7}}{-}{384}{}{{z}}^{{6}}{+}{512}{}{{z}}^{{5}}\\ {16}{}{{z}}^{{7}}{-}{64}{}{{z}}^{{6}}{-}{160}{}{{z}}^{{4}}& {128}{}{{z}}^{{8}}{-}{256}{}{{z}}^{{5}}\end{array}\right]$ (3)

Return residual and closest normal point.

 > $M,R,v,\mathrm{vorder},\mathrm{nonzero}≔\mathrm{MahlerSystem}\left(A,z,\left[1,3\right],\mathrm{vorder},\mathrm{true}\right)$
 ${M}{,}{R}{,}{v}{,}{\mathrm{vorder}}{,}{\mathrm{nonzero}}{≔}\left[\begin{array}{cc}{-}{128}{}{{z}}^{{3}}& {0}\\ {-}{16}{}{{z}}^{{4}}{+}{64}{}{{z}}^{{3}}& {-}{128}{}{{z}}^{{5}}\end{array}\right]{,}\left[\begin{array}{cc}{-}{128}{}{{z}}^{{5}}{-}{16}{}{{z}}^{{4}}{+}{96}{}{{z}}^{{3}}{+}{16}{}{z}{+}{64}& {-}{128}{}{{z}}^{{5}}{+}{256}{}{{z}}^{{4}}{+}{128}{}{{z}}^{{2}}\\ {-}{16}{}{{z}}^{{2}}{-}{16}{}{z}{+}{16}& {-}{128}{}{{z}}^{{3}}{+}{384}{}{{z}}^{{2}}{-}{384}{}{z}{+}{512}\\ {16}{}{{z}}^{{3}}{-}{64}{}{{z}}^{{2}}{-}{160}& {128}{}{{z}}^{{4}}{-}{256}{}{z}\end{array}\right]{,}\left[\begin{array}{cc}{3}& {5}\end{array}\right]{,}\left[\begin{array}{ccc}{3}& {5}& {4}\end{array}\right]{,}\left[{1}{,}{2}\right]$ (4)

Check.

 > $W≔\mathrm{Matrix}\left(3,3,\left(i,j\right)↦\mathbf{if}\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}i=j\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\mathbf{then}\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}{z}^{\mathrm{vorder}\left[i\right]}\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\mathbf{else}\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}0\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\mathbf{end}\phantom{\rule[-0.0ex]{0.3em}{0.0ex}}\mathbf{if}\right):$
 > $\mathrm{map}\left(\mathrm{expand},A·M-W·R\right)$
 $\left[\begin{array}{cc}{0}& {0}\\ {0}& {0}\\ {0}& {0}\end{array}\right]$ (5) 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.