* src/tgbaalgos/magic.cc: rewrite to externalize the heap and
prepare it to a bit state hashing version. * src/tgbaalgos/magic.hh: adapt to the new interface of magic_search and se05_search. * src/tgbaalgos/se05.cc: new file. * src/tgbaalgos/Makefile.am: Add it. * src/tgbatest/ltl2tgba.cc: Add new emptiness check. * src/tgbatest/emptchk.test: more tests. * src/tgbatest/dfs.test: new file. * src/tgbatest/Makefile.am: Add it.
This commit is contained in:
parent
908b6129f4
commit
f52082bcfb
9 changed files with 1226 additions and 254 deletions
|
|
@ -119,7 +119,9 @@ syntax(char* prog)
|
|||
<< " couvreur99 (the default)" << std::endl
|
||||
<< " couvreur99_shy" << std::endl
|
||||
<< " magic_search" << std::endl
|
||||
<< " magic_search_repeated" << std::endl;
|
||||
<< " magic_search_repeated" << std::endl
|
||||
<< " se05_search" << std::endl
|
||||
<< " se05_search_repeated" << std::endl;
|
||||
exit(2);
|
||||
}
|
||||
|
||||
|
|
@ -137,7 +139,7 @@ main(int argc, char** argv)
|
|||
int output = 0;
|
||||
int formula_index = 0;
|
||||
std::string echeck_algo;
|
||||
enum { None, Couvreur, Couvreur2, MagicSearch } echeck = None;
|
||||
enum { None, Couvreur, Couvreur2, MagicSearch, Se04Search } echeck = None;
|
||||
enum { NoneDup, BFS, DFS } dupexp = NoneDup;
|
||||
bool magic_many = false;
|
||||
bool expect_counter_example = false;
|
||||
|
|
@ -347,6 +349,17 @@ main(int argc, char** argv)
|
|||
degeneralize_opt = true;
|
||||
magic_many = true;
|
||||
}
|
||||
else if (echeck_algo == "se05_search")
|
||||
{
|
||||
echeck = Se04Search;
|
||||
degeneralize_opt = true;
|
||||
}
|
||||
else if (echeck_algo == "se05_search_repeated")
|
||||
{
|
||||
echeck = Se04Search;
|
||||
degeneralize_opt = true;
|
||||
magic_many = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cerr << "unknown emptiness-check: " << echeck_algo << std::endl;
|
||||
|
|
@ -569,7 +582,12 @@ main(int argc, char** argv)
|
|||
|
||||
case MagicSearch:
|
||||
ec_a = degeneralized;
|
||||
ec = new spot::magic_search(degeneralized);
|
||||
ec = spot::explicit_magic_search(degeneralized);
|
||||
break;
|
||||
|
||||
case Se04Search:
|
||||
ec_a = degeneralized;
|
||||
ec = spot::explicit_se05_search(degeneralized);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue