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:
parent
daf797b9d4
commit
396009c014
5 changed files with 72 additions and 15 deletions
|
|
@ -66,7 +66,7 @@ the HOA format, the output may not be exactly the same as the input.
|
|||
sets.
|
||||
|
||||
This hard-coded limit can be augmented at configure time
|
||||
using option `--enable-max-accsets=N`, but doing so will consume
|
||||
using option =--enable-max-accsets=N=, but doing so will consume
|
||||
more memory and time.
|
||||
|
||||
- Multiple (or missing) initial states are emulated.
|
||||
|
|
@ -76,7 +76,8 @@ the HOA format, the output may not be exactly the same as the input.
|
|||
is transformed into an equivalent TωA by merging the initial states
|
||||
into a single one. The merged state can either be one of the
|
||||
original initial states (if one of those has no incoming edge) or a
|
||||
new state introduced for that purpose.
|
||||
new state introduced for that purpose. This "conversion" may change
|
||||
the completeness property of the automaton.
|
||||
|
||||
Similarly, when an automaton with no initial state is loaded (this
|
||||
includes the case where the automaton has no state), a disconnected
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue