numvect.h File Reference
#include "fplll/nr/nr.h"
#include <vector>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  NumVect< T >
 

Functions

template<class T >
FPLLL_BEGIN_NAMESPACE void extend_vect (vector< T > &v, int size)
 
template<class T >
void reverse_by_swap (vector< T > &v, int first, int last)
 
template<class T >
void rotate_by_swap (vector< T > &v, int first, int middle, int last)
 
template<class T >
void rotate_left_by_swap (vector< T > &v, int first, int last)
 
template<class T >
void rotate_right_by_swap (vector< T > &v, int first, int last)
 
template<class T >
ostream & operator<< (ostream &os, const vector< T > &v)
 
template<class T >
istream & operator>> (istream &is, vector< T > &v)
 
template<class T >
void gen_zero_vect (vector< T > &v, int n)
 
template<class T >
ostream & operator<< (ostream &os, const NumVect< T > &v)
 
template<class T >
istream & operator>> (istream &is, NumVect< T > &v)
 
template<class T >
void dot_product (T &result, const NumVect< T > &v1, const NumVect< T > &v2, int beg, int n)
 
template<class T >
void dot_product (T &result, const NumVect< T > &v1, const NumVect< T > &v2, int n)
 
template<class T >
void dot_product (T &result, const NumVect< T > &v1, const NumVect< T > &v2)
 
template<class T >
void squared_norm (T &result, const NumVect< T > &v)
 

Function Documentation

◆ dot_product() [1/3]

template<class T >
void dot_product ( T &  result,
const NumVect< T > &  v1,
const NumVect< T > &  v2 
)
inline

◆ dot_product() [2/3]

template<class T >
void dot_product ( T &  result,
const NumVect< T > &  v1,
const NumVect< T > &  v2,
int  beg,
int  n 
)
inline

Compute the truncated dot product between tow Numvect using coefficients [beg, n). Constraint: n > beg.

◆ dot_product() [3/3]

template<class T >
void dot_product ( T &  result,
const NumVect< T > &  v1,
const NumVect< T > &  v2,
int  n 
)
inline

◆ extend_vect()

template<class T >
FPLLL_BEGIN_NAMESPACE void extend_vect ( vector< T > &  v,
int  size 
)

Extends the size of the given vector.

◆ gen_zero_vect()

template<class T >
void gen_zero_vect ( vector< T > &  v,
int  n 
)

Generate a zero vector.

◆ operator<<() [1/2]

template<class T >
ostream & operator<< ( ostream &  os,
const NumVect< T > &  v 
)

Prints a NumVect on stream os.

◆ operator<<() [2/2]

template<class T >
ostream & operator<< ( ostream &  os,
const vector< T > &  v 
)

Print a vector on stream os.

◆ operator>>() [1/2]

template<class T >
istream & operator>> ( istream &  is,
NumVect< T > &  v 
)

Reads a NumVect from stream is.

◆ operator>>() [2/2]

template<class T >
istream & operator>> ( istream &  is,
vector< T > &  v 
)

Reads a vector from stream is.

◆ reverse_by_swap()

template<class T >
void reverse_by_swap ( vector< T > &  v,
int  first,
int  last 
)

Reverses a vector by consecutive swaps.

◆ rotate_by_swap()

template<class T >
void rotate_by_swap ( vector< T > &  v,
int  first,
int  middle,
int  last 
)

Rotates a vector by consecutive swaps.

◆ rotate_left_by_swap()

template<class T >
void rotate_left_by_swap ( vector< T > &  v,
int  first,
int  last 
)

Rotates a vector left-wise by consecutive swaps.

◆ rotate_right_by_swap()

template<class T >
void rotate_right_by_swap ( vector< T > &  v,
int  first,
int  last 
)

Rotates a vector right-wise by consecutive swaps.

◆ squared_norm()

template<class T >
void squared_norm ( T &  result,
const NumVect< T > &  v 
)
inline