Reconsidering the single shift case, we know
that the Givens
transformations needed for bringing the vector
back to
are closely related to the Givens transformations used in
the Givens-vector representation (see Section
).
Hence, we will search how to link the transformation of
to
with the Givens-vector representation of the matrix
.
Assume we have the following matrix
, whose first column we
would like to reduce efficiently to
. Denote,
and the
are suitably chosen shifts:
We will now transform the first column of the matrix
to
, but in such a way that we can perform these
transformations efficiently, as similarity transformations onto the
matrix
.
Perform the transformation
onto the matrix
The matrix product
produces a new Hessenberg-like
matrix
. (Check the correspondence with the right to left
representation of Hessenberg-like matrices). The
-factorization of
the matrix considered can easily be transformed to the
-factorization. Due to the connection with the Givens-vector
representation this can be done efficiently, moreover we will see
further on in the text that we do need this transition anyway. Denote
this as
. Important to remark is the fact
that the matrix
is in fact the result of performing a step
of the
-algorithm without shift onto the matrix
, this is
equivalent as in the single shift approach discussed in [28].
We have the equality
.
We
obtain the following relations (with
, for
):
It is clear that the procedure can easily be continued by defining
As a result we obtain that, if for every
The first column of
has
only the
first
elements different from zero as it is the product of
Hessenberg matrices. These elements can be computed easily as the
matrices
, in which
is a
sequence of Givens transformations from bottom to top. For
computing the first column of the matrix product
, we efficiently compute the multiplication of
the right-hand side of Equation
with
.
Moreover combining all these transformations, and perform them as a
similarity transformation onto the matrix
gives us
To complete the reduction of
to
, we have to
annihilate
of the
nonzero elements of the vector
. This can be done
by performing
Givens transformations
annihilating first the nonzero element in position
, followed by
annihilating the element in position
and so forth.
This results in the matrix
Let us summarize this step. In order to start the implicit procedure,
in case of
shifts, we have to perform
steps of
-without
shift onto the matrix
. Moreover we have to use these
unitary transformations to compute the first column
in an efficient way. The result
of these
-steps without shift onto
gives us again a
Hessenberg-like matrix
. The vector
, is still not a multiple of
and hence an extra
Givens transformations are needed to transform
this vector to
.
These final
Givens transformations disturb significantly the
Hessenberg-like structure of the matrix
. As a result of
a step of
, we know that the matrix will again be of
Hessenberg-like form. Hence we will develop in the next section a
chasing technique for restoring the structure.
Raphael Vandebril 2007-07-17