clpt::LPCheck Class Reference

Implements the LPInfer procedure using Minkowski's decomposition. More...

#include <poly.h>

Inheritance diagram for clpt::LPCheck:

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

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
 Get the list of variables in the reference constraint.
virtual bool isCFeasible () const
 Is the reference constraint feasible?.
 LPCheck ()
 Constructor.
virtual void set (const string &constraint)
 Set the reference constraint.
virtual ~LPCheck ()
 Destructor.

Protected Member Functions

virtual void _duplicatevars (LinearSystem *m)
 Stub method.
Type _infer (Polyhedron *Pol, size_t idx, Type mintp)
 Infer the type of a variable given a polyhedron.
virtual void clear ()
 Clear data.

Static Protected Member Functions

static Matrix * _get_phi (const TypeDecl &td, LinearSystem *m)
 Returns the matrix for homogeneous phi(td).

Protected Attributes

string cvars
 Constraint variables.
bool feasible
 Is constraint satisfiable?
LinearSystemls
 Constraint in linear system form.
size_t nvars_c
 No of constraint variables.
Polyhedron * polHomo
 Polyhedron for the homogeneous system.
Polyhedron * polNonHomo
 Polyhedron for the non-homogeneous system.


Detailed Description

Implements the LPInfer procedure using Minkowski's decomposition.


Constructor & Destructor Documentation

clpt::LPCheck::LPCheck (  )  [inline]

Constructor.

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

Destructor.


Member Function Documentation

virtual void clpt::LPCheck::_duplicatevars ( LinearSystem m  )  [inline, protected, virtual]

Stub method.

Needed in POLYCheck.

Reimplemented in clpt::POLYCheck, and clpt::ParCheck.

static Matrix* clpt::LPCheck::_get_phi ( const TypeDecl td,
LinearSystem m 
) [inline, static, protected]

Returns the matrix for homogeneous phi(td).

Type clpt::LPCheck::_infer ( Polyhedron *  Pol,
size_t  idx,
Type  mintp 
) [inline, protected]

Infer the type of a variable given a polyhedron.

virtual void clpt::LPCheck::clear (  )  [inline, protected, virtual]

Clear data.

virtual string clpt::LPCheck::getCVarList (  )  const [inline, virtual]

Get the list of variables in the reference constraint.

Implements clpt::ISolve.

virtual TypeDecl* clpt::LPCheck::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.

Reimplemented in clpt::IECheck, and clpt::POLYCheck.

virtual bool clpt::LPCheck::is_check_complete ( const TypeDecl td1,
const TypeDecl td2 
) const [inline, virtual]

Get the list of variables in the reference constraint.

Implements clpt::ISolve.

Reimplemented in clpt::IECheck, clpt::POLYCheck, and clpt::ParCheck.

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

Is the reference constraint feasible?.

Implements clpt::ISolve.

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

Set the reference constraint.

Implements clpt::ISolve.


Member Data Documentation

string clpt::LPCheck::cvars [protected]

Constraint variables.

bool clpt::LPCheck::feasible [protected]

Is constraint satisfiable?

LinearSystem* clpt::LPCheck::ls [protected]

Constraint in linear system form.

size_t clpt::LPCheck::nvars_c [protected]

No of constraint variables.

Polyhedron* clpt::LPCheck::polHomo [protected]

Polyhedron for the homogeneous system.

Polyhedron* clpt::LPCheck::polNonHomo [protected]

Polyhedron for the non-homogeneous system.


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