#include <evaluator.h>
Public Types | |
typedef std::multimap< FT, std::vector< FT >, std::greater< FT > > | container_t |
Public Member Functions | |
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::const_reverse_iterator | end () const |
container_t::reverse_iterator | begin () |
container_t::reverse_iterator | end () |
size_t | size () const |
bool | empty () const |
virtual void | eval_sol (const vector< FT > &new_sol_coord, const enumf &new_partial_dist, enumf &max_dist)=0 |
virtual void | eval_sub_sol (int offset, const vector< FT > &new_sub_sol_coord, const enumf &sub_dist)=0 |
virtual void | set_normexp (long norm_exp) |
Data Fields | |
size_t | max_sols |
EvaluatorStrategy | strategy |
bool | findsubsols |
container_t | solutions |
size_t | sol_count |
std::vector< std::pair< FT, std::vector< FT > > > | sub_solutions |
long | normExp |
Protected Member Functions | |
virtual enumf | calc_enum_bound (const FT &dist) const |
void | process_sol (const FT &dist, const vector< FT > &coord, enumf &max_dist) |
Detailed Description
class Evaluator< FT >
Evaluator stores the solutions found by enumerate, and updates the enumeration bound It thus provides an interface to the enumerator, as well as a basic interface to return solutions. Specializations will implement specific behaviour and additional interfaces.
Member Typedef Documentation
◆ container_t
typedef std::multimap<FT, std::vector<FT>, std::greater<FT> > Evaluator< FT >::container_t |
Solutions found in the lattice
Constructor & Destructor Documentation
◆ Evaluator()
|
inline |
◆ ~Evaluator()
Member Function Documentation
◆ begin() [1/2]
|
inline |
◆ begin() [2/2]
|
inline |
interface to resulting solutions
◆ calc_enum_bound()
|
inlineprotectedvirtual |
calculate enumeration bound based on dist
◆ empty()
|
inline |
◆ end() [1/2]
|
inline |
◆ end() [2/2]
|
inline |
◆ eval_sol()
|
pure virtual |
interface for the enumerator
Implemented in FastErrorBoundedEvaluator, ExactErrorBoundedEvaluator, FastEvaluator< FT >, and CallbackEvaluator< FT >.
◆ eval_sub_sol()
|
pure virtual |
Implemented in FastErrorBoundedEvaluator, ExactErrorBoundedEvaluator, and FastEvaluator< FT >.
◆ process_sol()
|
inlineprotected |
processes solution into multimap and adjusts max_dist according to strategy
◆ set_normexp()
|
inlinevirtual |
◆ size()
|
inline |
Field Documentation
◆ findsubsols
bool Evaluator< FT >::findsubsols |
◆ max_sols
size_t Evaluator< FT >::max_sols |
configuration
◆ normExp
long Evaluator< FT >::normExp |
◆ sol_count
size_t Evaluator< FT >::sol_count |
◆ solutions
container_t Evaluator< FT >::solutions |
◆ strategy
EvaluatorStrategy Evaluator< FT >::strategy |
◆ sub_solutions
std::vector<std::pair<FT, std::vector<FT> > > Evaluator< FT >::sub_solutions |
Subsolutions found in the lattice
The documentation for this class was generated from the following file:
- fplll/enum/evaluator.h