ExactErrorBoundedEvaluator Class Reference
#include <evaluator.h>
Public Member Functions | |
ExactErrorBoundedEvaluator (int d, MatGSOInterface< Z_NR< mpz_t >, FP_NR< mpfr_t > > &_gso, EvaluatorMode eval_mode, size_t nr_solutions=1, EvaluatorStrategy update_strategy=EVALSTRATEGY_BEST_N_SOLUTIONS, bool find_subsolutions=false) | |
virtual | ~ExactErrorBoundedEvaluator () |
virtual bool | get_max_error (FP_NR< mpfr_t > &max_error, const FP_NR< mpfr_t > &sol_dist) |
virtual void | eval_sol (const vector< FP_NR< mpfr_t > > &new_sol_coord, const enumf &new_partial_dist, enumf &max_dist) |
virtual void | eval_sub_sol (int offset, const vector< FP_NR< mpfr_t > > &new_sub_sol_coord, const enumf &sub_dist) |
Z_NR< mpz_t > | exact_sol_dist (const vector< FP_NR< mpfr_t > > &sol_coord) |
Z_NR< mpz_t > | exact_subsol_dist (int offset, const vector< FP_NR< mpfr_t > > &sol_coord) |
Public Member Functions inherited from ErrorBoundedEvaluator | |
ErrorBoundedEvaluator (int dim, const Matrix< FP_NR< mpfr_t > > &mmu, const Matrix< FP_NR< mpfr_t > > &mr, EvaluatorMode evalmode, size_t nr_solutions=1, EvaluatorStrategy update_strategy=EVALSTRATEGY_BEST_N_SOLUTIONS, bool find_subsolutions=false) | |
virtual | ~ErrorBoundedEvaluator () |
void | init_delta_def (int prec, double rho, bool withRoundingToEnumf) |
virtual bool | get_max_error (FP_NR< mpfr_t > &max_error, const FP_NR< mpfr_t > &sol_dist)=0 |
bool | get_max_error_aux (const FP_NR< mpfr_t > &max_dist, bool boundOnExactVal, FP_NR< mpfr_t > &maxDE) |
Public Member Functions inherited from Evaluator< FP_NR< mpfr_t > > | |
Evaluator (size_t nr_solutions=1, EvaluatorStrategy update_strategy=EVALSTRATEGY_BEST_N_SOLUTIONS, bool find_subsolutions=false) | |
virtual | ~Evaluator () |
container_t::const_reverse_iterator | begin () const |
container_t::reverse_iterator | begin () |
container_t::const_reverse_iterator | end () const |
container_t::reverse_iterator | end () |
size_t | size () const |
bool | empty () const |
virtual void | eval_sol (const vector< FP_NR< mpfr_t > > &new_sol_coord, const enumf &new_partial_dist, enumf &max_dist)=0 |
virtual void | eval_sub_sol (int offset, const vector< FP_NR< mpfr_t > > &new_sub_sol_coord, const enumf &sub_dist)=0 |
virtual void | set_normexp (long norm_exp) |
Data Fields | |
Z_NR< mpz_t > | int_max_dist |
Data Fields inherited from ErrorBoundedEvaluator | |
EvaluatorMode | eval_mode |
int | d |
const Matrix< FP_NR< mpfr_t > > & | mu |
const Matrix< FP_NR< mpfr_t > > & | r |
bool | input_error_defined |
vector< FP_NR< mpfr_t > > | max_dr_diag |
vector< FP_NR< mpfr_t > > | max_dm_u |
Data Fields inherited from Evaluator< FP_NR< mpfr_t > > | |
size_t | max_sols |
EvaluatorStrategy | strategy |
bool | findsubsols |
container_t | solutions |
size_t | sol_count |
std::vector< std::pair< FP_NR< mpfr_t >, std::vector< FP_NR< mpfr_t > > > > | sub_solutions |
long | normExp |
Additional Inherited Members | |
Public Types inherited from Evaluator< FP_NR< mpfr_t > > | |
typedef std::multimap< FP_NR< mpfr_t >, std::vector< FP_NR< mpfr_t > >, std::greater< FP_NR< mpfr_t > > > | container_t |
Protected Member Functions inherited from Evaluator< FP_NR< mpfr_t > > | |
virtual enumf | calc_enum_bound (const FP_NR< mpfr_t > &dist) const |
void | process_sol (const FP_NR< mpfr_t > &dist, const vector< FP_NR< mpfr_t > > &coord, enumf &max_dist) |
Detailed Description
ExactEvaluator stores the best solution found by enumerate. The result is guaranteed, but the the evaluation of new solutions is longer.
Constructor & Destructor Documentation
◆ ExactErrorBoundedEvaluator()
|
inline |
◆ ~ExactErrorBoundedEvaluator()
|
inlinevirtual |
Member Function Documentation
◆ eval_sol()
|
virtual |
interface for the enumerator
Implements Evaluator< FP_NR< mpfr_t > >.
◆ eval_sub_sol()
|
virtual |
Implements Evaluator< FP_NR< mpfr_t > >.
◆ exact_sol_dist()
Z_NR< mpz_t > ExactErrorBoundedEvaluator::exact_sol_dist | ( | const vector< FP_NR< mpfr_t > > & | sol_coord | ) |
◆ exact_subsol_dist()
Z_NR< mpz_t > ExactErrorBoundedEvaluator::exact_subsol_dist | ( | int | offset, |
const vector< FP_NR< mpfr_t > > & | sol_coord | ||
) |
◆ get_max_error()
|
virtual |
Sets max_error to 0: the result is guaranteed.
Implements ErrorBoundedEvaluator.
Field Documentation
◆ int_max_dist
Z_NR<mpz_t> ExactErrorBoundedEvaluator::int_max_dist |
The documentation for this class was generated from the following files:
- fplll/enum/evaluator.h
- fplll/enum/evaluator.cpp