alternation: speed up remove_alternation when few labels are used

Related to issue #566.

* spot/twaalgos/alternation.cc (alternation_remover::run): Here.
* tests/core/566.test: Augment test case.
* NEWS: Mention the change.
This commit is contained in:
Alexandre Duret-Lutz 2024-03-17 22:42:18 +01:00
parent 1e512d422b
commit f26f3243dd
3 changed files with 102 additions and 38 deletions

5
NEWS
View file

@ -150,7 +150,10 @@ New in spot 2.11.6.dev (not yet released)
- spot::dualize() learned a trick to be faster on states that have
less outgoing edges than atomic proposition declared on the
automaton. (Issue #566.)
automaton. spot::remove_alternation() learned a similar trick,
except it isn't applied at the state level but of the entire
alternating use few distinct labels. These two changes speed up
the complementation of very weak automata. (Issue #566.)
- [Potential backward incompatibility] spot::dualize() does not call
cleanup_acceptance() anymore. This change ensures that the dual