To construct the basis samples, our algorithm starts by sampling single vectors from the surface of the sphere to be candidates for the crystal lattice basis vector a * (the process is repeated in parallel for b * and c * , but we describe it only for a * for simplicity). We then choose the most promising candidates for a * and use them to construct several candidate bases by attaching b and c using the provided structure of the crystal lattice basis M ⋆ 0 . We formalize this as follows.