Why does a Heisenberg magnet break the O(3) symmetry instead of SU(2)? As stated in the title, why does a Heisenberg magnet break the $O(3)$ symmetry while degrees of freedom of the underlying spins are $SU(2)$?
 A: The Heisenberg model:
$$H = \sum_{i \ne j} \mathbf{S}_i\cdot  \mathbf{S}_j$$
has an $O(3)$ symmetry group rather than $SU(2)$ even though it is expressed in terms of spin $\frac{1}{2}$ operators 
$$\mathbf{S}_i = [\frac{\sigma^x_i}{2}, \frac{\sigma^y_i}{2},  \frac{\sigma^z_i}{2}]$$ 
It is because the Pauli-matrices transform according to the adjoint representation of $SU(2)$, and the adjoint representation of $SU(2)$ is not faithful (rather it is a faithful representation of an $SO(3)$ subgroup) because the element
$$g_1 = \begin{pmatrix}
 -1&0\\ 
 0& -1
\end{pmatrix}$$
is represented by $1$ on the Pauli matrices, since they transform according
$$g_1 \circ \sigma^a_i =  g_1^{-1}\sigma^a_i g_1 = \sigma^a_i $$
Thus the largest $SU(2)$ symmetry subgroup of the Heisenberg model is $SO(3)$.
However, the Heisenberg model is also symmetric under the parity operator:
$$P\circ \sigma^a_i = -\sigma^a_i  $$
This operator lies outside $SU(2)$ (it has a determinant of $-1$). It combines with $SO(3)$ to form an $O(3)$ group which is the full symmetry group of the Heisenberg model.
