Data structures and functions to represent bases for atoms, aggregate atoms, and similar.
More...
|
using | CppClingo::Ground::VariableSet = Util::ordered_set< size_t > |
| A set of variables.
|
|
using | CppClingo::Ground::VariableVec = VariableSet::values_container_type |
| A vector of variables.
|
|
using | CppClingo::Ground::SymbolicAtom = std::pair< Symbol, AtomInfo > |
| An atom consisting of a symbol and its (mutable) state.
|
|
using | CppClingo::Ground::UAtomBase = std::unique_ptr< AtomBase > |
| A unique pointer holding a base.
|
|
using | CppClingo::Ground::UProjectState = std::unique_ptr< ProjectState > |
| Unique pointer for ProjectState .
|
|
using | CppClingo::Ground::ProjectMap = Util::ordered_map< Ground::UTerm, UProjectState > |
| A map from a terms with projections associated state used during grounding.
|
|
using | CppClingo::Ground::BaseMap = Util::ordered_map< std::tuple< String, size_t, bool >, UAtomBase > |
| A map from signatures to atom bases.
|
|
using | CppClingo::Ground::UState = std::unique_ptr< State > |
| A unique pointer to a state.
|
|
using | CppClingo::Ground::UStateVec = std::vector< UState > |
| A vector of states.
|
|
Data structures and functions to represent bases for atoms, aggregate atoms, and similar.
◆ ProjectMap
A map from a terms with projections associated state used during grounding.
The terms represent a class of similar terms that can reuse the same projection state.
◆ AtomUpdate
Enumeration indicating state updates of atoms.
Enumerator |
---|
added | A freshly added atom.
|
changed | An update atom.
|
unchanged | An atom whose state did not change.
|
◆ StateAtom
Enumeration to capture the state of an atom.
Enumerator |
---|
fact | Indicates that the atom is derived by a fact.
|
derived | Indicates that the atom is derived by some rule but not a fact.
|
unknown | Indicates that the atom has not yet been derived by a rule.
At the time rule (1) is grounded, atom x is not yet defined.
Once (2) has been grounded, there is a definition for it.
a :- not x. (1)
x :- a. (2)
The flag indicates atoms that have neither been derived by facts, rules, or externals.
|