* src/tgbaalgos/ltl2tgba_fm.cc (ltl_to_tgba_fm): Identify states

with identical successors.  This optimizes the translation
of `a R (b R c)', for instance.
* src/tgbatest/ltl2tgba.test: Add two new tests.
This commit is contained in:
Alexandre Duret-Lutz 2004-02-02 16:12:13 +00:00
parent 0dd81f7d16
commit 872f7efbeb
3 changed files with 8 additions and 1 deletions

View file

@ -1,5 +1,10 @@
2004-02-02 Alexandre Duret-Lutz <adl@src.lip6.fr>
* src/tgbaalgos/ltl2tgba_fm.cc (ltl_to_tgba_fm): Identify states
with identical successors. This optimizes the translation
of `a R (b R c)', for instance.
* src/tgbatest/ltl2tgba.test: Add two new tests.
Hide the tgba_gspn and tgba_gspn_eesrg classes. Offer the
corresponding automaton via the automaton() method of the
gspn_interface and gspn_eesrg_interface classes.

View file

@ -529,7 +529,7 @@ namespace spot
{
dest->accept(v);
bdd succbdd = v.result();
succ_to_string::iterator cs = canonical_succ.find(succbdd);
succ_to_formula::iterator cs = canonical_succ.find(succbdd);
if (cs != canonical_succ.end())
{
destroy(dest);

View file

@ -37,3 +37,5 @@ run 0 ./ltl2tgba 'Xa & (b U !a) & (b U !a)'
run 0 ./ltl2tgba 'Fa & Xb & GFc & Gd'
run 0 ./ltl2tgba 'Fa & Xa & GFc & Gc'
run 0 ./ltl2tgba 'Fc & X(a | Xb) & GF(a | Xb) & Gc'
run 0 ./ltl2tgba 'a R (b R c)'
run 0 ./ltl2tgba '(a U b) U (c U d)'