Q:

Logarithm and tensor products

We define Von Neumann Entropy for a density matrix $\rho$ (hermitian, positively defined, with trace 1) as : 
$S(\rho)=-tr(\rho \ln(\rho))$
Considering $\rho = \rho_1 \bigotimes \rho_2$, I want to show that $S(\rho)=S(\rho_1)+ S(\rho_2)$. 
I do not see how the following equality can be (where $\mathbb{Id}$ stands for the identity matrix with appropriate dimension): 
$\ln(\rho_1\bigotimes \mathbb{Id})= \ln(\rho_1)\bigotimes\mathbb{Id}$
Actually I don't understand how the definition of ln for matrices applies here.
Could someone help me on this step ? 

A:

First, it is important to know that $f(\rho)$ for a Hermitian positive definite $\rho$ is given by $f(\rho)=U\mathrm{diag}(f(\lambda_1),\ldots,f(\lambda_n))U^*$, where $\rho=U\Lambda U^*$ is the eigenvalue/eigenvector decomposition of $\rho$ with $\Lambda=\mathrm{diag}(\lambda_1,\ldots,\lambda_n)$.
A useful fact: 

If $\rho_1=U_1\Lambda_1U_1^*$ and $\rho_2=U_2\Lambda_2U_2^*$ are the eigenvalue/eigenvector decompositions of $\rho_1$ and $\rho_2$, respectively, then
  $$
\rho_1\otimes\rho_2=(U_1\Lambda_1U_1^*)\otimes(U_2\Lambda_2U_2^*)
=(U_1\otimes U_2)(\Lambda_1U_1^*\otimes\Lambda_2U_2^*)
=(U_1\otimes U_2)(\Lambda_1\otimes\Lambda_2)(U_1^*\otimes U_2^*)
=(U_1\otimes U_2)(\Lambda_1\otimes\Lambda_2)(U_1\otimes U_2)^*
$$
  is the eigen-decomposition of $\rho_1\otimes\rho_2$ (we used here the mixed-product property of the Kronecker product).

If $\rho=U\Lambda U^*$ is the eigen-decomposition of (the Hermitian positive definite) $\rho$ (with $\Lambda=\mathrm{diag}(\lambda_1,\ldots,\lambda_n)$), then
$$
\rho\ln(\rho)=(U\Lambda U^*)(U\ln(\Lambda)U^*)=U\Lambda\ln(\Lambda)U^*
$$
and hence
$$
S(\rho)=-\sum_{i=1}^n\lambda_i\ln(\lambda_i).
$$
Now consider $\Lambda_1=\mathrm{diag}(\lambda_1^{(1)},\ldots,\lambda_n^{(1)})$ and $\Lambda_2=\mathrm{diag}(\lambda_1^{(2)},\ldots,\lambda_n^{(2)})$. We have
$$
\begin{split}
\ln(\Lambda_1\otimes\Lambda_2)&=\mathrm{diag}(\ln(\lambda_1^{(1)}\Lambda_2),\ldots,\ln(\lambda_1^{(1)}\Lambda_2))\\
&=\mathrm{diag}(\ln(\lambda_1^{(1)})I_n+\ln(\Lambda_2),\ldots,\ln(\lambda_n^{(1)})I_n+\ln(\Lambda_2))\\
&=\ln(\Lambda_1)\otimes I_n+I_n\otimes\ln(\Lambda_2)
\end{split}
$$
(here, we used just the "log-of-product-is-a-sum-of-logs" property of $\ln$).
Hence (using again the mixed product property)
$$
\begin{split}
(\Lambda_1\otimes\Lambda_2)(\ln(\Lambda_1\otimes\Lambda_2))
&=
(\Lambda_1\otimes\Lambda_2)(\ln(\Lambda_1)\otimes I_n+I_n\otimes\ln(\Lambda_2))\\
&=
(\Lambda_1\otimes\Lambda_2)(\ln(\Lambda_1)\otimes I_n)+(\Lambda_1\otimes\Lambda_2)(I_n\otimes\ln(\Lambda_2))\\
&=
(\Lambda_1\ln(\Lambda_1))\otimes\Lambda_2+\Lambda_1\otimes(\Lambda_2\ln(\Lambda_2))
\end{split}
$$
Therefore, with $\rho=\rho_1\otimes\rho_2$, using the useful fact, and the trace-of-a-Kronecker-product property,
$$
\begin{split}
S(\rho)&=-\mathrm{tr}((\Lambda_1\ln(\Lambda_1))\otimes\Lambda_2+\Lambda_1\otimes(\Lambda_2\ln(\Lambda_2)))\\
&=-\mathrm{tr}(\Lambda_1\ln(\Lambda_1))\mathrm{tr}(\Lambda_2)
-\mathrm{tr}(\Lambda_1)\mathrm{tr}(\Lambda_2\ln(\Lambda_2))\\
&=\mathrm{tr}(\Lambda_1)S(\rho_2)+\mathrm{tr}(\Lambda_2)S(\rho_1)\\
&=\mathrm{tr}(\rho_1)S(\rho_2)+\mathrm{tr}(\rho_2)S(\rho_1).
\end{split}
$$
If $\mathrm{tr}(\rho_i)=\mathrm{tr}(\Lambda_i)=1$ ($i=1,2$), then
$$
S(\rho)=S(\rho_1)+S(\rho_2).
$$

