Terms and formulas¶
The error term¶
using namespace black::logic;
Constant terms¶
using namespace black::logic;
-
struct integer¶
A constant integer value (e.g., 42).
-
struct real¶
A constant real value (e.g., 3.14).
Boolean and first-order predicates¶
using namespace black::logic;
-
struct variable¶
An unbound variable.
-
struct object¶
A resolved object.
-
struct prime¶
A reference to an state variable’s value at the next step in a transition relation.
-
struct equal¶
An equality constraint between terms.
-
struct distinct¶
An inequality constraint between terms.
-
struct atom¶
An atomic first-order term (e.g. f(x, y)).
-
struct exists¶
An existentially quantified term.
-
struct forall¶
An universally quantified term.
Boolean connectives¶
using namespace black::logic;
-
struct negation¶
A logical negation.
-
struct conjunction¶
A logical conjunction.
-
struct disjunction¶
A logical disjunction.
Functional constructs¶
using namespace black::logic;
-
struct ite¶
An if/then/else selection construct.
- Constructor:
-
ite(logic::term guard, logic::term iftrue, logic::term iffalse)¶
- Parameters:
guard – The test guard.
iftrue – The result if the guard is true.
iffalse – The result if the guard is false.
-
ite(logic::term guard, logic::term iftrue, logic::term iffalse)¶
- Members:
-
logic::term guard() const¶
- Returns:
The test guard.
-
logic::term iftrue() const¶
- Returns:
The result if the guard is true.
-
logic::term iffalse() const¶
- Returns:
The result if the guard is false.
-
logic::term guard() const¶
-
struct lambda¶
A lambda abstraction (i.e., an anonymous function).
Linear Temporal Logic (future) temporal operators¶
using namespace black::logic;
-
struct tomorrow¶
An tomorrow LTL formula.
-
struct w_tomorrow¶
A weak tomorrow LTL formula.
-
struct eventually¶
An eventually LTL formula.
-
struct always¶
An always LTL formula.
-
struct until¶
An until LTL formula.
-
struct release¶
A release LTL formula.
Linear Temporal Logic (past) temporal operators¶
using namespace black::logic;
-
struct yesterday¶
An yesterday LTL formula.
-
struct w_yesterday¶
A weak yesterday LTL formula.
-
struct once¶
A once LTL formula.
-
struct historically¶
An historically LTL formula.
-
struct since¶
A since LTL formula.
-
struct triggered¶
A triggered LTL formula.
Arithmetic operators¶
using namespace black::logic;
-
struct minus¶
The unary minus.
-
struct sum¶
An arithmetic sum.
-
struct product¶
An arithmetic product.
-
struct difference¶
An arithmetic difference.
Relational comparisons¶
using namespace black::logic;
-
struct less_than¶
A less-than comparison.
-
struct less_than_eq¶
A less-than-or-equal comparison.
-
struct greater_than¶
A greater-than comparison.
-
struct greater_than_eq¶
A greater-than-or-equal comparison.
Basic types¶
using namespace black::logic::types;
-
struct function¶
The type of functions.
- Constructor:
-
function(std::vector<logic::types::type> parameters, logic::types::type range)¶
- Parameters:
parameters – The parameters types.
range – The function’s range.
-
function(std::vector<logic::types::type> parameters, logic::types::type range)¶
- Members:
-
std::vector<logic::types::type> parameters() const¶
- Returns:
The parameters types.
-
logic::types::type range() const¶
- Returns:
The function’s range.
-
std::vector<logic::types::type> parameters() const¶
Inferred types placeholder¶
using namespace black::logic::types;
The error type¶
using namespace black::logic::types;