introduce op::strong_X
This was prompted by reports by Andrew Wells and Yong Li. * NEWS, doc/tl/tl.tex: Document the changes. * THANKS: Add Andrew. * bin/ltlfilt.cc: Match --ltl before --from-ltlf if needed. * spot/parsetl/parsedecl.hh, spot/parsetl/parsetl.yy, spot/parsetl/scantl.ll: Parse X[!]. * spot/tl/formula.cc, spot/tl/formula.hh: Declare the new operator. * spot/tl/ltlf.cc: Adjust to handle op::X and op::strong_X correctly. * spot/tl/dot.cc, spot/tl/mark.cc, spot/tl/mutation.cc, spot/tl/print.cc, spot/tl/simplify.cc, spot/tl/snf.cc, spot/tl/unabbrev.cc, spot/twa/formula2bdd.cc, spot/twaalgos/ltl2taa.cc, spot/twaalgos/ltl2tgba_fm.cc, tests/core/ltlgrind.test, tests/core/rand.test, tests/core/sugar.test, tests/python/randltl.ipynb: Adjust. * tests/core/ltlfilt.test, tests/core/sugar.test, tests/core/utf8.test: More tests.
This commit is contained in:
parent
b91ba58bbe
commit
be389c5c25
26 changed files with 434 additions and 134 deletions
|
|
@ -81,6 +81,7 @@ namespace spot
|
|||
return;
|
||||
}
|
||||
case op::X:
|
||||
case op::strong_X:
|
||||
{
|
||||
ltl2taa_visitor v = recurse(f[0]);
|
||||
std::vector<formula> dst;
|
||||
|
|
|
|||
|
|
@ -585,6 +585,7 @@ namespace spot
|
|||
case op::F:
|
||||
case op::G:
|
||||
case op::X:
|
||||
case op::strong_X:
|
||||
case op::Closure:
|
||||
case op::NegClosure:
|
||||
case op::NegClosureMarked:
|
||||
|
|
@ -1215,6 +1216,7 @@ namespace spot
|
|||
return bdd_not(recurse(node[0]));
|
||||
}
|
||||
case op::X:
|
||||
case op::strong_X:
|
||||
{
|
||||
// r(Xy) = Next[y]
|
||||
// r(X(a&b&c)) = Next[a]&Next[b]&Next[c]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue