parseaut: better merge of multiple initial states

If an initial states without incoming transition has to be merged into
another one, its outgoing edges can be reused by just changing their
source.

* spot/parseaut/parseaut.yy (fix_initial_state): Implement this here.
* tests/core/522.test: Add more tests.
* tests/core/readsave.test: Adjust one expected output.
* doc/org/hoa.org: Mention the completeness change.
* NEWS: Mention the new feature.
This commit is contained in:
Alexandre Duret-Lutz 2023-01-05 15:09:26 +01:00
parent daf797b9d4
commit 396009c014
5 changed files with 72 additions and 15 deletions

5
NEWS
View file

@ -9,6 +9,11 @@ New in spot 2.11.3.dev (not yet released)
- b:b[*i..j] = b[*max(i,1)..j]
- b[*i..j]:b[*k..l] = b[*max(i,1)+max(k,1)-1, j+l-1]
- The HOA parser is a bit smarter when merging multiple initial
states into a single initial state (Spot's automaton class
supports only one): it now reuse the edges leaving initial states
without incoming transitions.
Python:
- spot.acd() no longer depends on jQuery for interactivity.