dReal4
NaryFormulaCell Class Reference

Represents the base class for N-ary logic operators (∧ and ∨). More...

#include </home/soonhokong/work/dreal4/third_party/com_github_robotlocomotion_drake/dreal/symbolic/symbolic_formula_cell.h>

Inheritance diagram for NaryFormulaCell:
FormulaCell FormulaAnd FormulaOr

Public Member Functions

 NaryFormulaCell ()=delete
 Default constructor (deleted). More...
 
 ~NaryFormulaCell () override=default
 Default destructor (deleted). More...
 
 NaryFormulaCell (NaryFormulaCell &&f)=delete
 Move-construct a formula from an rvalue (DELETED). More...
 
 NaryFormulaCell (const NaryFormulaCell &f)=delete
 Copy-construct a formula from an lvalue (DELETED). More...
 
NaryFormulaCelloperator= (NaryFormulaCell &&f)=delete
 Move-assign (DELETED). More...
 
NaryFormulaCelloperator= (const NaryFormulaCell &f)=delete
 Copy-assign (DELETED). More...
 
 NaryFormulaCell (FormulaKind k, std::set< Formula > formulas)
 Construct NaryFormulaCell of kind k with formulas. More...
 
bool EqualTo (const FormulaCell &f) const override
 Checks structural equality. More...
 
bool Less (const FormulaCell &f) const override
 Checks ordering. More...
 
const std::set< Formula > & get_operands () const
 Returns the formulas. More...
 
std::set< Formula > & get_mutable_operands ()
 Returns the formulas. More...
 
- Public Member Functions inherited from FormulaCell
 FormulaCell ()=delete
 Default constructor (DELETED). More...
 
FormulaCelloperator= (FormulaCell &&f)=delete
 Move-assign (DELETED). More...
 
 FormulaCell (const FormulaCell &f)=delete
 Copy-construct a formula from an lvalue. More...
 
 FormulaCell (FormulaCell &&f)=delete
 Move-construct a formula from an rvalue (DELETED). More...
 
FormulaCelloperator= (const FormulaCell &f)=delete
 Copy-assign (DELETED). More...
 
FormulaKind get_kind () const
 Returns kind of formula. More...
 
size_t get_hash () const
 Returns hash of formula. More...
 
const VariablesGetFreeVariables () const
 Returns set of free variables in formula. More...
 
virtual bool Evaluate (const Environment &env) const =0
 Evaluates under a given environment. More...
 
virtual Formula Substitute (const ExpressionSubstitution &expr_subst, const FormulaSubstitution &formula_subst)=0
 Returns a Formula obtained by replacing all occurrences of the variables in s in the current formula cell with the corresponding expressions in s.
 
virtual std::ostream & Display (std::ostream &os) const =0
 Outputs string representation of formula into output stream os. More...
 
unsigned use_count () const
 Returns the reference count of this cell. More...
 
bool include_ite () const
 Returns true if this symbolic formula includes an ITE (If-Then-Else) expression. More...
 

Protected Member Functions

std::ostream & DisplayWithOp (std::ostream &os, const std::string &op) const
 
- Protected Member Functions inherited from FormulaCell
 FormulaCell (FormulaKind k, size_t hash, bool include_ite, Variables variables)
 Construct FormulaCell of kind k with hash. More...
 
virtual ~FormulaCell ()=default
 Default destructor. More...
 
Formula GetFormula ()
 Returns a Formula pointing to this FormulaCell. More...
 

Detailed Description

Represents the base class for N-ary logic operators (∧ and ∨).

Note
Internally this class maintains a set of symbolic formulas to avoid duplicated elements (i.e. f1 ∧ ... ∧ f1).

Constructor & Destructor Documentation

◆ NaryFormulaCell() [1/4]

NaryFormulaCell ( )
delete

Default constructor (deleted).

◆ ~NaryFormulaCell()

~NaryFormulaCell ( )
overridedefault

Default destructor (deleted).

◆ NaryFormulaCell() [2/4]

NaryFormulaCell ( NaryFormulaCell &&  f)
delete

Move-construct a formula from an rvalue (DELETED).

◆ NaryFormulaCell() [3/4]

NaryFormulaCell ( const NaryFormulaCell f)
delete

Copy-construct a formula from an lvalue (DELETED).

◆ NaryFormulaCell() [4/4]

NaryFormulaCell ( FormulaKind  k,
std::set< Formula formulas 
)

Construct NaryFormulaCell of kind k with formulas.

Member Function Documentation

◆ EqualTo()

bool EqualTo ( const FormulaCell c) const
overridevirtual

Checks structural equality.

Implements FormulaCell.

◆ get_mutable_operands()

std::set<Formula>& get_mutable_operands ( )
inline

Returns the formulas.

◆ get_operands()

const std::set<Formula>& get_operands ( ) const
inline

Returns the formulas.

◆ Less()

bool Less ( const FormulaCell c) const
overridevirtual

Checks ordering.

Implements FormulaCell.

◆ operator=() [1/2]

NaryFormulaCell& operator= ( NaryFormulaCell &&  f)
delete

Move-assign (DELETED).

◆ operator=() [2/2]

NaryFormulaCell& operator= ( const NaryFormulaCell f)
delete

Copy-assign (DELETED).


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