22 #include "twaalgos/reachiter.hh"
23 #include "twaalgos/stats.hh"
35 proviso_(proviso), dotty_(dotty)
39 already_expanded_ = 0;
50 if (proviso_.expand_new_state(n, it->
all_enabled(), it, seen, s, aut_))
61 if (proviso_.expand_before_pop(n, it, seen))
78 std::cout <<
' ' << src <<
" -> " << dst << std::endl;
86 if (proviso_.expand_src_closingedge(src, dst))
96 std::cout <<
"digraph G {\n";
102 std::cout <<
'}' << std::endl;
108 std::cout <<
"expanded: " << expanded_ << std::endl;
109 std::cout <<
"already_expanded: " << already_expanded_ << std::endl;
114 int already_expanded_;
void end()
Called by run() once all states have been explored.
Definition: dfs_stats.hh:99
bool will_pop_state(const state *, int n, twa_succ_iterator *it)
Definition: dfs_stats.hh:58
Abstract class for states.
Definition: twa.hh:42
virtual bool done() const =0
Check whether the iteration is finished.
virtual bool all_enabled() const
this method is only usefull if partial order reductions are enabled to check wether all states have b...
Definition: twa.hh:404
virtual bool next()=0
Jump to the next successor (if any).
Definition: dfs_stats.hh:29
void process_link(const state *, int src, const state *, int dst, const twa_succ_iterator *it)
Definition: dfs_stats.hh:74
Iterate over the successors of a state.
Definition: twa.hh:331
void start()
Called by run() before starting its iteration.
Definition: dfs_stats.hh:93
virtual void fire_all() const
this method is only usefull if partial order reductions are enabled
Definition: twa.hh:399
Iterate over all states of an automaton using a DFS.
Definition: reachiter.hh:116
Definition: proviso.hh:31
void process_state(const state *s, int n, twa_succ_iterator *it)
Definition: dfs_stats.hh:43