plll  1.0
plll::LatticeReduction::GramSchmidtInformer Class Referenceabstract

Provides information on the Gram-Schmidt coefficients. More...

#include <plll.hpp>

Public Member Functions

virtual double computeProjectionLengthD (unsigned k, unsigned b, const linalg::math_rowvector< arithmetic::Integer > &vec) const =0
 Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors. More...
 
virtual long double computeProjectionLengthLD (unsigned k, unsigned b, const linalg::math_rowvector< arithmetic::Integer > &vec) const =0
 Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors. More...
 
virtual arithmetic::Real computeProjectionLengthR (unsigned k, unsigned b, const linalg::math_rowvector< arithmetic::Integer > &vec, const arithmetic::RealContext &) const =0
 Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors. More...
 
arithmetic::Real computeProjectionLengthR (unsigned k, unsigned b, const linalg::math_rowvector< arithmetic::Integer > &vec) const
 Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors. More...
 
virtual double getGSCoefficientD (unsigned, unsigned) const =0
 Returns the (i, j) Gram-Schmidt coefficient as a double.
 
virtual long double getGSCoefficientLD (unsigned, unsigned) const =0
 Returns the (i, j) Gram-Schmidt coefficient as a long double.
 
virtual arithmetic::Real getGSCoefficientR (unsigned, unsigned, const arithmetic::RealContext &) const =0
 Returns the (i, j) Gram-Schmidt coefficient as a arithmetic::Real number.
 
arithmetic::Real getGSCoefficientR (unsigned i, unsigned j) const
 Returns the (i, j) Gram-Schmidt coefficient as a arithmetic::Real number. More...
 
virtual double getGSSqNormD (unsigned) const =0
 Returns the squared norm of the i-th Gram-Schmidt orthogonalized basis vector as a double.
 
virtual long double getGSSqNormLD (unsigned) const =0
 Returns the squared norm of the i-th Gram-Schmidt orthogonalized basis vector as a long double.
 
virtual arithmetic::Real getGSSqNormR (unsigned, const arithmetic::RealContext &) const =0
 Returns the squared norm of the i-th Gram-Schmidt orthogonalized basis vector as a arithmetic::Real number.
 
arithmetic::Real getGSSqNormR (unsigned i) const
 Returns the squared norm of the i-th Gram-Schmidt orthogonalized basis vector as a arithmetic::Real number. More...
 

Detailed Description

Provides information on the Gram-Schmidt coefficients.

An interface for a Gram-Schmidt Informer, which is a little object providing access to the Gram-Schmidt coefficients. This is for example provided to annealing callbacks.

Definition at line 678 of file plll.hpp.

Member Function Documentation

virtual double plll::LatticeReduction::GramSchmidtInformer::computeProjectionLengthD ( unsigned  k,
unsigned  b,
const linalg::math_rowvector< arithmetic::Integer > &  vec 
) const
pure virtual

Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors.

The given vector is a linear combination of basis vectors b, b + 1, ..., where the linear combination is provided in the variable vec. The result is returned as a double.

virtual long double plll::LatticeReduction::GramSchmidtInformer::computeProjectionLengthLD ( unsigned  k,
unsigned  b,
const linalg::math_rowvector< arithmetic::Integer > &  vec 
) const
pure virtual

Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors.

The given vector is a linear combination of basis vectors b, b + 1, ..., where the linear combination is provided in the variable vec. The result is returned as a long double.

virtual arithmetic::Real plll::LatticeReduction::GramSchmidtInformer::computeProjectionLengthR ( unsigned  k,
unsigned  b,
const linalg::math_rowvector< arithmetic::Integer > &  vec,
const arithmetic::RealContext  
) const
pure virtual

Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors.

The given vector is a linear combination of basis vectors b, b + 1, ..., where the linear combination is provided in the variable vec. The result is returned as a arithmetic::Real number.

arithmetic::Real plll::LatticeReduction::GramSchmidtInformer::computeProjectionLengthR ( unsigned  k,
unsigned  b,
const linalg::math_rowvector< arithmetic::Integer > &  vec 
) const
inline

Returns the squared norm of the given vector projected into the orthogonal complement of the first k-th basis vectors.

< The given vector is a linear combination of basis vectors b, b + 1, ..., where the linear combination is provided in the variable vec. The result is returned as a arithmetic::Real number.

Uses the default arithmetic::RealContext.

Definition at line 761 of file plll.hpp.

arithmetic::Real plll::LatticeReduction::GramSchmidtInformer::getGSCoefficientR ( unsigned  i,
unsigned  j 
) const
inline

Returns the (i, j) Gram-Schmidt coefficient as a arithmetic::Real number.

< Uses the default arithmetic::RealContext.

Definition at line 741 of file plll.hpp.

arithmetic::Real plll::LatticeReduction::GramSchmidtInformer::getGSSqNormR ( unsigned  i) const
inline

Returns the squared norm of the i-th Gram-Schmidt orthogonalized basis vector as a arithmetic::Real number.

< Uses the default arithmetic::RealContext.

Definition at line 751 of file plll.hpp.


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