CBMC
|
Computes a satisfying assignment of minimal cost according to a const function using incremental SAT. More...
#include <prop_minimize.h>
Classes | |
struct | objectivet |
Public Types | |
typedef long long signed int | weightt |
typedef std::map< weightt, std::vector< objectivet > > | objectivest |
Public Member Functions | |
prop_minimizet (prop_convt &_prop_conv, message_handlert &message_handler) | |
void | operator() () |
Try to cover all objectives. More... | |
std::size_t | number_satisfied () const |
unsigned | iterations () const |
std::size_t | size () const |
void | objective (const literalt condition, const weightt weight=1) |
Add an objective. More... | |
Public Attributes | |
objectivest | objectives |
Protected Member Functions | |
literalt | constraint () |
Build constraints that require us to improve on at least one goal, greedily. More... | |
void | fix_objectives () |
Fix objectives that are satisfied. More... | |
Protected Attributes | |
unsigned | _iterations = 0 |
std::size_t | _number_satisfied = 0 |
std::size_t | _number_objectives = 0 |
weightt | _value = 0 |
prop_convt & | prop_conv |
messaget | log |
objectivest::reverse_iterator | current |
Computes a satisfying assignment of minimal cost according to a const function using incremental SAT.
Definition at line 25 of file prop_minimize.h.
typedef std::map<weightt, std::vector<objectivet> > prop_minimizet::objectivest |
Definition at line 68 of file prop_minimize.h.
typedef long long signed int prop_minimizet::weightt |
Definition at line 51 of file prop_minimize.h.
prop_minimizet::prop_minimizet | ( | prop_convt & | _prop_conv, |
message_handlert & | message_handler | ||
) |
Definition at line 19 of file prop_minimize.cpp.
|
protected |
Build constraints that require us to improve on at least one goal, greedily.
Definition at line 65 of file prop_minimize.cpp.
|
protected |
Fix objectives that are satisfied.
Definition at line 42 of file prop_minimize.cpp.
|
inline |
Definition at line 39 of file prop_minimize.h.
|
inline |
Definition at line 34 of file prop_minimize.h.
Add an objective.
Definition at line 27 of file prop_minimize.cpp.
void prop_minimizet::operator() | ( | void | ) |
Try to cover all objectives.
Definition at line 97 of file prop_minimize.cpp.
|
inline |
Definition at line 44 of file prop_minimize.h.
|
protected |
Definition at line 72 of file prop_minimize.h.
|
protected |
Definition at line 74 of file prop_minimize.h.
|
protected |
Definition at line 73 of file prop_minimize.h.
|
protected |
Definition at line 75 of file prop_minimize.h.
|
protected |
Definition at line 82 of file prop_minimize.h.
|
protected |
Definition at line 77 of file prop_minimize.h.
objectivest prop_minimizet::objectives |
Definition at line 69 of file prop_minimize.h.
|
protected |
Definition at line 76 of file prop_minimize.h.