# Can you find the PseudoInverse of this matrix?

Posted 9 years ago
7421 Views
|
4 Replies
|
0 Total Likes
|
 Please execute: alpha = 4; word = 3; dict = Partition[Flatten[Tuples[IdentityMatrix[alpha], word]], (alpha*word)]; MatrixForm[dict] Do you see an easy way to get the PseudoInverse without using Mathematica's PseudoInverse function?
4 Replies
Sort By:
Posted 8 years ago
 The transpose of dict is 12 x 64, so Transpose[dict].dict is 12 x 12.
Posted 8 years ago
 Frank,alpha=4; word=3 should yield a 64 x 12 matrix. I was trying to see someone would re-invent - or already knew - what you see on page 16 of:http://youvan.com/Mathematics%20of%20the%20Genetic%20Code%20-%20submit%202%20-%20redacted.pdfThanks, Doug
Posted 8 years ago
 The product of the transpose of dict with dict is not of full rank and can't be inverted. In:= test = {{1, 2}, {3, 5}, {7, 11}}; In:= ps1 = PseudoInverse[test] Out= {{-(19/7), -(10/7), 8/7}, {12/7, 13/14, -(9/14)}} In:= ps2 = Inverse[Transpose[test].test].Transpose[test] Out= {{-(19/7), -(10/7), 8/7}, {12/7, 13/14, -(9/14)}} In:= alpha = 4; word = 3; dict = Partition[ Flatten[Tuples[IdentityMatrix[alpha], word]], (alpha*word)]; In:= Dimensions[Transpose[dict].dict] Out= {12, 12} In:= MatrixRank[Transpose[dict].dict] Out= 10 
Posted 9 years ago
 Other methods for finding the PseudoInverse require inverting the product of the matix with its transpose. That's probably much more complex than the method used by the PseudoInverse function.