Finding the closest point in a root lattice

33 Views Asked by At

Let $L_n$ be a crystallographic root lattice, embedded inside $\mathbb{R}^n$. This means that $L_n$ is the $\mathbb{Z}$-span of the simple roots $\alpha_1, \ldots, \alpha_n \in \mathbb{R}^n$, which are vectors such that $a_{ij} = 2 \frac{(\alpha_i, \alpha_j)}{(\alpha_i, \alpha_i)}$ is a Cartan matrix of finite type. As a concrete example, the lattice $A_2 \subseteq \mathbb{R}^2$ is the $\mathbb{Z}$-span of two vectors $\alpha_1, \alpha_2$ of equal lengths, which are at a $120^\circ$ angle.

Given some other vector $v \in \mathbb{R}^n$, how can I find (algorithmically) the closest vector in $L_n$? Closest vector here meaning the point $x \in L_n$ such that $\lVert v - x \rVert$ is minimised. I know that this problem is NP-hard for general lattices, but root (and perhaps weight?) lattices are "sufficiently nice" enough that there must be a straightforward-ish answer I think. (The fact that the pairing $(\alpha_i, \alpha_j)$ is an integral matrix with small coefficients is my guiding intuition as to why this should be "easy" compared to the general case).