spot
1.99.3
|
Classes | |
class | spot::ltl::ltl_simplifier |
Rewrite or simplify f in various ways. More... | |
class | spot::ltl::unabbreviator |
Clone and rewrite a formula to remove specified operators logical operators. More... | |
Functions | |
const formula * | spot::ltl::mark_tools::mark_concat_ops (const formula *f) |
Mark operators NegClosure and EConcat. More... | |
SPOT_API const formula * | spot::ltl::negative_normal_form (const formula *f, bool negated=false) |
Build the negative normal form of f. More... | |
SPOT_API const formula * | spot::ltl::relabel (const formula *f, relabeling_style style, relabeling_map *m=0) |
Relabel the atomic propositions in a formula. More... | |
SPOT_API const formula * | spot::ltl::relabel_bse (const formula *f, relabeling_style style, relabeling_map *m=0) |
Relabel Boolean subexpressions in a formula using atomic propositions. More... | |
SPOT_API const formula * | spot::ltl::simplify_f_g (const formula *f) |
Replace true U f and false R g by F f and G g . More... | |
SPOT_API const formula * | spot::ltl::unabbreviate (const formula *in, const char *opt=default_unabbrev_string) |
Clone and rewrite a formula to remove specified operators logical operators. More... | |
const formula* spot::ltl::mark_tools::mark_concat_ops | ( | const formula * | f | ) |
Mark operators NegClosure and EConcat.
f | The formula to rewrite. |
SPOT_API const formula* spot::ltl::negative_normal_form | ( | const formula * | f, |
bool | negated = false |
||
) |
Build the negative normal form of f.
All negations of the formula are pushed in front of the atomic propositions.
f | The formula to normalize. |
negated | If true , return the negative normal form of !f |
Note that this will not remove abbreviated operators. If you want to remove abbreviations, call spot::ltl::unabbreviate_logic or spot::ltl::unabbreviate_ltl first. (Calling these functions after spot::ltl::negative_normal_form would likely produce a formula which is not in negative normal form.)
SPOT_API const formula* spot::ltl::relabel | ( | const formula * | f, |
relabeling_style | style, | ||
relabeling_map * | m = 0 |
||
) |
Relabel the atomic propositions in a formula.
If m is non-null, it is filled with correspondence between the new names (keys) and the old names (values).
SPOT_API const formula* spot::ltl::relabel_bse | ( | const formula * | f, |
relabeling_style | style, | ||
relabeling_map * | m = 0 |
||
) |
Relabel Boolean subexpressions in a formula using atomic propositions.
If m is non-null, it is filled with correspondence between the new names (keys) and the old names (values).
SPOT_API const formula* spot::ltl::simplify_f_g | ( | const formula * | f | ) |
Replace true U f
and false R g
by F f
and G g
.
Perform the following rewriting (from left to right):
SPOT_API const formula* spot::ltl::unabbreviate | ( | const formula * | in, |
const char * | opt = default_unabbrev_string |
||
) |
Clone and rewrite a formula to remove specified operators logical operators.
The set of operators to remove should be passed as a string which in which each letter denote an operator (using LBT's convention).