Public Member Functions | Static Public Member Functions | Static Public Attributes | Friends
Constraint Class Reference

List of all members.

Public Member Functions

 Constraint (bool val)
 Constraint (const Constraint &nc, const Constraint &sc)
 Constraint (Term *t1, Term *t2, atom_op_type op)
 Constraint (const Constraint &other)
 Constraint (string s)
 Constraint (const char *s)
 Constraint (CNode *n)
bool sat () const
bool unsat () const
bool valid () const
bool equivalent (Constraint other) const
bool sat_discard () const
bool unsat_discard () const
bool valid_discard () const
Constraint nc () const
Constraint sc () const
int nc_size () const
int sc_size () const
bool is_true () const
bool is_false () const
Constraint operator& (const Constraint &other) const
Constraint operator| (const Constraint &other) const
Constraint abduce (Constraint b, const set< Constraint > &consistency_constraints, map< Term *, int > &costs) const
Constraint abduce (Constraint b, const set< Constraint > &consistency_constraints) const
Constraint abduce (Constraint b) const
void operator&= (const Constraint &other)
void operator|= (const Constraint &other)
Constraint operator! () const
void operator= (const Constraint &other)
bool operator== (const Constraint &other) const
bool operator!= (const Constraint &other) const
bool implies (const Constraint &other) const
bool operator< (const Constraint &other) const
bool is_precise () const
void eliminate_evar (VariableTerm *var)
void eliminate_evars (set< VariableTerm * > &vars)
void eliminate_uvar (VariableTerm *var)
void eliminate_uvars (set< VariableTerm * > &vars)
bool contains_inequality ()
void fresh_id ()
void eliminate_free_var (VariableTerm *var)
void eliminate_free_vars (set< VariableTerm * > &vars)
void get_terms (set< Term * > &terms, bool include_nested_terms)
Termfind_equality (Term *t) const
void find_equalities (Term *t, set< Term * > &eqs) const
void replace_term (Term *to_replace, Term *replacement)
void replace_terms (map< Term *, Term * > &replacements)
void replace_constraint (Constraint to_replace, Constraint replacement)
void replace_terms (Term *(*sub_func)(Term *t, void *data), void *my_data)
void get_free_variables (set< Term * > &vars)
bool contains_term (Term *var)
bool contains_term (set< Term * > &terms)
void propagate_background ()
void assume (Constraint c)
bool has_equality_relation (Term *t1, Term *t2)
void get_disjunctive_equalities (Term *var, map< Term *, Constraint > &equalities)
void divide (long int c, Term *t)
bool get_assignment (set< pair< string, string > > &assignments)
bool get_assignment (map< Term *, SatValue > &assignments)
void replace_terms (Term *(*sub_func)(Term *t))
string to_string () const
string debug_string ()
int msa (map< Term *, SatValue > &msa)
int msa (set< VariableTerm * > &msa) const
int msa (set< VariableTerm * > &msa, set< Constraint > &bg) const
int msa (map< Term *, SatValue > &msa, set< Constraint > &bg)
int msa (set< VariableTerm * > &msa, map< VariableTerm *, int > &costs) const
int msa (set< VariableTerm * > &msa, set< Constraint > &bg, map< VariableTerm *, int > &costs) const
int msa (map< Term *, SatValue > &msa, set< Constraint > &bg, map< VariableTerm *, int > &costs)
pair< CNode *, CNode * > get_cnodes ()
void to_dnf (set< Constraint > &dnf)
void to_cnf (set< Constraint > &cnf)

Static Public Member Functions

static void set_geqz_attribute (Term *t)
static void set_gtz_attribute (Term *t)
static void clear ()
static void add_ground_axiom (Constraint key, Constraint c)
static void add_quantified_axiom (Constraint key, Constraint c)
static void set_background_knowledge (Constraint c)
static void replace_term_in_axioms (Term *old_t, Term *new_t)
static string background_knowledge_to_string ()
static Constraint get_general_background ()
static void clear_background ()
static void disable_background ()

Static Public Attributes

static ConstraintSolver cs

Friends

class boost::serialization::access
struct std::hash< Constraint >
class ConstraintSolver
class Term

Constructor & Destructor Documentation

Constraint::Constraint ( bool  val)

Constructs boolean constant true/false


The documentation for this class was generated from the following files: