Azzera filtri
Azzera filtri

how to solve this matrix equation?

1 visualizzazione (ultimi 30 giorni)
Owen
Owen il 18 Feb 2014
Commentato: Star Strider il 18 Feb 2014
Hello,
The product of a 3x5 matrix B and a 5x3 matrix K shall be a unit matrix.
B = [0 3 -1 2 1;-4 0 -1 -3 1;0 0 3 -2 3]
I = eye(3,3)
B*K = I
The question is how to calculate K so that all the elements in K are integers. I know there are many Ks.
Senmeis
  2 Commenti
Thomas
Thomas il 18 Feb 2014
Modificato: Thomas il 18 Feb 2014
I thought non-square matrices are non invertible.. you might have a left inverse and right inverse.. is K your right inverse?
John D'Errico
John D'Errico il 18 Feb 2014
Thomas - actually, no. This is an underdetermined linear Diophantine system. The solution is neatly resolved in the paper I linked in my answer, including showing how to know if a solution exists at all.
However, in general, suppose we ignored the integer issue. As long as the system has full row rank, then a right inverse (K is clearly the right inverse that is requested) DOES always exist, but it will not be unique for an underdetermined system.
Of course, a left inverse can NEVER exist for an n-by-m matrix with n<m, even ignoring issues of uniqueness. There cannot exist a matrix U such that U*B=eye(m), since row rank of B is no larger than n, and we have n<m. We cannot multiply B by a matrix and increase the row rank, and we know that the row rank of eye(m) is clearly m.

Accedi per commentare.

Risposte (1)

John D'Errico
John D'Errico il 18 Feb 2014
This paper sums up the answer nicely, and provides the solution in a nice readable manner.

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by