#include <poly.h>
Public Member Functions | |
virtual string | getCVarList () const |
Get the list of variables in the reference constraint. | |
virtual TypeDecl * | infer (const TypeDecl &typedecl, const string &varlist) |
Inference for a given type declaration with respect to a given list of variables. | |
virtual bool | is_check_complete (const TypeDecl &td1, const TypeDecl &td2) const |
Return true if checking is complete for the provided type declarations. | |
virtual bool | isCFeasible () const |
Is the reference constraint feasible?. | |
LP2Check (const string &constraint="") | |
Constructor. | |
virtual void | set (const string &constraint) |
Set the reference constraint. | |
virtual | ~LP2Check () |
Destructor. | |
Protected Member Functions | |
Type | _infer (TypeValues tp, size_t idx) |
Infer the type by solving a linear programming problem. | |
bool | _parse (LinearSystem *m) |
Parse a linear system into the lpsolve format. | |
virtual void | clear () |
Clear data. | |
Protected Attributes | |
string | cvars |
Constraint variables. | |
bool | feasible |
Is constraint satisfiable? | |
lprec * | lp |
Linear programming problem (nonstrict). | |
LinearSystem * | ls |
Constraint in linear system form. | |
REAL * | row |
Row in lpsolve format. |
LP2Check is a linear programming based version of LPCheck. Based on LPSolve: http://sourceforge.net/projects/lpsolve
clpt::LP2Check::LP2Check | ( | const string & | constraint = "" |
) | [inline] |
Constructor.
virtual clpt::LP2Check::~LP2Check | ( | ) | [inline, virtual] |
Destructor.
Type clpt::LP2Check::_infer | ( | TypeValues | tp, | |
size_t | idx | |||
) | [inline, protected] |
Infer the type by solving a linear programming problem.
bool clpt::LP2Check::_parse | ( | LinearSystem * | m | ) | [inline, protected] |
Parse a linear system into the lpsolve format.
virtual void clpt::LP2Check::clear | ( | ) | [inline, protected, virtual] |
Clear data.
virtual string clpt::LP2Check::getCVarList | ( | ) | const [inline, virtual] |
virtual TypeDecl* clpt::LP2Check::infer | ( | const TypeDecl & | typedecl, | |
const string & | varlist | |||
) | [inline, virtual] |
Inference for a given type declaration with respect to a given list of variables.
Implements clpt::ISolve.
virtual bool clpt::LP2Check::isCFeasible | ( | ) | const [inline, virtual] |
virtual void clpt::LP2Check::set | ( | const string & | constraint | ) | [inline, virtual] |
string clpt::LP2Check::cvars [protected] |
Constraint variables.
bool clpt::LP2Check::feasible [protected] |
Is constraint satisfiable?
lprec* clpt::LP2Check::lp [protected] |
Linear programming problem (nonstrict).
LinearSystem* clpt::LP2Check::ls [protected] |
Constraint in linear system form.
REAL* clpt::LP2Check::row [protected] |
Row in lpsolve format.