XDistributedPolynomialFunctions(VAR, F)¶
xdpolyf.spad line 5 [edit on github]
VAR: OrderedSet
F: Field
Using the Hankel matrix of a noncommutative polynomial one can determine the rank (Matrices de Hankel by Fliess). The extended Ho-Algorithmus (Fornasini+Marchesini) is used to create a minimal linear representation. Another approach is implemented in NonCommutativeRationalFunctions.
- display: Record(rows: List FreeMonoid VAR, cols: List FreeMonoid VAR, H: Matrix F) -> OutputForm
display(sys)
prints the Hankel matrix in an extended form with row-indices as column 0 and column-indices as row 0.
- findNonZeroEntry: (Matrix F, NonNegativeInteger, NonNegativeInteger) -> List NonNegativeInteger
findNonZeroEntry(A,i,j)
returns the indices [k
,l
] with i<=k<=m and j<=l<=n such that A(k
,l
) is non-zero and [0,0] otherwise. A is of sizem
x
n
.
- hankelIndices: XDistributedPolynomial(VAR, F) -> List FreeMonoid VAR
hankelIndices(p)
returns a list of all left and right factors of the monomials of a given multivariate noncommutative polynomial. Factorization:w
= u*v
- hankelMatrix: (XDistributedPolynomial(VAR, F), VAR) -> Matrix F
hankelMatrix(p,x)
returns a matrix with the entries of the coefficients ofp
at (u
,v
) where the monomials factorizes throughw
= u*x*v. This matrix is indexed by all words of the Hankel matrix.
- hankelMatrix: XDistributedPolynomial(VAR, F) -> Matrix F
hankelMatrix(p)
returns the Hankel matrixH
(p
) of given polynomialp
, i.e. the entries at (u
,v
) are the coefficients of the monomialsw
= u*v. Rows and columns are indexed by words.
- hankelSystem: XDistributedPolynomial(VAR, F) -> Record(rows: List FreeMonoid VAR, cols: List FreeMonoid VAR, H: Matrix F)
hankelSystem(p)
creates a Hankel-matrix for the polynomialp
with respect to the basis of all factors inp
. Row- and column-indices can be different.
- minimalMatrix: (Matrix F, NonNegativeInteger) -> Matrix F
minimalMatrix(A,r)
returns the minimal (upper-left) submatrix of A such that the rank corresponds to the given.
- minimalRepresentation: XDistributedPolynomial(VAR, F) -> Record(alpha: Matrix F, mu: List Matrix F, var: List VAR, beta: Matrix F)
minimalRepresentation(p)
returns a minimal representation using the generalized Ho algorithm [Fornasini, 1978]p
= sum_w alpha*mu(w
)*beta*w [Theorem 3.3, Salomaa–Soittola 1978]