Under what conditions does a matrix $A$ have a square root?
Solution 1:
Over the complex numbers (or any other algebraically closed field with $\operatorname{char} k\neq 2$), every invertible matrix has a square root. In fact, over $\mathbb C$, since every invertible matrix has a logrithm, we can take a one parameter family of matrices $e^{t\log A}$, and taking $t=1/2$ yields a square root of $A$. To see the existance of matrix logrithms, it suffices to show that $I+N$ has a logrithm, where $N$ is nilpotent, and this follows from Taylor series (similar to Ted's proof of the existence of sqare roots).
Thus, we can determine if a matrix $A$ has a square root by restricting to $\displaystyle\bigcup_n \ker A^n$, which is the largest subspace on which $A$ acts nilpotently. In what follows, we will assume that $A$ is nilpotent.
Up to conjugation, $A$ is determined by its Jordan normal form. However, equivalent to JNF for a nilpotent matrix is the data $a_i'=\dim \ker A^i$ for all $i$. This is obviously an increasing sequence. Less obvious is that the sequence $(a_i)$ where $a_i=a'_i-a'_{i-1}$ is a decreasing sequence, and hence forms a partition of $\dim V$ where $A:V\to V$. We note that this data is equivalent to the data in JNF, as $a_i-a_{i+1}$ will be the number of Jordan blocks of size $i$. More explicitly, a jordan block of size $k$ corresponds to the partition $(1,1,1,1,1\ldots, 0,0,0,\ldots)$ with $k$ $1's$, and if a nilpotent matrix $A=\oplus A_i$ is written in block form where each block $A_i$ corresponds to a partition $\pi_i$, then $A$ corresponds to the partition $\pi=\sum \pi_i$, where the sum is taken termwise, e.g. $(2,1)+(1,1)+(7,4,2)=(10,6,2)$.
Moreover, $A^2$ corresponds to the partition $(a_1+a_2, a_3+a_4,\ldots, a_{2i-1}+a_{2i}, \ldots).$ Because every matrix will be conjugate to a JNF matrix and $\sqrt{SAS^{-1}}=S\sqrt{A}S^{-1}$, we see that a matrix will have a square root if and only if the corresponding partition has a "square root."
The only obstruction to a partition having a square root is if two consecutive odd entries are equal. Otherwise, we can take one (of many) square roots by replacing each $a_i$ with the pair $\lceil a_i/2 \rceil, \lfloor a_i/2 \rfloor$.
Solution 2:
Expanding on J.M.'s comment, if we look at a Jordan block $J$ of size $n$ with eigenvalue 0, then I claim that if $n>1$, $J$ has no square root. Suppose $K^2 = J$. Then $K^{2n} = J^n = 0$, but $K$ is an $n$ by $n$ matrix, so in fact $K^n=0$. If $n$ is even, we conclude that $J^{n/2}=0$ (since $K^2=J$), a contradiction since no power of $J$ less than $n$ can be 0. If $n$ is odd, then we conclude $J^{(n-1)/2} K = 0$, and multiplying $K$ on the right gives $J^{(n+1)/2} = 0$. If $n>1$ this is again a contradiction.
On the other hand, if we look at a Jordan block $J$ with eigenvalue $\lambda \ne 0$, then we may write $J = \lambda I + N$ where $N$ is a nilpotent matrix. To find a square root of $J$, expand $(\lambda I + N)^{1/2}$ using the usual Taylor series for the square root around the point $\lambda$, with an increment of $N$. Since $\lambda \ne 0$, all derivatives of the square root are defined at $\lambda$ and since $N$ is nilpotent, the Taylor series terminates and no convergence issues arise.