"Inverse" of tensor product I am trying to figure out something. I have a 4-tensor $\phi_{i \, j \, k \, \ell}$ and I know that $\phi = A \otimes B$, being $A$ and $B$ two matrices. With indices, I know this:
$\phi_{i \, j \, k \, \ell} = A_{k \, i} \, B_{j \, \ell}$
Now, if I know $A$ and $B$ I can create $\phi$. How can I do the inverse? If I know $\phi$, how can I find $A$ and $B$?
I know this is not an "inverse" tensor product, but I hope I was sufficiently clear :)
 A: First of all, if you're under the impression that there is going to be a unique $A$ and $B$, let's dispel that expectation.
The equation given $\phi_{i \, j \, k \, \ell} = A_{k \, i} \, B_{j \, \ell}$ describes a "outer product" of two row vectors $A$ and $B$: $A^TB=\phi$. (We could establish the convention here of writing $A$ and $B$ as vectors by lexicographically ordering the indices.)
Using any nonzero scalar $\lambda$, you can see that $(A^T\lambda)(\lambda^{-1}B)=A^TB=\phi$, so you will have at least as many factorizations of $\phi$ as there are nonzero $\lambda$ in your field. Or even worse, if $\phi=0$, then you could write $A=0$ and use arbitrary $B$. (That is a sort of degenerate case.)
You can uncover a unique $A$ and $B$ if you know a nonzero term of $A$, however. Looking at the outer product $A^TB$, you can see that the rows of $\phi$ are just scalar multiples of the row vector $B$. Let's say you know $\phi$ and one nonzero entry of $A$, say $A_{11}$ for the sake of an example. You could then go to the row of $\phi$ corresponding to multiplication by $A_{11}$ (row $\phi_{11}$ given by entries $\phi_{1,j,1,\ell}$) and then divide all entries by $A_{11}$, uncovering exactly what $B$ is. 
The columns of $\phi$ are also scalar multiples of $A^T$. By taking a nonzero entry of $B$ (assuming there is one, otherwise we are in the degenerate case), you can analogously go to the column corresponding to the nonzero entry of $B$ and divide through by the entry to retrieve $A^T$.
