Lattice vectors and modular arithmetic

414 Views Asked by At

Consider a set of positive integers $q,p_1,\dots,p_n$, all greater than 1 and having no common factors. Let $x$ be the vector $(p_1,\dots,p_n)^T\in\mathbb{Z}^n$. Define a lattice $$L:= \left\{a_0 x + q\sum_{k=1}^n a_k\hat{e}_k \: : a_k\in \mathbb{Z}\right\}\subset\mathbb{R}^n$$ where $\hat{e}_i$ is a standard basis vector for $\mathbb{R}^n$.

Question: Is there a way to find the primitive basis vectors of this lattice?

Example: for $(q,p_1,p_2)=(55,13,31)$ the basis vectors are $v=(-5,5)$ and $v=(7,4)$ as shown below.

Lattice

I have been able to work it out only by brute force and am struggling to see the pattern.

The only thing I have been able to calculate directly is that the matrix $M$ whose rows are the primitive basis vectors $v$ should have determinant $|M|=q^{n-1}$.