Given a matrix $X \in \mathbb{R}^{m \times n},$ then the **spectral** norm is defined by


$$\left \| X\right\| := \max\limits\_{i \in \{1, \dots, \min\{m,n\}\} }\sigma\_i (X)$$


whereas the **nuclear** norm is defined by


$$\left \| X \right \|\_\* := \sum\limits\_{i=1}^ {\min\{m,n\}} \sigma\_i (X)$$


It is a well-known fact that [the dual norm of the spectral norm is the nuclear norm](https://math.stackexchange.com/q/1158798). This implies that


$$\|M\| = \sup\_{\|X\|\_\*\leq 1} \langle M, X \rangle$$


where the inner product is defined by $\langle A, B \rangle := \mathop{\textrm{Tr}}(A^TB)$. Given a matrix $M \in \mathbb{R}^{n \times n},$ how to find a matrix $X^\*$ such that the following holds?


$$ X^\* \in \arg\sup\_{\|X\|\_\*\leq 1} \langle M, X \rangle$$



$\arg\max$ in the dual norm of the nuclear norm
The answer is $X^\* = uv^\*$ where $u$ and $v$ are the left and right singular vectors of $M$ associated with the largest singular value. If the largest singular value has multiplicity larger than $1$, the argsup is a convex set whose extreme points are the matrices of the form described above.


