Skip to main content
. 2021 Nov 14;23(11):1509. doi: 10.3390/e23111509
Algorithm 1: Random Integer Lattice Generation
Require: Dimension n, large integer M
Ensure: n-dim random integer lattice L with det(L)M
 Step 1: Generate h11,,hn1,n1
 D0=1
 for i=1 to n1 do
     ji=1, si=1
     choose yi[0,1] uniformly
     while si<ζ(n+1i)·yi do
         ji=ji+1
         si=si+ji(n+1i)
     end while
     Di=Di1·ji
     set hii=ji
 end for
 Step 2: Generate hnn
 choose y[0,1] uniformly
 z=y1/n
 z=z·MDn1
 set hnn=z
 Step 3: Generate hij(ij)
 for j=1 to n do
     for i=1 to j1 do
         choose hij[0,hjj) uniformly
     end for
     for i=j+1 to n do
         set hij=0
     end for
 end for
 Step 4: Set H=(hij), and output L(H)