Introduce a translator class.

This perform pre- and post-processings in addition to
the LTL-to-TGBA translation.

* src/tgbaalgos/translate.cc, src/tgbaalgos/translate.hh: New files.
* src/tgbaalgos/Makefile.am: Add them.
* src/tgbaalgos/postproc.hh: Make the private part protected, so
that we can inherit from that in the translator class.
* src/bin/ltl2tgba.cc: Use the translator class to hide LTL
simplification, translation, and postprocessings.
* NEWS: Mention it.
This commit is contained in:
Alexandre Duret-Lutz 2013-03-25 19:21:09 +01:00
parent 0edb2b7a17
commit c5b7e8e1da
6 changed files with 219 additions and 30 deletions

14
NEWS
View file

@ -2,11 +2,17 @@ New in spot 1.0.2a (not released):
* New features in the library
- Postprocessor now takes an optional option_map argument that can
be used to specify fine-tuning options, making it easier to
benchmark different scenarios while developing new
- The postprocessor class now takes an optional option_map
argument that can be used to specify fine-tuning options, making
it easier to benchmark different scenarios while developing new
postprocessings.
- A new translator class implements a complete translation chain,
from LTL/PSL to TGBA/BA/Monitor. It performs pre- and
post-processings in addition to the core translation, and offers
an interface similar to that used in the postprocessor class, to
specify the intent of the translation.
- The degeneralization algorithm has learned three new tricks:
level reset, level caching, and SCC-based ordering. The former
two are enabled by default. Benchmarking has shown that the
@ -26,7 +32,7 @@ New in spot 1.0.2a (not released):
* Command-line tools
- ltl2tgba and ltl2tgta now honor a new --extra-options (or -x)
flag to fine-tune the algorithm used. The available options
flag to fine-tune the algorithms used. The available options
are documented in the spot-x (7) manpage.
New in spot 1.0.2 (2013-03-06):