* src/tgbaalgos/ltl2tgba_fm.hh (ltl_to_tgba_fm): Add argument

branching_postponement.
* src/tgbaalgos/ltl2tgba_fm.cc (fill_dests): New function, extracted
from ltl_to_tgba_fm().
(ltl_to_tgba_fm): Implement the branching_postponement optimization.
* src/tgbatest/ltl2tgba.cc: Add the -p option.
* src/tgbatest/spotlbtt.test: Exercise branching postponement.
* wrap/python/cgi/ltl2tgba.in: Make it an option.
This commit is contained in:
Alexandre Duret-Lutz 2004-05-07 10:00:34 +00:00
parent f11df7679a
commit 6b06e28f3d
6 changed files with 150 additions and 44 deletions

View file

@ -211,6 +211,7 @@ options_trans_fm = [
('opt_exprop', 'optimize determinism', 1),
('opt_symb_merge',
'merge states with same symbolic successor representation', 1),
('opt_branch_post', 'branching postponement', 0),
]
options_trans_lacim = [
('show_relation_set',
@ -407,11 +408,16 @@ if opt_symb_merge:
symb_merge = 1
else:
symb_merge = 0
if opt_branch_post:
branching_postponement = 1
else:
branching_postponement = 0
if trans_lacim:
automaton = spot.ltl_to_tgba_lacim(f, dict)
elif trans_fm:
automaton = spot.ltl_to_tgba_fm(f, dict, exprop, symb_merge)
automaton = spot.ltl_to_tgba_fm(f, dict,
exprop, symb_merge, branching_postponement)
print 'done.</p>'
sys.stdout.flush()