Transformations Exhibiting the Rank for Skew Laurent Polynomial Matrices

Manuel Bronstein

Projet Café, Inria (France)

Algorithms Seminar

June 11, 2001

[summary by Alin Bostan]

A properly typeset version of this document is available in postscript and in pdf.

If some fonts do not look right on your screen, this might be fixed by configuring your browser (see the documentation here).
This talk presents an algorithm to perform transformations exhibiting the rank (TER) on a large class of matrices with entries in skew polynomial rings. This algorithm only uses elementary linear algebra operations and has various applications in solving very general linear functional systems.

1  Motivation

The question of finding polynomial solutions for linear functional systems is of particular interest in treating various problems in differential and difference algebra, as well as in combinatorics. It appears as a basic subtask in algorithms for finding all rational solutions of differential and (q-)difference equations, for computing liouvillian solutions of differential equations and (q-)hypergeometric solutions of (q-)difference equations. It also applies in factoring linear differential and difference operators, or in designing effective Gröbner basis algorithms in multivariate Ore algebras, which in turn are used in generalization of Gosper's algorithm for indefinite hypergeometric summation and Zeilberger's ``creative telescoping'' algorithm for definite summation and integration.

The traditional computer algebra approach to solving functional systems is via an elimination method like the cyclic-vector method, which converts the system to scalar equations (this procedure is called uncoupling). The major problem of this approach is the increase in size of the coefficients of equations.

The algorithm described in the next section offers a direct alternative for transforming a linear system of recurrences into an equivalent one of a simpler form, well-suited for the purpose of computing solutions with finite support of such a system. This gives a useful tool for constructing polynomial solutions of very general linear functional systems; see Sections 4.1 and 4.2 below.

The main advantage of this approach is that it does not require preliminary uncoupling of linear systems, but only performs elementary linear algebra operations on the original matrix.

2  Description of the Algorithm

The existence of canonical forms for matrices over various types of rings, such as principal ideal domains, has been known since the middle of the last century; their computation has important applications in both theoretical and practical areas of mathematics, science, and engineering.

Suppose that we consider matrices over a ring for which the notion of rank makes sense. A method for obtaining canonical forms of a matrix is performing elementary operations on its rows. Here, by elementary operation we mean permuting two rows, adding a multiple of a row to another row, and multiplying a row by a nonzero element of the base ring. Such a finite sequence of elementary row operations on a matrix A can be represented by a matrix E. It will be called a TER (transformation exhibiting the rank) if it has the additional property that the rank of A equals the number of nonzero rows of the matrix EA.

In the commutative case, Gaussian elimination is the classical example of a TER, but it is a very greedy one, because of the exponential growth of the intermediate expressions; see [5]. The Popov form from linear control theory [8, 9] and the reduced matrix form [10, 11] are two other examples.

In [6] Mulders and Storjohann gave a simple algorithm that computes a simplified, non-canonical version of the Popov form, called the weak Popov form of a polynomial matrix. The algorithm performs only delicate elementary transformations which avoid intermediate expression swell. As a by-product, fast algorithms are obtained for computing the rank, the determinant, the Hermite form, the triangular factorization, and also the Popov form.

In the following, we describe an algorithm that computes a TER in a non-commutative setting.

Let R be an integral domain and s an automorphism of R. Localizing the skew polynomial ring R[X;s] at the set of powers of X, we obtain the skew Laurent polynomial ring
S=R[X,X-1; s],
with the commutation rules X · r = s(r) · X, for all r in R (and therefore X-1 · r = s-1(r) · X-1). It is a left Ore domain, in the sense that any nonzero elements of S have a nonzero common left multiple in S. This implies that for any S-module M, the rank of M, denoted by rk(M) is a well-defined notion; see [4]. If A is a matrix with entries in S, we will call the rank of A the rank of the S-module generated by the rows of the matrix A.

We detail an algorithm which computes a TER of a n × m matrix A with entries in the skew Laurent polynomial ring S=R[X,X-1; s]. If we write
A=At Xt+At-1 Xt-1+ ... +As+1Xs+1+As Xs,
where s£ t are integers, Ai are matrices with entries in R, the leading matrix At and the trailing matrix As are nonzero, we are interested in finding a TER E such that the trailing matrix (respectively the leading matrix) of EA be nonsingular.

Remark that a straightforward application of the algorithm given in [6] does not do the job, even in the commutative case. The algorithm hereafter is essentially the algorithm proposed in [2] for the particular case of recurrence polynomials and improves the EG-elimination method [1].

The algorithm consists in iterating the following two basic steps, as long as the first operation can be performed:
  1. look for a nonzero v Î Rn in the left kernel of the trailing (respectively leading) matrix of A, i.e., such that vT As = 0 [respectively vT At=0] and such that vi is zero whenever the ith row of A is zero;

  2. choose i0 in the set of indices i such that the maximal degree in X of the polynomials of the ith row of A be maximal [respectively, its valuation be minimal] and replace this row by X-1vTA [respectively by X vT A].
Remark that åi deg(iA) decreases after each iteration, where iA denotes the ith row of A, so the above algorithm terminates after at most n (t-s+1) iterations.

Let N denote the number of iterations necessary for the previous algorithm to terminate and A(p) the matrix obtained from A=A(0) after p iterations. Then it can easily be seen that the number r of nonzero rows in the matrix A(N) equals its rank, as any linear nontrivial dependency over S of these nonzero rows would imply a linear nontrivial dependency over R of the corresponding rows of its trailing matrix.

On the other hand, the ranks of the matrices A(p) do not change all along the algorithm. This is implied by the formula rank A(p) = rank A(p+1) + rank(M(p)/M(p+1)), where M(p) denotes the S-module generated by the rows of the matrix A(p), and by the fact that M(p)/ M(p+1) is a torsion module, therefore of rank zero.

This shows that the previous algorithm provides a TER for A.

3  Complexity

The previous algorithm only needs to compute nonzero elements of the kernels of matrices with entries in R. When R is a polynomial ring over some field K of characteristic 0, which is the case for differential and (q-)difference equations, one can use modular and probabilistic methods (like [7]) to find elements of the kernel. Their worst-case complexity is O(n3d2) operations in K, where d is a bound on the degrees of the entries of A. Since the algorithm loops at most n(t-s+1) times, its complexity is O((t-s)n4d2). Refinements are possible; see [2].

4  Applications

4.1  Desingularisation of recurrences

As mentioned in the first section, linear systems of recurrences with variable coefficients are of interest in combinatorics and numeric computation. In addition, as shown in [3], they give a useful tool for constructing solutions of very general linear functional equations.

Consider the system At(n)Yn+t+...+As+1(n)Yn+s+1+As(n)Yn+s=0, where Ai are m × m matrices with entries in the polynomial ring K[n]. This system is equivalent to AY=0, where A=AtEt+...+AsEs is now viewed as a matrix with entries in K[n][E,E-1;s], s being the shift automorphism of K[n].

If either the leading matrix At or the trailing matrix As is nonsingular, its determinant is a nonzero polynomial in K[n] and the finite set of its integer roots gives the singularities of the recurrence and the possible degrees of polynomial solutions of the initial system. If the matrices As and At are singular, one faces the necessity to transform such a recurrence system into an equivalent one, with nonsingular leading (or trailing matrix). The following method is taken from [2]. If rank A=m > rank At, then applying the previous algorithm to the matrix A yields a new matrix
A*=At*Et+ ...+ As'*Es'
such that rank At*=m.

4.2  Solutions with finite support

As already mentioned, the question of finding polynomial solutions of linear functional systems may be reduced to the problem of finding solutions with finite support (Y0, Y1, ..., YN, 0, ...) of the previous recurrence system; see [3]. In [2] a similar method to that of Section 4.1 was given, in order to find constraints on the set of the possible values of the bound N for the support of such a solution.

If rank A=m=rank As then we can find a finite set of candidates for N, given by the relation d(N-s)=0 for d(n)=det As. If rank A=m > rank As, then applying the previous TER to the matrix A gives a matrix A*=At'*Et'+...+As*Es where rank As*=m and (detAs*)(N-s)=0.

4.3  Hensel lifting for singular linear systems

Let A be a nonsingular matrix with entries in K[X], where K is a field. We consider the problem of recovering a v Î K(X) such that Av=b, or determine that no such v exists.

X-adic lifting works by computing a vector series w=w0+w1X+w2X2+ ···, with each wi Î Kn and such that
A(w0+w1X+w2X2+ ···)=b.
A rational solution v of the system Av=b is then reconstructed from the truncated series solution w(mod Xl ) using Padé approximation. In general, we can compute the series solution w, by undetermined coefficients method, only when A is nonsingular modulo X.

In the case A(0) is singular, one can manage by applying the previous TER to the extended matrix [ A| b ] to transform the system AY=b into an equivalent one A*Y=b*, with A*(0) nonsingular. A similar idea already appeared in [7].

4.4  Solving linear differential systems

We now consider the problem of solving a linear differential system Y'=B(x)Y where B is a m × m matrix with entries in K[x]. By solving such a system we mean finding its formal power solutions. The system may be written in the compressed form AY=0, where A is a matrix with entries in K[X][D;d/dx].

Using the isomorphism of K-algebras:
R:K[x,x-1][D;d/dx] ¾® K[n][E,E-1;s]
given by R x=E-1 and R D=(n+1)E, we remark that there is a bijective correspondence between formal power solutions Y=ån ³ 0Ynxn of the linear differential system AY=0 and sequences Y=(Yn)n ³ 0, solutions of the recurrence system R(A)(Y)=0. This reduces the problem of finding (polynomial) solutions of the differential system AY=0 to finding solutions (with finite support) of the recurrence system R(A)(Y)=0.


Abramov (Sergei A.). -- EG-eliminations. Journal of Difference Equations and Applications, vol. 5, n°4-5, 1999, pp. 393--433.

Abramov (Sergei A.) and Bronstein (Manuel). -- On solutions of linear functional systems. In Mourrain (Bernard) (editor), ISSAC'01 (July 22-25, 2001. London, Ontario, Canada). pp. 1--6. -- ACM Press, 2001. Proceedings of the 2001 International Symposium on Symbolic and Algebraic Computation.

Abramov (Sergei A.), Bronstein (Manuel), and Petkovsek (Marko). -- On polynomial solutions of linear operator equations. In Levelt (A. H. M.) (editor), Symbolic and Algebraic Computation. pp. 290--296. -- ACM Press, New York, 1995. Proceedings of ISSAC'95, July 1995, Montreal, Canada.

Cohn (P. M.). -- Free rings and their relations. -- Academic Press Inc., London, 1985, second edition, London Mathematical Society Monograph, vol. 19, xxii+588p.

Fang (X. G.) and Havas (G.). -- On the worst-case complexity of integer Gaussian elimination. In Küchlin (Wolfgang W.) (editor), ISSAC'97 (July 21-23, 1997. Maui, Hawaii, USA). pp. 28--31. -- ACM Press, New York, 1997. Conference proceedings.

Mulders (Thom) and Storjohann (Arne). -- On lattice reduction for polynomial matrices. -- Technical Report n°356, ETH Zürich, Institute of Scientific Computing, December 2000. 26 pages.

Mulders (Thom) and Storjohann (Arne). -- Rational solutions of singular linear systems. In Traverso (Carlo) (editor), ISSAC'00 (August 6-9, 2000. St Andrews, Scotland). pp. 242--249. -- ACM Press, 2000. Proceedings of the 2000 International Symposium on Symbolic and Algebraic Computation.

Popov (V. M.). -- Invariant description of linear, time-invariant controllable systems. SIAM J. Control, vol. 10, 1972, pp. 252--264.

Villard (G.). -- Computing Popov form and Hermite forms of polynomial matrices. In Lakshman (Y. N.) (editor), ISSAC'96 (July 24-26, 1996. Zurich, Switzerland). pp. 250--258. -- ACM Press, New York, 1996. Conference proceedings.

von zur Gathen (Joachim). -- Hensel and Newton methods in valuation rings. Mathematics of Computation, vol. 42, n°166, 1984, pp. 637--661.

von zur Gathen (Joachim) and Gerhard (Jürgen). -- Modern computer algebra. -- Cambridge University Press, New York, 1999, xiv+753p.

This document was translated from LATEX by HEVEA.