plll  1.0
plll::LatticeReduction::Statistics Struct Reference

Describes lattice basis reduction statistics. More...

#include <plll.hpp>

Public Member Functions

void reset ()
 Resets the statistics.
 
 Statistics ()
 Creates a new statistics object with all values set to zero.
 

Public Attributes

unsigned long adds
 
unsigned long adds_pm1
 
unsigned long adds_pm2
 
unsigned long deepinsertions
 
unsigned long enumcalls
 
unsigned long enumfails
 
unsigned long flips
 
unsigned long sizereductions
 
unsigned long swaps
 
unsigned long trans
 
unsigned long vectorinsertions
 
unsigned long vectorinsertions_rearrange
 

Detailed Description

Describes lattice basis reduction statistics.

Describes statistics collected while reducting lattice bases. These statistics count the numer of operations done.

Definition at line 618 of file plll.hpp.

Member Data Documentation

unsigned long plll::LatticeReduction::Statistics::adds

Counts the number of times a non-zero multiple of a basis vector was added to another basis vector.

Definition at line 629 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::adds_pm1

Counts the number of times a basis vector was added or subtracted from another basis vector. This number is never larger than adds.

Definition at line 633 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::adds_pm2

Counts the number of times a basis vector was added or subtracted twice from another basis vector. This number is never larger than adds.

Definition at line 637 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::deepinsertions

Counts the number of Deep Insertions with insertion distance at least 2. (An insertion distance of 1 is counted by swaps.)

Definition at line 652 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::enumcalls

Counts the number of calls to the SVP solver.

Definition at line 656 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::enumfails

Counts the number of calls to the SVP solver where the solver did not find any vector at all. (This happens if heuristics for the enumeration radius are used which are too small.)

Definition at line 659 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::flips

Counts the number of times a basis vector was flipped, i.e. all its signs where changed.

Definition at line 641 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::sizereductions

Counts the number of applied size reductions.

Definition at line 649 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::swaps

Counts the number of times two adjacent vectors are swapped.

Definition at line 626 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::trans

Counts the number of times a 2 x 2 invertible transformation was applied to two basis vectors.

Definition at line 645 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::vectorinsertions

Counts the number of insertions of (completely) new vectors. This can be a result of enumeration or of Sampling Reduction.

Definition at line 664 of file plll.hpp.

unsigned long plll::LatticeReduction::Statistics::vectorinsertions_rearrange

Counts the number of where the basis is rearranged to move one basis vector to an earlier position. This is usually the result of an SVP solver returning a vector which already is part of the basis.

Definition at line 668 of file plll.hpp.


The documentation for this struct was generated from the following file: