5 #include "dreal/contractor/contractor.h" 6 #include "dreal/contractor/contractor_status.h" 7 #include "dreal/solver/config.h" 8 #include "dreal/solver/formula_evaluator.h" 9 #include "dreal/util/box.h" 10 #include "dreal/util/dynamic_bitset.h" 11 #include "dreal/util/optional.h" 22 Icp& operator=(
const Icp&) =
delete;
23 Icp& operator=(
Icp&&) =
delete;
25 virtual ~
Icp() =
default;
36 const std::vector<FormulaEvaluator>& formula_evaluators,
40 const Config& config()
const {
return config_; }
78 const std::vector<FormulaEvaluator>& formula_evaluators,
const Box& box,
virtual bool CheckSat(const Contractor &contractor, const std::vector< FormulaEvaluator > &formula_evaluators, ContractorStatus *cs)=0
Checks the delta-satisfiability of the current assertions.
Sum type of symbolic::Expression and symbolic::Formula.
Definition: api.cc:9
optional< DynamicBitset > EvaluateBox(const vector< FormulaEvaluator > &formula_evaluators, const Box &box, const double precision, ContractorStatus *const cs)
Evaluates each formula with box using interval arithmetic.
Definition: icp.cc:15
Abstract Class for ICP (Interval Constraint Propagation) algorithm.
Definition: icp.h:16
Icp(const Config &config)
Constructs an Icp based on config.
Definition: icp.cc:13
Represents a n-dimensional interval vector.
Definition: box.h:17
Contractor status.
Definition: contractor_status.h:13
Definition: contractor.h:30