Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have the following tensor (takes a vector of length $m$ and returns a matrix $m \times m$):

$C(y) = A \operatorname{diag}(A^T y ) A^{-1}$

for some invertible matrix $A$ of size $m \times m$ ($y$ is of size $m \times 1$).

Let's say I have $C(y)$ (a way to compute it, etc.) for any $y$ I want - is there a way to solve for $A$? (i.e. identify what $A$ is.)

share|cite|improve this question
@anon: the problem is that $\mathbf y$ is fixed, and that the same similarity matrix $A$ must both diagonalize $C(\mathbf y)$ and produce the spectal-vector $\lambda$ from $\mathbf y$. – Niel de Beaudrap Sep 24 '11 at 22:10
@anon: that's a clearer remark to me than your previous one, and upon reflection it seems essentially complete. I spent some time writing a full solution analogous to your comment; but you should turn your comment into an answer to claim the credit. – Niel de Beaudrap Sep 24 '11 at 23:08
Hm, just because $C=A^{-1}LA$ doesn't mean $A$'s columns are eigenvectors. [Thus I've deleted my comments and answer.] I'll have to see if the original idea can be augmented a bit. (And I do realize $C$ is diagonalizable precisely when $y\ne0$.) – anon Sep 25 '11 at 1:40
Note that $\operatorname{Tr} C(y)=\sum_i(A^Ty)_i$ and $\det C(y)=\prod_i(A^Ty)_i$. For instance, by using the canonical basis vectors for $y$, you can get the sums and products of the rows of $A$. – joriki Sep 25 '11 at 3:03
I think it would be helpful to further discuss the answers that have been deleted. Since not everyone can see the deleted answers, it might help if you undelete them. @Niel, I assume you deleted your answer because the argument for dispensing with the permutations was wrong? Still it solves the problem up to permutations. dotproduct, I don't think your argument against using a single $y$ is valid. The fact that $y=0$ obviously doesn't help doesn't imply that $A$ can't be reconstructed using a single $y$ -- we do get a full matrix for a single $y$. – joriki Sep 25 '11 at 3:37

Posting my comment: I assume that both $y$ and $C(y)$ are givens. If we decompose $C=Q\Lambda Q^{-1}$ (with $Q$ normalized) and convert $\Lambda$ to the vector $\lambda$ then we have $\lambda=A^Ty$. Note that the matrix in the eigendecomposition doesn't have to be normalized so we have $A=Q\mathrm{diag}(v)$ for some vector of scaling factors $v$. Then $\lambda=\mathrm{diag}(v)Q^Ty$, hence $v$ can be solved for componentwise by dividing the components of $\lambda$ by those of $Q^Ty$, thus in effect solving for $A$.

share|cite|improve this answer
this sounds a bit strange to me - does that mean that a single $y$ can determine $A$ altogether? In general, I was making the assumption that $C(y)$ is known as a tensor, not for a single $y$. If we repeat your procedure for different $y$s, we will always get the same $A$? – distbeta Sep 25 '11 at 0:19
also, unfortunately, I am not sure I fully understand your answer. why is $A = Q \mathrm{diag}(v)$ for some $v$? – distbeta Sep 25 '11 at 0:27
just to make my question about $y$ more clear: if we choose $y = 0$, then $C(y) = 0$. This will clearly not lead to the right answer for $A$. – distbeta Sep 25 '11 at 0:29
Right, you have to pick a reasonable $y$. Picking $y$ with distinct non-zero entries should work. You can see it as $C(y)$ have eigenvalues $A^T y$ and the eigenvectors being the columns of $A$ - but when we get an eigenvalue decomposition of $C(y)$ the eigenvectors we find will be mutliples of the columns of $A$, hence $A = Q \operatorname{diag}(v)$. – Calle Feb 23 '12 at 2:56

I think you may need Hadamard product.

Here is an incomplete answer.

Denote the $z\in\mathbb{R}^m$ with $z_i=[C(y)]_{ii}$. Using Hadamard product, $C(y)=A\mathrm{diag}(A^Ty)A^{-1}$ can be rewritten as $$z=[A\circ(A^{-1})^T]A^Ty$$ Since $y$ and $z$ is known, you need solve $B=[A\circ(A^{-1})^T]A^T$ from $By=z$. $B$ can be solved as $$B=B_1+B_0$$ where $B_1=(y^Ty)^{-1}zy^T\in\mathbb{R}^{m\times m}$ and $B_0y=0$. You may need SVD to construct $B_0$. Obviously the solution to $B$ is not unique.

After obtaining $B$, $A$ might be able to be extracted from $B$. But I haven't figure out this step yet:)

share|cite|improve this answer
You're trying to reconstruct $m^2$ numbers from $2m$ numbers -- that can't work. – joriki Sep 25 '11 at 4:19
Yes, so the solution is not unique. – Shiyu Sep 25 '11 at 5:18
No. You're only using the diagonal entries of $C(y)$ for a single $y$ -- how can you say the solution is not unique just because you can't uniquely reconstruct it from this very reduced information? – joriki Sep 25 '11 at 5:54
You are correct. But I mean the solution using the above method is not unique. The solution to the original problem at least is contained in the infinite solutions to the above problem. I'm not sure if the above is a proper method because extracting $A$ from $B$ still is unsolved. – Shiyu Sep 25 '11 at 13:30

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.