Introduce scc.cc to compute SCC stats and map.
This commit is contained in:
parent
d5235c6901
commit
c44d6277f2
5 changed files with 432 additions and 1 deletions
|
|
@ -47,6 +47,7 @@
|
|||
#include "tgbaalgos/rundotdec.hh"
|
||||
|
||||
#include "tgbaalgos/stats.hh"
|
||||
#include "tgbaalgos/scc.hh"
|
||||
#include "tgbaalgos/emptiness_stats.hh"
|
||||
|
||||
void
|
||||
|
|
@ -91,6 +92,8 @@ syntax(char* prog)
|
|||
<< " (requires -e)" << std::endl
|
||||
<< " -k display statistics on the TGBA instead of dumping it"
|
||||
<< std::endl
|
||||
<< " -K dump the graph of SCCs in dot"
|
||||
<< std::endl
|
||||
<< " -L fair-loop approximation (implies -f)" << std::endl
|
||||
<< " -m try to reduce accepting runs, in a second pass"
|
||||
<< std::endl
|
||||
|
|
@ -324,6 +327,10 @@ main(int argc, char** argv)
|
|||
{
|
||||
output = 9;
|
||||
}
|
||||
else if (!strcmp(argv[formula_index], "-K"))
|
||||
{
|
||||
output = 10;
|
||||
}
|
||||
else if (!strcmp(argv[formula_index], "-L"))
|
||||
{
|
||||
fair_loop_approx = true;
|
||||
|
|
@ -731,6 +738,10 @@ main(int argc, char** argv)
|
|||
}
|
||||
case 9:
|
||||
stats_reachable(a).dump(std::cout);
|
||||
build_scc_stats(a).dump(std::cout);
|
||||
break;
|
||||
case 10:
|
||||
dump_scc_dot(a, std::cout);
|
||||
break;
|
||||
default:
|
||||
assert(!"unknown output option");
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue