Implement a favor_even_univ option in the rewriting rules.
The set of rules enabled by favor_even_univ try to "lift" the subformulae that are both eventual and universal, so they appear higher in the AST. This is contrary to what we used to do (and still do when the option is unset), were we try to postpone such subformulae (by moving them down the AST). It is still a bit experimental. * src/ltlvisit/simplify.hh: Add option favor_event_univ. * src/ltlvisit/simplify.cc: Implement new rewriting rules. * doc/tl/tl.tex: Document them. * src/tgbatest/ltl2tgba.cc: Add option -ra to enable them. * src/tgbatest/spotlbtt.test: Test the translation with this option. * src/ltltest/reduc.cc, src/ltltest/equals.cc: Add option to enable the new rules. * src/ltltest/eventuniv.test: New file to test them. * src/ltltest/Makefile.am: Add it.
This commit is contained in:
parent
969d927145
commit
9caa9ad134
9 changed files with 489 additions and 43 deletions
|
|
@ -38,7 +38,8 @@ namespace spot
|
|||
bool containment_checks_stronger = false,
|
||||
bool nenoform_stop_on_boolean = false,
|
||||
bool reduce_size_strictly = false,
|
||||
bool boolean_to_isop = false)
|
||||
bool boolean_to_isop = false,
|
||||
bool favor_event_univ = false)
|
||||
: reduce_basics(basics),
|
||||
synt_impl(synt_impl),
|
||||
event_univ(event_univ),
|
||||
|
|
@ -46,7 +47,8 @@ namespace spot
|
|||
containment_checks_stronger(containment_checks_stronger),
|
||||
nenoform_stop_on_boolean(nenoform_stop_on_boolean),
|
||||
reduce_size_strictly(reduce_size_strictly),
|
||||
boolean_to_isop(boolean_to_isop)
|
||||
boolean_to_isop(boolean_to_isop),
|
||||
favor_event_univ(favor_event_univ)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
@ -64,6 +66,8 @@ namespace spot
|
|||
bool reduce_size_strictly;
|
||||
// If true, Boolean subformulae will be rewritten in ISOP form.
|
||||
bool boolean_to_isop;
|
||||
// Try to isolate subformulae that are eventual and universal.
|
||||
bool favor_event_univ;
|
||||
};
|
||||
|
||||
// fwd declaration to hide technical details.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue