scc_info: determine accepting/rejecting-SCCs for any acceptance
* src/twaalgos/sccinfo.cc, src/twaalgos/sccinfo.hh (determine_unknown_acceptance): New function to call explicitly in case one want to know whether the accepting/rejecting status of all SCCs regardless of the acceptance. * src/twaalgos/dotty.cc src/twaalgos/sccfilter.cc, src/twaalgos/sccfilter.hh: Use it. * src/tests/unambig.test, src/tests/sccdot.test: Add more tests. * doc/org/oaut.org: Adjust doc for --dot=s, orange is not output anymore.
This commit is contained in:
parent
07ee3d2dd0
commit
8c32fba8b9
8 changed files with 148 additions and 20 deletions
|
|
@ -86,12 +86,12 @@ digraph G {
|
|||
6 [label="6"]
|
||||
}
|
||||
subgraph cluster_1 {
|
||||
color=orange
|
||||
color=grey
|
||||
label=""
|
||||
0 [label="0"]
|
||||
}
|
||||
subgraph cluster_2 {
|
||||
color=orange
|
||||
color=green
|
||||
label=""
|
||||
9 [label="9"]
|
||||
10 [label="10"]
|
||||
|
|
@ -148,3 +148,41 @@ digraph G {
|
|||
EOF
|
||||
|
||||
diff out.dot expected
|
||||
|
||||
# While we are here, make sure scc_filter remove those grey SCCs.
|
||||
../../bin/autfilt --small -x simul=0 in.hoa -H > out.hoa
|
||||
cat >expected.hoa <<EOF
|
||||
HOA: v1
|
||||
States: 8
|
||||
Start: 0
|
||||
AP: 2 "a" "b"
|
||||
Acceptance: 3 Fin(2) & (Inf(0)&Inf(1))
|
||||
properties: trans-labels explicit-labels trans-acc
|
||||
--BODY--
|
||||
State: 0
|
||||
[0&!1] 2
|
||||
[1] 3
|
||||
State: 1
|
||||
[1] 4
|
||||
State: 2
|
||||
[0&1] 0 {0 1}
|
||||
State: 3
|
||||
[1] 1
|
||||
[!1] 3
|
||||
State: 4
|
||||
[!0&1] 4 {0 1}
|
||||
[0&1] 4 {0 2}
|
||||
[t] 5
|
||||
State: 5
|
||||
[0&1] 5 {0 1}
|
||||
[!0&1] 5 {0 2}
|
||||
[t] 6
|
||||
State: 6
|
||||
[!0&1] 6 {0 2}
|
||||
[0&1] 7 {0 1}
|
||||
State: 7
|
||||
[!0&1] 6 {0 1}
|
||||
[0&1] 7 {0 2}
|
||||
--END--
|
||||
EOF
|
||||
diff expected.hoa out.hoa
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue