how to solve this matrix equation?
1 次查看(过去 30 天)
显示 更早的评论
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 个评论
John D'Errico
2014-2-18
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.
回答(1 个)
John D'Errico
2014-2-18
This paper sums up the answer nicely, and provides the solution in a nice readable manner.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!