Add a new, parameterized, version of the Couvreur emptiness check.

This version has optimization for explicit twa, and also for weak and
terminal (depending on whether an accepting run is requested) automata.

* spot/twaalgos/couvreurnew.hh, spot/twaalgos/couvreurnew.cc,
  spot/twaalgos/Makefile.am: New files for the new algorithm.
* spot/twaalgos/emptiness.cc, tests/core/randtgba.cc:
  Register new algorithm.
This commit is contained in:
Maximilien Colange 2016-11-25 11:52:11 +01:00
parent f0416b3f3c
commit 1a08eca840
6 changed files with 927 additions and 0 deletions

7
NEWS
View file

@ -4,6 +4,13 @@ New in spot 2.2.1.dev (Not yet released)
* A twa is required to have at least one state, the initial state.
* The Couvreur emptiness check has been rewritten to use the explicit
interface when possible, to avoid overkill memory allocations.
The new version has further optimizations for weak and terminal
automata. Overall, this new version is roughly 4x faster on explicit
automata than the former one. The old version has been kept for
compatibility.
Build:
* If the system has an installed libltdl library, use it instead of