ltl-split: translate any "safety" with "rest"

* tests/core/ltl2tgba2.test: Add a test-case reported by Maximilien.
* spot/twaalgos/translate.cc: Translate any "safety" formula with
"rest".
* tests/python/highlighting.ipynb: Adjust.
This commit is contained in:
Alexandre Duret-Lutz 2018-07-26 18:15:19 +02:00
parent a14f96813d
commit 3303b86a89
3 changed files with 204 additions and 243 deletions

View file

@ -390,3 +390,13 @@ cat >expected <<EOF
4,12,1
EOF
diff out expected
# This was reported by Maximilien: in Spot 2.6, ltl2tgba "$f" has 8
# states, but the automaton is larger with -GD because of ltl-split.
# This is a case were we want (a R !b) & (c R !d) to be translated
# along the rest of the formula, i.e., ltl-split should not translate
# it separately.
f='(a R !b) & (c R !d) & G((!b | !d) & (!a | Fb) & (!c | Fd) '
f=$f'& (!b | X(b | (a R !b))) & (!d | X(d | (c R !d))) & F(a | !b) & F(c | !d))'
test '8,1' = `ltl2tgba "$f" --stats=%s,%d`
test '8,1' = `ltl2tgba -GD "$f" --stats=%s,%d`