|
dReal4
|
Represents a symbolic environment (mapping from a variable to a value). More...
Public Types | |
| typedef Variable | key_type |
| typedef double | mapped_type |
| typedef std::unordered_map< key_type, mapped_type, hash_value< key_type > > | map |
| typedef map::value_type | value_type |
| std::pair<key_type, mapped_type> | |
| typedef map::iterator | iterator |
| typedef map::const_iterator | const_iterator |
Public Member Functions | |
| Environment (const Environment &)=default | |
| Environment & | operator= (const Environment &)=default |
| Environment (Environment &&)=default | |
| Environment & | operator= (Environment &&)=default |
| Environment ()=default | |
| Default constructor. More... | |
| ~Environment ()=default | |
| Default destructor. More... | |
| Environment (std::initializer_list< value_type > init) | |
| List constructor. More... | |
| Environment (std::initializer_list< key_type > vars) | |
| List constructor. More... | |
| Environment (map m) | |
Constructs an environment from m. | |
| iterator | begin () |
| Returns an iterator to the beginning. More... | |
| iterator | end () |
| Returns an iterator to the end. More... | |
| const_iterator | begin () const |
| Returns a const iterator to the beginning. More... | |
| const_iterator | end () const |
| Returns a const iterator to the end. More... | |
| const_iterator | cbegin () const |
| Returns a const iterator to the beginning. More... | |
| const_iterator | cend () const |
| Returns a const iterator to the end. More... | |
| void | insert (const key_type &key, const mapped_type &elem) |
Inserts a pair (key, elem). More... | |
| bool | empty () const |
| Checks whether the container is empty. More... | |
| size_t | size () const |
| Returns the number of elements. More... | |
| iterator | find (const key_type &key) |
| Finds element with specific key. More... | |
| const_iterator | find (const key_type &key) const |
| Finds element with specific key. More... | |
| Variables | domain () const |
| Returns the domain of this environment. More... | |
| std::string | to_string () const |
| Returns string representation. More... | |
| mapped_type & | operator[] (const key_type &key) |
Returns a reference to the value that is mapped to a key equivalent to key, performing an insertion if such key does not already exist. | |
| const mapped_type & | operator[] (const key_type &key) const |
| As above, but returns a constref and does not perform an insertion (throwing a runtime error instead) if the key does not exist. More... | |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const Environment &env) |
Represents a symbolic environment (mapping from a variable to a value).
This class is used when we evaluate symbolic expressions or formulas which include unquantified (free) variables. Here are examples:
Note that it is not allowed to have a dummy variable in an environment. It throws std::runtime_error for the attempts to create an environment with a dummy variable, to insert a dummy variable to an existing environment, or to take a reference to a value mapped to a dummy variable. See the following examples.
|
default |
Default constructor.
|
default |
Default destructor.
| Environment | ( | std::initializer_list< value_type > | init | ) |
List constructor.
Constructs an environment from a list of (Variable * double).
| Environment | ( | std::initializer_list< key_type > | vars | ) |
List constructor.
Constructs an environment from a list of Variable. Initializes the variables with 0.0.
|
inline |
Returns an iterator to the beginning.
|
inline |
Returns a const iterator to the beginning.
|
inline |
Returns a const iterator to the beginning.
|
inline |
Returns a const iterator to the end.
| Variables domain | ( | ) | const |
Returns the domain of this environment.
|
inline |
Checks whether the container is empty.
|
inline |
Returns an iterator to the end.
|
inline |
Returns a const iterator to the end.
|
inline |
Finds element with specific key.
|
inline |
Finds element with specific key.
| void insert | ( | const key_type & | key, |
| const mapped_type & | elem | ||
| ) |
Inserts a pair (key, elem).
| const Environment::mapped_type & operator[] | ( | const key_type & | key | ) | const |
As above, but returns a constref and does not perform an insertion (throwing a runtime error instead) if the key does not exist.
|
inline |
Returns the number of elements.
| string to_string | ( | ) | const |
Returns string representation.