gso_interface.cpp File Reference
#include "gso_interface.h"
Functions | |
template<class FT > | |
void | adjust_radius_to_gh_bound (FT &max_dist, long max_dist_expo, int block_size, const FT &root_det, double gh_factor) |
Use Gaussian Heuristic to compute a bound on the length of the shortest vector. More... | |
template void | adjust_radius_to_gh_bound< FP_NR< double > > (FP_NR< double > &max_dist, long max_dist_expo, int block_size, const FP_NR< double > &root_det, double gh_factor) |
template void | adjust_radius_to_gh_bound< FP_NR< long double > > (FP_NR< long double > &max_dist, long max_dist_expo, int block_size, const FP_NR< long double > &root_det, double gh_factor) |
template void | adjust_radius_to_gh_bound< FP_NR< dd_real > > (FP_NR< dd_real > &max_dist, long max_dist_expo, int block_size, const FP_NR< dd_real > &root_det, double gh_factor) |
template void | adjust_radius_to_gh_bound< FP_NR< qd_real > > (FP_NR< qd_real > &max_dist, long max_dist_expo, int block_size, const FP_NR< qd_real > &root_det, double gh_factor) |
template void | adjust_radius_to_gh_bound< FP_NR< dpe_t > > (FP_NR< dpe_t > &max_dist, long max_dist_expo, int block_size, const FP_NR< dpe_t > &root_det, double gh_factor) |
template void | adjust_radius_to_gh_bound< FP_NR< mpfr_t > > (FP_NR< mpfr_t > &max_dist, long max_dist_expo, int block_size, const FP_NR< mpfr_t > &root_det, double gh_factor) |
Function Documentation
◆ adjust_radius_to_gh_bound()
template<class FT >
void adjust_radius_to_gh_bound | ( | FT & | max_dist, |
long | max_dist_expo, | ||
int | block_size, | ||
const FT & | root_det, | ||
double | gh_factor | ||
) |
Use Gaussian Heuristic to compute a bound on the length of the shortest vector.
- Parameters
-
max_dist output max_dist_expo exponent of output block_size block size root_det root determinant of lattice gh_factor factor by which to multiple bound
- Returns
- new bound if
gh_factor * GH
is shorter thanmax_dist
, otherwisemax_dist
is unchanged.
◆ adjust_radius_to_gh_bound< FP_NR< dd_real > >()
template void adjust_radius_to_gh_bound< FP_NR< dd_real > > | ( | FP_NR< dd_real > & | max_dist, |
long | max_dist_expo, | ||
int | block_size, | ||
const FP_NR< dd_real > & | root_det, | ||
double | gh_factor | ||
) |
◆ adjust_radius_to_gh_bound< FP_NR< double > >()
template void adjust_radius_to_gh_bound< FP_NR< double > > | ( | FP_NR< double > & | max_dist, |
long | max_dist_expo, | ||
int | block_size, | ||
const FP_NR< double > & | root_det, | ||
double | gh_factor | ||
) |
◆ adjust_radius_to_gh_bound< FP_NR< dpe_t > >()
template void adjust_radius_to_gh_bound< FP_NR< dpe_t > > | ( | FP_NR< dpe_t > & | max_dist, |
long | max_dist_expo, | ||
int | block_size, | ||
const FP_NR< dpe_t > & | root_det, | ||
double | gh_factor | ||
) |
◆ adjust_radius_to_gh_bound< FP_NR< long double > >()
template void adjust_radius_to_gh_bound< FP_NR< long double > > | ( | FP_NR< long double > & | max_dist, |
long | max_dist_expo, | ||
int | block_size, | ||
const FP_NR< long double > & | root_det, | ||
double | gh_factor | ||
) |
◆ adjust_radius_to_gh_bound< FP_NR< mpfr_t > >()
template void adjust_radius_to_gh_bound< FP_NR< mpfr_t > > | ( | FP_NR< mpfr_t > & | max_dist, |
long | max_dist_expo, | ||
int | block_size, | ||
const FP_NR< mpfr_t > & | root_det, | ||
double | gh_factor | ||
) |
◆ adjust_radius_to_gh_bound< FP_NR< qd_real > >()
template void adjust_radius_to_gh_bound< FP_NR< qd_real > > | ( | FP_NR< qd_real > & | max_dist, |
long | max_dist_expo, | ||
int | block_size, | ||
const FP_NR< qd_real > & | root_det, | ||
double | gh_factor | ||
) |