Classes | |
class | spot::ltl::atomic_prop |
Atomic propositions. More... | |
class | spot::ltl::binop |
Binary operator. More... | |
class | spot::ltl::constant |
A constant (True or False). More... | |
class | spot::ltl::formula |
An LTL formula. More... | |
class | spot::ltl::multop |
Multi-operand operators. More... | |
struct | spot::ltl::multop::paircmp |
Comparison functor used internally by ltl::multop. More... | |
class | spot::ltl::ref_formula |
A reference-counted LTL formula. More... | |
class | spot::ltl::unop |
Unary operator. More... | |
struct | spot::ltl::visitor |
Formula visitor that can modify the formula. More... | |
struct | spot::ltl::const_visitor |
Formula visitor that cannot modify the formula. More... | |
class | spot::ltl::declarative_environment |
A declarative environment. More... | |
class | spot::ltl::default_environment |
A laxist environment. More... | |
class | spot::ltl::environment |
An environment that describes atomic propositions. More... | |
class | spot::ltl::clone_visitor |
Clone a formula. More... | |
class | spot::ltl::unabbreviate_logic_visitor |
Clone and rewrite a formula to remove most of the abbreviated logical operators. More... | |
class | spot::ltl::postfix_visitor |
Apply an algorithm on each node of an AST, during a postfix traversal. More... | |
class | spot::ltl::simplify_f_g_visitor |
Replace true U f and false R g by F f and G g . More... | |
class | spot::ltl::unabbreviate_ltl_visitor |
Clone and rewrite a formula to remove most of the abbreviated LTL and logical operators. More... | |
Typedefs | |
typedef std::pair< yy::Location, std::string > | parse_error |
A parse diagnostic with its location. | |
typedef std::list< parse_error > | parse_error_list |
A list of parser diagnostics, as filled by parse. | |
Enumerations | |
enum | reduce_options { Reduce_None = 0, Reduce_Basics = 1, Reduce_Syntactic_Implications = 2, Reduce_Eventuality_And_Universality = 4, Reduce_All = -1U } |
Options for spot::ltl::reduce. More... | |
Functions | |
formula * | parse (const std::string <l_string, parse_error_list &error_list, environment &env=default_environment::instance(), bool debug=false) |
Build a formula from an LTL string. | |
bool | format_parse_errors (std::ostream &os, const std::string <l_string, parse_error_list &error_list) |
Format diagnostics produced by spot::ltl::parse. | |
formula * | basic_reduce (const formula *f) |
Basic rewritings. | |
bool | is_GF (const formula *f) |
Whether a formula starts with GF. | |
bool | is_FG (const formula *f) |
Whether a formula starts with FG. | |
formula * | clone (const formula *f) |
Clone a formula. | |
void | destroy (const formula *f) |
Destroys a formula. | |
std::ostream & | dotty (std::ostream &os, const formula *f) |
Write a formula tree using dot's syntax. | |
std::ostream & | dump (std::ostream &os, const formula *f) |
Dump a formula tree. | |
int | length (const formula *f) |
Compute the length of a formula. | |
formula * | unabbreviate_logic (const formula *f) |
Clone and rewrite a formula to remove most of the abbreviated logical operators. | |
formula * | negative_normal_form (const formula *f, bool negated=false) |
Build the negative normal form of f. | |
formula * | reduce (const formula *f, int opt=Reduce_All) |
the reduced formula | |
bool | is_eventual (const formula *f) |
Check whether a formula is eventual. | |
bool | is_universal (const formula *f) |
Check whether a formula is universal. | |
formula * | simplify_f_g (const formula *f) |
Replace true U f and false R g by F f and G g . | |
bool | syntactic_implication (const formula *f1, const formula *f2) |
Syntactic implication. | |
bool | syntactic_implication_neg (const formula *f1, const formula *f2, bool right) |
Syntactic implication. | |
std::ostream & | to_string (const formula *f, std::ostream &os) |
Output a formula as a (parsable) string. | |
std::string | to_string (const formula *f) |
Convert a formula into a (parsable) string. | |
std::ostream & | to_spin_string (const formula *f, std::ostream &os) |
Output a formula as a (parsable by Spin) string. | |
std::string | to_spin_string (const formula *f) |
Convert a formula into a (parsable by Spin) string. | |
formula * | unabbreviate_ltl (const formula *f) |
Clone and rewrite a formula to remove most of the abbreviated LTL and logical operators. |
|
A parse diagnostic with its location.
|
|
A list of parser diagnostics, as filled by parse.
|
|
Options for spot::ltl::reduce.
|
|
Basic rewritings.
|
|
Clone a formula.
|
|
Destroys a formula.
|
|
Write a formula tree using dot's syntax.
dot is part of the GraphViz package http://www.research.att.com/sw/tools/graphviz/ |
|
Dump a formula tree.
|
|
Format diagnostics produced by spot::ltl::parse.
|
|
Check whether a formula is eventual. This comes from FIXME: Describe what eventual formulae are. |
|
Whether a formula starts with FG.
|
|
Whether a formula starts with GF.
|
|
Check whether a formula is universal. FIXME: Describe what universal formulae are. Cite paper. |
|
Compute the length of a formula. The length of a formula is the number of atomic properties, constants, and operators (logical and temporal) occurring in the formula. |
|
Build the negative normal form of f. All negations of the formula are pushed in front of the atomic propositions.
|
|
Build a formula from an LTL string.
|
|
the reduced formula
|
|
Replace
|
|
Syntactic implication. This comes from
|
|
Syntactic implication. If right==false, true if !f1 < f2, false otherwise. If right==true, true if f1 < !f2, false otherwise. |
|
Convert a formula into a (parsable by Spin) string.
|
|
Output a formula as a (parsable by Spin) string.
|
|
Convert a formula into a (parsable) string.
|
|
Output a formula as a (parsable) string.
|
|
Clone and rewrite a formula to remove most of the abbreviated logical operators. This will rewrite binary operators such as binop::Implies, binop::Equals, and binop::Xor, using only unop::Not, multop::Or, and multop::And. |
|
Clone and rewrite a formula to remove most of the abbreviated LTL and logical operators. The rewriting performed on logical operator is the same as the one done by spot::ltl::unabbreviate_logic. This will also rewrite unary operators such as unop::F, and unop::G, using only binop::U, and binop::R. |