Fix a bug in spot.complete()

spot.complete() could complete an empty co-Büchi automaton into an
automaton accepting everything.

* NEWS: Document it
* spot/twaalgos/complete.cc: Fix it
* tests/core/complete.test, tests/core/prodor.test: Test it
This commit is contained in:
Maximilien Colange 2017-08-28 17:15:10 +02:00
parent eb91ecf66f
commit 1b2f2a79c1
4 changed files with 59 additions and 7 deletions

View file

@ -25,6 +25,14 @@ set -e
cat >automaton <<EOF
HOA: v1
States: 1
Start: 0
AP: 1 "a"
Acceptance: 1 Fin(0)
--BODY--
State: 0
--END--
HOA: v1
States: 2
Start: 0
AP: 1 "a"
@ -107,6 +115,18 @@ EOF
cat >expected <<EOF
HOA: v1
States: 1
Start: 0
AP: 1 "a"
acc-name: co-Buchi
Acceptance: 1 Fin(0)
properties: trans-labels explicit-labels state-acc colored complete
properties: deterministic
--BODY--
State: 0 {0}
[t] 0
--END--
HOA: v1
States: 3
Start: 0
AP: 1 "a"
@ -210,12 +230,12 @@ Start: 0&1
AP: 0
acc-name: co-Buchi
Acceptance: 1 Fin(0)
properties: trans-labels explicit-labels state-acc complete
properties: trans-labels explicit-labels state-acc colored complete
properties: deterministic univ-branch
--BODY--
State: 0
State: 0 {0}
[t] 0
State: 1
State: 1 {0}
[t] 0
--END--
EOF