# Pseudo inverse matrix

1. Jul 25, 2012

### umut_caglar

Hi everybody

I have a question that I have a guess for the answer but I want to be sure

I have an identity

C=A*B

where A,B,C are matrices and in general they are not square

is there a way to find A in terms of B and C by using pseudo inverse matrix or using pseudo inverse might help me in any ways for finding A.

my guess is: 'No, pseudo matrix inverse will not help in anyway'

If pseudo inverse will not work I am planning to do a gradient search for finding the entries of A (do you have any better option?)

If possible say some words about the uniqueness problem. for given A and B, C is unique, but for given B and C, is A unique

Thanks for the help

Last edited: Jul 25, 2012
2. Jul 26, 2012

### umut_caglar

Hi

I found solution to my problem, let me share it in case someone else might need it;

lets assume C=A*B
and A, B, C are matrices with dimensions $$A_{(m,n)}, B_{(n,k)}, C_{(m,k)}$$

Assume we are trying to find A for given B and C

Then the number of equations we have is m*k, one equation for each entry of C matrix
The number of unknowns are m*n, each entry in the A matrix is an unknown

So if number of equations is greater then or equal to the number of unknowns then there is a unique solution. In other words if $m*k \geq m*n$ or simply $k \geq n$ then there is a unique solution.

If there is a unique solution then

C=A*B can be re written as A=C*pinv(B)

where pinv stands for 'pseudo inverse'

if there is no unique solution; i.e $k<n$, then one need to go to gradient search and statistical methods to find possible candidates for A matrix