On Computing the Inverse of a Rational Matrix
L.H. Keel and S.P. Bhattacharyya
Abstract— In this paper, we develop a method for computing
the inverse of a rational or polynomial matrix via Wolovich’s
Structure Theorem. By using Leverrier’s algorithm with the
above result, the inverse can be obtained using only arithmetic
operations.
I. INTRODUCTION
Numerical and computational methods for dealing with
polynomial and rational matrices are an important part of
control systems research [1], [2]. This includes computing
common divisors of polynomials, inversion of a polyno-
mial matrices, coprime polynomial factorizations of rational
matrices, and functions of polynomial matrices [3], [4].
An excellent account of linear systems theory containing
numerical considerations can be found in [5]
The inversion of a rational or polynomial matrix is needed
in many branches of engineering and especially in signals,
systems and control design and analysis. In [8], Leverrier’s
algorithm to find the inverse of (sI - A) is generalized to
the inversion of polynomial matrices of arbitrary degree and
of a certain form. An input-output approach is taken to the
realization of matrix fraction descriptions of transfer matrices
in [9]. In [10], an algorithm is developed for finding the in-
verse of polynomial matrices in the irreducible form by using
the left (right) matrix division method and the determination
of linearly dependent vectors of the remainders.
In this paper, we present an algorithm that computes the
inverse of an arbitrary polynomial or rational matrix using
Wolovich’s Structure Theorem [6]. This algebraic technique
can be easily implemented as a computational algorithm
without requiring symbolic computation. Examples are given
for illustration.
II. PRELIMINARY RESULTS
In this section, we discuss Leverrier’s algorithm, the
Wolovich Structure Theorem, and the inverse of a unimod-
ular matrix.
A. Leverrier’s Algorithm[11]
This algorithm determines the so-called resolvent, (sI -
A)
-1
for a real or complex matrix A, without symbolic
calculation. First write
(sI - A)
-1
=
Adj[sI - A]
det[sI - A]
. (1)
This work was supported in part by DOD Grant W911NF-08-0514 and
NSF Grant CMMI-0927664
Center of Excellence in Information Systems, Tennessee State University,
Nashville, TN 37209
Department of Electrical and Computer Engineering, Texas A&M Uni-
versity, College Station, TX 77843
Let
a(s) = det[sI - A] (2)
= s
n
+ a
n-1
s
n-1
+ ··· + a
1
s + a
0
where a
i
∈ C and
T (s) = Adj[sI - A] (3)
= T
n-1
s
n-1
+ T
n-2
s
n-2
+ ··· + T
1
s + T
0
,
with T
i
∈ C
n×n
. Thus, we have
(sI - A)
-1
=
1
a(s)
T (s) (4)
or
a(s)I =(sI - A)T (s) (5)
so that
a(s)I = Is
n
+ a
n-1
Is
n-1
+ ··· + a
1
Is + a
0
I
(sI - A)T (s)= T
n-1
s
n
+(T
n-2
- AT
n-1
) s
n-1
+ ···
··· +(T
0
- AT
1
) s - AT
0
.
Therefore,
T
n-1
= I,
T
n-2
= AT
n-1
+ a
n-1
I,
T
n-3
= AT
n-2
+ a
n-2
I,
.
.
. (6)
T
0
= AT
1
+ a
1
I,
-AT
0
= a
0
I.
It is also shown that
a
i
= -
1
n - i
Trace [AT
n-i
] , (7)
and this leads to the following algorithm:
a
n-1
= -Trace [AT
n-1
] ,
a
n-2
= -
1
2
Trace [AT
n-2
] ,
a
n-3
= -
1
3
Trace [AT
n-3
] , (8)
.
.
.
a
0
= -
1
n
Trace [AT
0
] .
Thus, the special case of a resolvent can be determined by
arithmetic operations. We shall show in the paper that the
inversion of a general rational matrix can be reduced to the
case of a resolvent.
Joint 48th IEEE Conference on Decision and Control and
28th Chinese Control Conference
Shanghai, P.R. China, December 16-18, 2009
WeA04.6
978-1-4244-3872-3/09/$25.00 ©2009 IEEE 140