clpt::LP2Check Class Reference

Implements the LP2Check procedure. More...

#include <poly.h>

Inheritance diagram for clpt::LP2Check:

Inheritance graph
[legend]
Collaboration diagram for clpt::LP2Check:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual string getCVarList () const
 Get the list of variables in the reference constraint.
virtual TypeDeclinfer (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).
LinearSystemls
 Constraint in linear system form.
REAL * row
 Row in lpsolve format.


Detailed Description

Implements the LP2Check procedure.

LP2Check is a linear programming based version of LPCheck. Based on LPSolve: http://sourceforge.net/projects/lpsolve


Constructor & Destructor Documentation

clpt::LP2Check::LP2Check ( const string &  constraint = ""  )  [inline]

Constructor.

virtual clpt::LP2Check::~LP2Check (  )  [inline, virtual]

Destructor.


Member Function Documentation

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]

Get the list of variables in the reference constraint.

Implements clpt::ISolve.

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::is_check_complete ( const TypeDecl td1,
const TypeDecl td2 
) const [inline, virtual]

Return true if checking is complete for the provided type declarations.

Implements clpt::ISolve.

virtual bool clpt::LP2Check::isCFeasible (  )  const [inline, virtual]

Is the reference constraint feasible?.

Implements clpt::ISolve.

virtual void clpt::LP2Check::set ( const string &  constraint  )  [inline, virtual]

Set the reference constraint.

Implements clpt::ISolve.


Member Data Documentation

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.


The documentation for this class was generated from the following file:
Generated on Sun Nov 23 14:52:43 2008 for Typing linear constraints by  doxygen 1.5.4