* iface/gspn/ltlgspn.cc (connected_component_eesrg,

connected_component_eesrg_factory, numbered_state_heap_eesrg_semi,
numbered_state_heap_eesrg_const_iterator,
numbered_state_heap_eesrg_factory_semi): New classes.
(emptiness_check_eesrg_semi, emptiness_check_eesrg_shy_semi,
counter_example_eesrg): New functions.
* iface/gspn/eesrg.hh (emptiness_check_eesrg_semi,
emptiness_check_eesrg_shy_semi, counter_example_eesrg): New
functions.
* iface/gspn/ltlgspn.cc [EESRG]: Adjust to call these new functions.
This commit is contained in:
Alexandre Duret-Lutz 2004-04-14 15:20:35 +00:00
parent 5d4affc5d7
commit 1e360ec689
4 changed files with 331 additions and 3 deletions

View file

@ -172,10 +172,17 @@ main(int argc, char **argv)
{
spot::emptiness_check* ec;
#ifndef EESRG
if (check == Couvreur)
ec = new spot::emptiness_check(prod);
else
ec = new spot::emptiness_check_shy(prod);
#else
if (check == Couvreur)
ec = spot::emptiness_check_eesrg_semi(prod);
else
ec = spot::emptiness_check_eesrg_shy_semi(prod);
#endif
bool res = ec->check();
@ -184,9 +191,15 @@ main(int argc, char **argv)
{
if (compute_counter_example)
{
spot::counter_example ce(ecs);
ce.print_result(std::cout, proj ? model : 0);
ce.print_stats(std::cout);
spot::counter_example* ce;
#ifndef EESRG
ce = new spot::counter_example(ecs);
#else
ce = spot::counter_example_eesrg(ecs);
#endif
ce->print_result(std::cout, proj ? model : 0);
ce->print_stats(std::cout);
delete ce;
}
else
{