translate: improve handling of Xor and Equiv at top-level for -G -D
* spot/tl/formula.hh: Add variant of formula::is that support 4 arguments. * spot/tl/simplify.hh, spot/tl/simplify.cc: Add option keep_top_xor to preserve Xor and Equiv at the top-level. * spot/twaalgos/translate.cc: Adjust ltl-split to deal with Xor and Equiv for the -D -G case. * NEWS: Mention that. * tests/core/ltl2tgba2.test: Add test case. * tests/python/simstate.py: Adjust expected result.
This commit is contained in:
parent
822b749166
commit
6ec6150462
7 changed files with 127 additions and 42 deletions
|
|
@ -451,4 +451,11 @@ f='(GFp0 | FGp1) & (GF!p1 | FGp2) & (GF!p2 | FG!p0)'
|
|||
test 1,8,3 = `ltl2tgba -G -D "$f" --stats=%s,%e,%a`
|
||||
test 1,3,2 = `ltl2tgba -G -D "(GFp0 | FGp1)" --stats=%s,%e,%a`
|
||||
|
||||
# Handling of Xor and <-> by ltl-split and -D -G.
|
||||
res=`ltl2tgba -D -G 'X((Fa & Fb & Fc & Fd) <-> GFe)' --stats='%s %g'`
|
||||
test "$res" = "17 (Inf(0) & Fin(1)) | (Fin(0) & Inf(1))"
|
||||
res=`ltl2tgba -D -G 'X((Fa & Fb & Fc & Fd) ^ GFe)' --stats='%s %g'`
|
||||
test "$res" = "17 (Inf(0)&Inf(1)) | (Fin(0) & Fin(1))"
|
||||
ltlcross 'ltl2tgba -D -G' 'ltl2tgba -G' -f '(Fa & Fb & Fc & Fd) ^ GFe'
|
||||
|
||||
:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue