ErrorBoundedEvaluator Class Referenceabstract
#include <evaluator.h>
Public Member Functions | |
| 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 | |
| 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
ErrorBoundEvaluator provides an extra interface to provide information about the accuracy of solutions.
Constructor & Destructor Documentation
◆ ErrorBoundedEvaluator()
|
inline |
◆ ~ErrorBoundedEvaluator()
|
inlinevirtual |
Member Function Documentation
◆ get_max_error()
|
pure virtual |
Computes max_error such that normOfSolution^2 <= (1 + max_error) * lambda_1(L)^2. The default implementation might fail (i.e. return false).
Implemented in FastErrorBoundedEvaluator, and ExactErrorBoundedEvaluator.
◆ get_max_error_aux()
| bool ErrorBoundedEvaluator::get_max_error_aux | ( | const FP_NR< mpfr_t > & | max_dist, |
| bool | boundOnExactVal, | ||
| FP_NR< mpfr_t > & | maxDE | ||
| ) |
◆ init_delta_def()
| FPLLL_BEGIN_NAMESPACE void ErrorBoundedEvaluator::init_delta_def | ( | int | prec, |
| double | rho, | ||
| bool | withRoundingToEnumf | ||
| ) |
Field Documentation
◆ d
| int ErrorBoundedEvaluator::d |
◆ eval_mode
| EvaluatorMode ErrorBoundedEvaluator::eval_mode |
Configuration
◆ input_error_defined
| bool ErrorBoundedEvaluator::input_error_defined |
◆ max_dm_u
| vector<FP_NR<mpfr_t> > ErrorBoundedEvaluator::max_dm_u |
◆ max_dr_diag
| vector<FP_NR<mpfr_t> > ErrorBoundedEvaluator::max_dr_diag |
◆ mu
◆ r
The documentation for this class was generated from the following files:
- fplll/enum/evaluator.h
- fplll/enum/evaluator.cpp
Public Member Functions inherited from
1.9.4