Commit 7a54e048 authored by Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz
Browse files

* src/tgbaalgos/emptinesscheck.cc (emptiness_check::print_stats):

New function.
* src/tgbaalgos/emptinesscheck.hh (emptiness_check::print_stats):
Likewise.
* iface/gspn/ltlgspn.cc (main) <Couvreur>: Call print_stats().
* iface/gspn/ltleesrg.cc (main): Likewise.
parent 4732d165
2004-01-09 Alexandre Duret-Lutz <adl@src.lip6.fr>
* src/tgbaalgos/emptinesscheck.cc (emptiness_check::print_stats):
New function.
* src/tgbaalgos/emptinesscheck.hh (emptiness_check::print_stats):
Likewise.
* iface/gspn/ltlgspn.cc (main) <Couvreur>: Call print_stats().
* iface/gspn/ltleesrg.cc (main): Likewise.
* iface/gspn/ltlgspn.cc: Add option -P.
2004-01-08 Alexandre Duret-Lutz <adl@src.lip6.fr>
......
......@@ -75,12 +75,15 @@ main(int argc, char **argv)
{
ec.counter_example();
ec.print_result(std::cout, &a);
exit(1);
}
else
{
std::cout << "empty" << std::endl;
}
std::cout << std::endl;
ec.print_stats(std::cout);
if (!res)
exit(1);
}
delete prod;
......
......@@ -146,12 +146,15 @@ main(int argc, char **argv)
{
std::cout << "non empty" << std::endl;
}
exit(1);
}
else
{
std::cout << "empty" << std::endl;
}
std::cout << std::endl;
ec.print_stats(std::cout);
if (!res)
exit(1);
}
break;
case Magic:
......
......@@ -633,4 +633,17 @@ namespace spot
// forming a cycle.
complete_cycle(scc, start, suffix.back());
}
void
emptiness_check::print_stats(std::ostream& os) const
{
os << h.size() << " unique states visited" << std::endl;
os << suffix.size() << " states in suffix" << std::endl;
os << period.size() << " states in period" << std::endl;
os << root.size()
<< " strongly connected components in search stack"
<< std::endl;
}
}
// Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6),
// Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
// département Systèmes Répartis Coopératifs (SRC), Université Pierre
// et Marie Curie.
//
......@@ -68,9 +68,15 @@ namespace spot
/// Compute a counter example if tgba_emptiness_check() returned false.
void counter_example();
/// \brief Display the example computed by counter_example().
///
/// \param restrict optional automaton to project the example on.
std::ostream& print_result(std::ostream& os,
const tgba* restrict = 0) const;
/// Output statistics about this object.
void print_stats(std::ostream& os) const;
private:
struct connected_component
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment