The **generalized** `RQ`**(GRQ) factorization** of an `m`-by-`n` matrix `A` and
a `p`-by-`n` matrix `B` is given by the pair of factorizations

`A` = `RQ` and `B` = `ZTQ`

where `Q` and `Z` are respectively `n`-by-`n` and `p`-by-`p` orthogonal
matrices (or unitary matrices if `A` and `B` are complex).
`R` has the form

or

where or is upper triangular. `T` has the form

or

where is upper triangular.

Note that if `B` is square and nonsingular, the GRQ factorization of
`A` and `B` implicitly gives the `RQ` factorization of the matrix :

without explicitly computing the matrix inverse or the product .

The routine xGGRQF computes the GRQ factorization
by first computing the `RQ` factorization of `A` and then
the `QR` factorization of .
The orthogonal (or unitary) matrices `Q` and `Z`
can either be formed explicitly or
just used to multiply another given matrix in the same way as the
orthogonal (or unitary) matrix
in the `RQ` factorization
(see section 2.3.2).

The GRQ factorization can be used to solve the linear
equality-constrained least squares problem (LSE) (see (2.2) and
[page 567]GVL2).
We use the GRQ factorization of `B` and `A` (note that `B` and `A` have
swapped roles), written as

`B` = `TQ` and `A` = `ZRQ`

We write the linear equality constraints `Bx` = `d` as:

`TQx` = `d`

which we partition as:

Therefore is the solution of the upper triangular system

Furthermore,

We partition this expression as:

where , which can be computed by xORMQR (or xUNMQR).

To solve the LSE problem, we set

which gives as the solution of the upper triangular system

Finally, the desired solution is given by

which can be computed by xORMRQ (or xUNMRQ).

Tue Nov 29 14:03:33 EST 1994