translator: add tls-max-states option

This restricts the time spent in translating sub-formulas for
implication tests by limiting the associated automata to 64 states by
default.  Doing so this does worsen any test case, and actually remove
all calls the BuDDy's GC in bdd.test.

* spot/twaalgos/translate.cc, spot/twaalgos/translate.hh,
spot/tl/simplify.cc, spot/tl/simplify.hh, spot/tl/contain.hh,
spot/tl/contain.cc, spot/twaalgos/ltl2tgba_fm.cc,
spot/twaalgos/ltl2tgba_fm.hh: Add support for the option or
its constraint via an output_aborter.
* bin/spot-x.cc, NEWS: Document it.
* tests/core/bdd.test: Adjust and augment test case.
This commit is contained in:
Alexandre Duret-Lutz 2020-09-17 20:49:23 +02:00
parent 9d7e6386e4
commit f5965966e9
11 changed files with 66 additions and 11 deletions

7
NEWS
View file

@ -104,6 +104,13 @@ New in spot 2.9.4.dev (not yet released)
automaton, but we should not waste too much space and time trying
that.
spot::translator additionally honor the following new variable:
tls-max-states Maximum number of states of automata involved in
automata-based implication checks for formula
simplifications. Defaults to 64.
Python:
- Bindings for functions related to parity games.