Clingo
Loading...
Searching...
No Matches
Body Conditional Literals

Data structures and functions to ground body conditional literals. More...

Classes

struct  CppClingo::Ground::StateCondLitElem
 Capture (the state of) an element of a conditional literal. More...
 
class  CppClingo::Ground::StateAtomCondLit
 Capture (the state of) a conditional literal. More...
 
class  CppClingo::Ground::BaseCondLitEmpty
 A base for not yet propagated conditional literals. More...
 
class  CppClingo::Ground::BaseCondLitPremise
 A base for premises of conditional literals. More...
 
class  CppClingo::Ground::BaseCondLit
 A base for conditional literals. More...
 
class  CppClingo::Ground::StateCondLit
 State to capture a set of conditional literals. More...
 
class  CppClingo::Ground::MatchCondLit
 A term like object used to match conditional literals and their elements. More...
 
class  CppClingo::Ground::LitCondLit
 Helper literals to ground conditional literals. More...
 
class  CppClingo::Ground::LitCondLitStrat
 Helper literal to ground stratified conditional literals. More...
 
class  CppClingo::Ground::StmCondLit
 Helper statement to ground conditional literals. More...
 

Typedefs

using CppClingo::Ground::MapElemCondLit = Util::ordered_map< Symbol const *, StateCondLitElem, Util::array_hash, Util::array_equal_to >
 A map from an atom + local variables to an element of a conditional literal.
 
using CppClingo::Ground::MapAtomCondLit = Util::ordered_map< Symbol const *, StateAtomCondLit, Util::array_hash, Util::array_equal_to >
 A map from the global variables to a conditional literal.
 

Enumerations

enum class  CppClingo::Ground::LitCondLitType : uint8_t { LitCondLitType::empty = 0 , LitCondLitType::premise = 1 , LitCondLitType::lit = 2 }
 The type of the literals involved in grounding conditional literals. More...
 
enum class  CppClingo::Ground::TruthConclusion : uint64_t { TruthConclusion::true_ = 0 , TruthConclusion::false_ = 1 , TruthConclusion::derived = 2 , TruthConclusion::unknown = 3 }
 The 4-valued truth value of a conclusion. More...
 
enum class  CppClingo::Ground::StmCondLitType : uint8_t { StmCondLitType::empty = 0 , StmCondLitType::premise = 1 , StmCondLitType::conclusion = 2 }
 Type of the helper statement to ground conditional literals. More...
 

Functions

auto CppClingo::Ground::operator<< (std::ostream &out, LitCondLitType type) -> std::ostream &
 Print the type of a conditional literal grounding literal.
 
auto CppClingo::Ground::operator<< (std::ostream &out, StmCondLitType type) -> std::ostream &
 Print the type.
 

Detailed Description

Data structures and functions to ground body conditional literals.

Typedef Documentation

◆ MapElemCondLit

A map from an atom + local variables to an element of a conditional literal.

We can use here that the number of local variables is fixed.

Enumeration Type Documentation

◆ LitCondLitType

enum class CppClingo::Ground::LitCondLitType : uint8_t
strong

The type of the literals involved in grounding conditional literals.

Enumerator
empty 

Literals encountered during grounding.

premise 

Premises encountered during grounding.

lit 

Conditional literals derived during grounding.

◆ StmCondLitType

enum class CppClingo::Ground::StmCondLitType : uint8_t
strong

Type of the helper statement to ground conditional literals.

Enumerator
empty 

Gather conditional literals for grounding.

premise 

Gather premises of conditional literals.

conclusion 

Gather conclusions of conditional literals.

◆ TruthConclusion

enum class CppClingo::Ground::TruthConclusion : uint64_t
strong

The 4-valued truth value of a conclusion.

Enumerator
true_ 

The conclusion is true.

false_ 

The conclusion is false.

derived 

There is rule that can derived the conclusion.

unknown 

There is no rule yet that could derive the conclusion.