spot
1.2.1a
|
Compute the SCCs of a TGBA. More...
#include <fasttgbaalgos/ec/opt/opt_tarjan_scc.hh>
Classes | |
struct | pair_state_iter |
Public Member Functions | |
opt_tarjan_scc (instanciator *i, std::string option="", bool swarm=false) | |
A constructor taking the automaton to check. More... | |
virtual | ~opt_tarjan_scc () |
A destructor. More... | |
bool | check () |
The implementation of the interface. More... | |
std::string | extra_info_csv () |
Protected Types | |
enum | color { Alive, Dead, Unknown } |
The color for a new State. More... | |
typedef Sgi::hash_map< const fasttgba_state *, int, fasttgba_state_ptr_hash, fasttgba_state_ptr_equal > | seen_map |
The map of visited states. More... | |
Protected Member Functions | |
void | init () |
Fix set ups for the algo. More... | |
virtual void | dfs_push (fasttgba_state *) |
Push a new state to explore. More... | |
virtual void | dfs_pop () |
Pop states already explored. More... | |
virtual bool | dfs_update (fasttgba_state *s) |
the update for backedges More... | |
virtual void | main () |
the main procedure More... | |
virtual opt_tarjan_scc::color | get_color (const fasttgba_state *) |
Access the color of a state. More... | |
Protected Attributes | |
std::vector< pair_state_iter > | todo |
the todo stack More... | |
stack_of_lowlink * | dstack_ |
Use a "generic" lowlink stack. More... | |
bool | counterexample_found |
const fasttgba * | a_ |
the automaton that will be used for the Emptiness check More... | |
std::vector< const spot::fasttgba_state * > | live |
The live stack. More... | |
seen_map | H |
the HashMap Live More... | |
deadstore * | deadstore_ |
The store for Deads states. More... | |
const instance_automaton * | inst |
The instance automaton. More... | |
unsigned int | dfs_size_ |
keep dfs size More... | |
unsigned int | max_live_size_ |
keep peack size More... | |
unsigned int | max_dfs_size_ |
keep peack size More... | |
int | update_cpt_ |
count UPDATE calls More... | |
int | roots_poped_cpt_ |
count UPDATE loop iterations More... | |
int | states_cpt_ |
count states More... | |
int | transitions_cpt_ |
count transitions More... | |
int | memory_cost_ |
evaluates memory More... | |
int | trivial_scc_ |
count trivial SCCs More... | |
bool | swarm_ |
shall use swarming? More... | |
Compute the SCCs of a TGBA.
This implementation use many optimisations
|
protected |
The map of visited states.
|
protected |
The color for a new State.
spot::opt_tarjan_scc::opt_tarjan_scc | ( | instanciator * | i, |
std::string | option = "" , |
||
bool | swarm = false |
||
) |
A constructor taking the automaton to check.
|
virtual |
A destructor.
|
virtual |
The implementation of the interface.
Implements spot::ec.
|
protectedvirtual |
Pop states already explored.
Reimplemented in spot::concur_opt_tarjan_ec, spot::opt_tarjan_ec, and spot::concur_opt_tarjan_scc.
|
protectedvirtual |
Push a new state to explore.
Reimplemented in spot::concur_opt_tarjan_scc.
|
protectedvirtual |
the update for backedges
Reimplemented in spot::concur_opt_tarjan_ec, spot::opt_tarjan_ec, and spot::concur_opt_tarjan_scc.
std::string spot::opt_tarjan_scc::extra_info_csv | ( | ) |
Supply more information in a CSV way Informations are : Number of merge, number of states mark as dead.
|
protectedvirtual |
Access the color of a state.
Storage for counterexample found or not
Reimplemented in spot::concur_opt_tarjan_scc.
|
protected |
Fix set ups for the algo.
|
protectedvirtual |
the main procedure
Reimplemented in spot::concur_opt_tarjan_scc.
|
protected |
the automaton that will be used for the Emptiness check
|
protected |
The store for Deads states.
|
protected |
keep dfs size
|
protected |
Use a "generic" lowlink stack.
|
protected |
the HashMap Live
|
protected |
The instance automaton.
|
protected |
The live stack.
|
protected |
keep peack size
|
protected |
keep peack size
|
protected |
evaluates memory
|
protected |
count UPDATE loop iterations
|
protected |
count states
|
protected |
shall use swarming?
|
protected |
the todo stack
|
protected |
count transitions
|
protected |
count trivial SCCs
|
protected |
count UPDATE calls