Lattice Builder Manual
Software Package for Constructing Rank1 Lattices

This class implements theoretical bounds on the length of the shortest nonzero vector in a lattice, based on the densest sphere packing in laminated lattices. More...
#include <NormaLaminated.h>
Inherits LatCommon::Normalizer.
Public Member Functions  
NormaLaminated (const MScal &m, int k, int t, double beta=1)  
Constructor for the bounds obtained for laminated lattices. More...  
double  getGamma (int j) const throw (std::out_of_range) 
Returns the value of the lattice constant \(\gamma_j\) in dimension \(j\).  
Public Member Functions inherited from LatCommon::Normalizer  
Normalizer (const MScal &m, int k, int t, std::string Name, NormType norm=L2NORM, double beta=1)  
virtual  ~Normalizer () 
Destructor.  
void  init (const MScal &m, int k, double beta) 
Initializes the bounds on the length of the shortest vector. More...  
std::string  ToString () const 
Returns this object as a string.  
NormType  getNorm () const 
Returns the norm associated with this object.  
void  setNorm (NormType norm) 
Sets the norm associated with this object to norm .  
int  getDim () const 
Returns the maximal dimension for this object.  
double &  getCst (int j) 
Returns the bound on the length of the shortest nonzero vector in dimension \(j\). More...  
Additional Inherited Members  
Static Public Attributes inherited from LatCommon::Normalizer  
static const int  MAX_DIM = 48 
Constructor for the bounds. More...  
Protected Attributes inherited from LatCommon::Normalizer  
std::string  m_name 
Name of the normalizer.  
NormType  m_norm 
Norm associated with this object.  
MScal  m_m 
Number of points of the lattice per unit volume.  
int  m_rank 
Rank of the lattice.  
int  m_maxDim 
Only elements 1 to m_maxDim (inclusive) of arrays are defined.  
double  m_beta 
Beta factor.  
double *  m_cst 
Contains the bounds on the length of the shortest nonzero vector in the lattice in each dimension.  
This class implements theoretical bounds on the length of the shortest nonzero vector in a lattice, based on the densest sphere packing in laminated lattices.
The length of vectors is computed using the \({\cal L}_2\) norm. The bounding lengths, for a lattice of rank \(k\) containing \(m\) points per unit volume in dimension \(t\), are given by \(\ell_t^* = \gamma_t m^{k/t}\) for \(t \ge k\), where the \(\gamma_t\) are the lattice constants for the best laminated lattices [3] .
LatCommon::NormaLaminated::NormaLaminated  (  const MScal &  m, 
int  k,  
int  t,  
double  beta = 1 

) 
Constructor for the bounds obtained for laminated lattices.
The lattices are those of rank \(k\), with \(m\) points per unit volume, in all dimensions \(\le t\). The bias factor beta
\(= \beta\) gives more weight to some of the dimensions. %: taking \(\beta < 1\) inflates the figure of merit by % \((1/\beta)^t\), thus weakening the requirements for large \(t\) in a % worstcase figure of merit. Restriction: \(t \le 48\).