Sphere Detector - Introduction
The Maximum Likelihood (ML) decision estimate of a MIMO system $\mathbf{y} \!=\! \mathbf{H s} \!+\! \mathbf{n}$ is given by $\hat{\mathbf{s}}_{\mathrm{ML}} \!= \arg\min_{\forall \mathbf{s}} \|\mathbf{y} \!-\! \mathbf{H s}\|^2.$ The channel matix $\mathbf{H}$ is of size $N_{\mathrm{rx}}\!\!\times\! N_{\mathrm{tx}}$. The use of $N_{\mathrm{tx}}$ transmit antennas and $M_{\mathrm{b}}$ bit per symbol, leads to $2^{M_{\mathrm{b}} · N_{\mathrm{tx}}}$ possible vectors $\mathbf{s}$ to be considered at the receiver. An exhaustive calculation according to this formula is not feasible for large numbers of possible vectors.
The QR-decomposition $\mathbf{H} \!=\! \mathbf{Q} \! \cdot \! \mathbf{R}$, in which $\mathbf{Q}$ is unitary and $\mathbf{R}$ an upper triangular matrix, and $\mathbf{z}_{\mathrm{ZF}} \!=\! \left( \mathbf{H}^H \mathbf{H} \right)^{\!-1}\! \mathbf{H}^H \mathbf{y}$ yields the equivalent rule $$\hat{\mathbf{s}}_{\mathrm{ML}} = \arg\min_{\forall \mathbf{s}} \|\mathbf{R} \!\cdot\! \left( \mathbf{s} \!-\! \mathbf{z}_{\mathrm{ZF}} \right)\|^2.$$ This formula allows to run a Sphere Detection (SD) algorithm to find $\hat{\mathbf{s}}_{\mathrm{SD}} \!=\! \hat{\mathbf{s}}_{\mathrm{ML}}$ in a more efficient way.
The hypothesis $\mathbf{s}$ that has the smallest distance to $\mathbf{z}_{\mathrm{ZF}}$ with respect to the covariance matrix $\left( \mathbf{H}^H \mathbf{H} \right)^{\!-1} \!\!=\! \left( \mathbf{R}^H \mathbf{R} \right)^{\!-1}$ is to be found. Hereby, $\mathbf{z}_{\mathrm{ZF}}$ is the center of a search sphere. The covariance matrix incorporates the noise vector correlation in $\mathbf{z}_{\mathrm{ZF}} \!=\! \mathbf{s} \!+\! \left( \mathbf{H}^H \mathbf{H} \right)^{\!-1}\! \mathbf{H}^H \mathbf{n}$.
For the sphere detection estimate, it holds $\|\mathbf{R} \!\cdot\! \left( \hat{\mathbf{s}}_{\mathrm{SD}} \!-\! \mathbf{z}_{\mathrm{ZF}} \right)\|^2 < \|\mathbf{R} \!\cdot\! \left( \mathbf{s} \!-\! \mathbf{z}_{\mathrm{ZF}} \right)\|^2 \quad \forall \mathbf{s} \neq \hat{\mathbf{s}}_{\mathrm{SD}}. % >$

For any sphere radius $r_{\mathrm{sphere}}$, that assures at least one $\mathbf{s}$ remaining inside the sphere, all hypothesis on the outside can be dropped. Furthermore, as soon as any $\mathbf{s}_0$ inside is identified, the search radius can be shrunk to $r_{\mathrm{sphere}} \!=\! \|\mathbf{R} \!\cdot\! \left( \mathbf{s}_0 \!-\! \mathbf{z}_{\mathrm{ZF}} \right)\|$.