# Is there a way to extract the diagonal from a matrix with simple matrix operations

I have a square matrix A. Is there a way I can apply operations like addition, subtraction, matrix multiplication, matrix inverse and transpose to get the diagonal of the matrix. For example having: $$\begin{pmatrix}1&2\\3&4\end{pmatrix}$$ I would like to get $(1,4)$.

P.S. based on the conversation with mvw, here is a better description:

I am on board of an alien space ship and the board computer allows only matrix operations but access to the individual matrix elements is blocked. I can only use addition, subtraction, matrix multiplication, matrix inverse and transpose. No access to individual row/column/element. I can only create matrices of any dimension $(1 x n)$, $(n x 1)$, $(n x 2n)$ that have all zeros or all ones. Is there a way for me to get a diagonal vector?

• What do you mean by extracting? Something like $(a_{11},a_{22},..,a_{nn})$ denotes the diagonal entries... – YoTengoUnLCD Nov 13 '15 at 20:33
• @YoTengoUnLCD yes. I want to get a vector of diagonal elements from the square matrix. – Salvador Dali Nov 13 '15 at 20:46
• @mvw something similar :-). I can only use addition, subtraction, matrix multiplication, matrix inverse and transpose. No access to individual row/column/element. I can't even create other matrices. I am wondering whether I can somehow get the diagonal vector from my matrix. – Salvador Dali Nov 13 '15 at 20:51
• So only the matrix $A$ is in the game? The best you can get is a diagonal matrix, because all of the above operations will create $n\times n$ matrices. – mvw Nov 13 '15 at 20:57
• @mvm thanks. the best you can get is diagonal matrix is an excellent observation. P.S. I can also create any matrix with all zeros and with all ones. – Salvador Dali Nov 13 '15 at 21:11

Note: This solution is not working for the updated question. $$D = \text{diag}(a_{11}, \ldots, a_{nn}) = \sum_{i=1}^n P_{(i)} A P_{(i)}$$ where $P_{(i)}$ is the projection on the $i$-th coordinate: $$(P_{(i)})_{jk} = \delta_{ij} \delta_{jk} \quad (i,j,k \in \{1,\ldots,n\})$$ and $\delta$ is the Kronecker delta ($1$ for same index values, otherwise $0$).

Transforming the diagonal matrix $D$ into a row vector can be done by $$d = u^T D$$ where each of the $n$ components of $u$ is $1$. $$u = (1,1,\ldots,1)^T$$ Combining both gives $$d = \sum_i u^T P_{(i)} A P_{(i)} = \sum_i e_i^T A P_{(i)}$$ where $e_i$ is the $i$-th canonical base vector.

Example:

octave> A, P1, P2, u
A =
1   2
3   4

P1 =
1   0
0   0

P2 =
0   0
0   1

u =
1
1

octave> u'*(P1*A*P1+P2*A*P2)
ans =
1   4


Absolutely! Although mvw's answer is correct, it might be a little more than you are looking for. Such a technique is actually a really big theorem in Linear Algebra. All we do is apply elementary row operations to you matrix: $$\begin{bmatrix} 1 & 2 \\ 3 & 4 \\ \end{bmatrix} \rightarrow_{(1/3)R_2} \begin{bmatrix} 1 & 2 \\ 1 & 4/3 \\ \end{bmatrix} \rightarrow_{R_2 - R_1} \begin{bmatrix} 1 & 2 \\ 0 & (4/3)-(6/3) \\ \end{bmatrix} \rightarrow \begin{bmatrix} 1 & 2 \\ 0 & (-2/3)\\ \end{bmatrix} \rightarrow_{(-6)R_2} \begin{bmatrix} 1 & 2 \\ 0 & 4 \\ \end{bmatrix}$$ From here, it should seem like a sinch to comlplete the steps. We note that each of the row operations is expressible as an elementary matrix of type, 1, 2, or 3.

• Note, this isn't a complete solution, you still have to get rid of the $2$ in the $(1,2)$ entry. – 9301293 Nov 13 '15 at 20:41
• I need to get a vector from the matrix, here you create a matrix with all elements are zero except of diagonal. – Salvador Dali Nov 13 '15 at 20:46
• @SalvadorDali note that if you multiply your diagonal matrix by $[1,1]^T$ then you have your answer. – 9301293 Nov 13 '15 at 20:55
• And since that is two matrices multiplied together, it follows the operations you are allowed. – 9301293 Nov 13 '15 at 20:57
• I”m skeptical. Please show me a sequence of elementary row operations that transforms $\pmatrix{0&1\\1&0}$ into $\pmatrix{0&0\\0&0}$. Also, if you ever develop a zero along the main diagonal during this process, as you will for a singular matrix, there’s a good chance that you won’t be able to recover the original element in that position. – amd Sep 17 '16 at 2:11