Clingo
|
Data structures and functions to ground literals. More...
Classes | |
class | CppClingo::Ground::Lit |
The base class for groundable literals. More... | |
class | CppClingo::Ground::LitComparison |
A literal representing a comparison. More... | |
class | CppClingo::Ground::LitExternal |
A literal representing a comparison. More... | |
class | CppClingo::Ground::LitInterval |
A literal representing an interval assignment. More... | |
class | CppClingo::Ground::LitSymbolic |
A symbolic literal. More... | |
class | CppClingo::Ground::LitProject |
A literal similar to a symbolic literal. More... | |
class | CppClingo::Ground::LitTuple |
An auxiliary literal binding variables to the given symbols upon first match. More... | |
class | CppClingo::Ground::LitCheck |
A literal ensuring that a list of terms evaluates. More... | |
class | CppClingo::Ground::LitBool |
A literal representing a Boolean. More... | |
class | CppClingo::Ground::LitFactCheck |
Simple literal that discards whenever it matches to a fact. More... | |
class | CppClingo::Ground::LitFailCheck |
A literal ensuring that a list of terms evaluates. More... | |
class | CppClingo::Ground::LitSimpleAggr |
An aggregate literal without conditions. More... | |
Typedefs | |
using | CppClingo::Ground::ULit = std::unique_ptr< Lit > |
A unique pointer holding a literal. | |
using | CppClingo::Ground::ULitVec = std::vector< ULit > |
A vector of literals. | |
using | CppClingo::Ground::AtomSimple = std::optional< std::tuple< Ground::UTerm, AtomBase &, std::vector< size_t > > > |
Represents a simple head literal which is either represented by a symbol term or #false captured by std::nullopt. | |
using | CppClingo::Ground::BaseVec = std::vector< std::tuple< std::tuple< String, size_t, bool >, AtomBase *, std::vector< size_t > > > |
A vector of signatures, bases, and indices. | |
Enumerations | |
enum class | CppClingo::Ground::VarSelectMode : uint8_t { VarSelectMode::depend = 1 , VarSelectMode::provide = 2 , VarSelectMode::all = 3 } |
Available variable selection modes. More... | |
Variables | |
constexpr auto | CppClingo::Ground::stratified_index = std::numeric_limits<size_t>::max() |
Marker for stratified literals. | |
Data structures and functions to ground literals.
using CppClingo::Ground::BaseVec = typedef std::vector<std::tuple<std::tuple<String, size_t, bool>, AtomBase *, std::vector<size_t> >> |
A vector of signatures, bases, and indices.
Whenever a base has an update, its indices have to be propagated. The base is identified by the signature and the vector sorted by this signature.
|
strong |