Clingo
Loading...
Searching...
No Matches

Interfaces to output logic programs. More...

Classes

class  CppClingo::ProgramBackend
 Abstract class connecting grounder and solver. More...
 
class  CppClingo::TheoryBackend
 Abstract class connecting grounder and theory data. More...
 
class  CppClingo::OutputTheory
 Interface to output literals. More...
 
class  CppClingo::OutputLit
 Interface to output literals. More...
 
class  CppClingo::OutputStm
 Interface to output statements. More...
 

Typedefs

using CppClingo::prg_id_t = uint32_t
 An id to refer to elements of a logic program.
 
using CppClingo::PrgIdSpan = std::span< prg_id_t const >
 A span of ids.
 
using CppClingo::PrgIdVec = std::vector< prg_id_t >
 A vector of ids.
 
using CppClingo::prg_sid_t = std::make_signed_t< prg_id_t >
 An signed version of id_t.
 
using CppClingo::prg_lit_t = int32_t
 A program literal.
 
using CppClingo::prg_atom_t = uint32_t
 A program atom.
 
using CppClingo::prg_weight_t = int32_t
 A weight used in weight and minimize constraints.
 
using CppClingo::prg_sum_t = int64_t
 Type to represent sums of weights.
 
using CppClingo::PrgLitSpan = std::span< prg_lit_t const >
 A span of program literals.
 
using CppClingo::PrgLitVec = std::vector< prg_lit_t >
 A vector of literals.
 
using CppClingo::WeightedPrgLitSpan = std::span< std::pair< prg_lit_t, prg_weight_t > const >
 A span of program literals.
 
using CppClingo::WeightedPrgLitVec = std::vector< std::pair< prg_lit_t, prg_weight_t > >
 A vector of program literals.
 
using CppClingo::UProgramBackend = std::unique_ptr< ProgramBackend >
 A unique pointer for a program backend.
 
using CppClingo::UTheoryBackend = std::unique_ptr< TheoryBackend >
 A unique pointer for a theory backend.
 
using CppClingo::IndexSpan = std::span< size_t const >
 A span of indices.
 
using CppClingo::IndexVec = std::vector< size_t >
 A vector of indices.
 
using CppClingo::UOutputStm = std::unique_ptr< OutputStm >
 Unique pointer for statement output.
 

Detailed Description

Interfaces to output logic programs.

Typedef Documentation

◆ prg_atom_t

using CppClingo::prg_atom_t = typedef uint32_t

A program atom.

A program atom must be in the range of 1 to lit_max.

◆ prg_id_t

using CppClingo::prg_id_t = typedef uint32_t

An id to refer to elements of a logic program.

The semantics of ids is context dependent.

◆ prg_lit_t

using CppClingo::prg_lit_t = typedef int32_t

A program literal.

A program literal must be in the range of lit_min to lit_max excluding number 0.