spot  1.2.1a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
spot::concur_opt_tarjan_ec Class Reference

An emptiness based on the tarjan parallel computation algorithm above. More...

#include <fasttgbaalgos/ec/concurec/dead_share.hh>

Inheritance diagram for spot::concur_opt_tarjan_ec:
Inheritance graph
Collaboration diagram for spot::concur_opt_tarjan_ec:
Collaboration graph

Public Member Functions

 concur_opt_tarjan_ec (instanciator *i, spot::uf *uf, int thread_number, int *stop, bool swarming, std::string option="-cs")
 A constuctor. More...
 
virtual void dfs_pop ()
 Pop states already explored. More...
 
virtual bool dfs_update (fasttgba_state *s)
 the update for backedges More...
 
virtual void fastbacktrack ()
 Speed up the backtrack when the current state as been already marked dead by another thread. More...
 
virtual std::string csv ()
 Display the csv of for this thread. More...
 
virtual bool check ()
 Launch the emptiness check. More...
 
virtual void dfs_push (fasttgba_state *q)
 Push a new state to explore. More...
 
virtual color get_color (const fasttgba_state *state)
 Access the color of a state. More...
 
virtual void main ()
 the main procedure More...
 
virtual bool has_counterexample ()
 
virtual
std::chrono::milliseconds::rep 
get_elapsed_time ()
 
virtual int nb_inserted ()
 
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...
 

Protected Attributes

spot::ufuf_
 
int tn_
 a reference to shared union find More...
 
int * stop_
 the thread identifier More...
 
std::chrono::time_point
< std::chrono::system_clock > 
start
 stop the world varibale More...
 
std::chrono::time_point
< std::chrono::system_clock > 
end
 start! More...
 
int make_cpt_
 stop! More...
 
std::vector< pair_state_itertodo
 the todo stack More...
 
stack_of_lowlinkdstack_
 Use a "generic" lowlink stack. More...
 
bool counterexample_found
 
const fasttgbaa_
 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...
 
deadstoredeadstore_
 The store for Deads states. More...
 
const instance_automatoninst
 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...
 

Detailed Description

An emptiness based on the tarjan parallel computation algorithm above.

Member Typedef Documentation

typedef Sgi::hash_map<const fasttgba_state*, int, fasttgba_state_ptr_hash, fasttgba_state_ptr_equal> spot::opt_tarjan_scc::seen_map
protectedinherited

The map of visited states.

Member Enumeration Documentation

enum spot::opt_tarjan_scc::color
protectedinherited

The color for a new State.

Constructor & Destructor Documentation

spot::concur_opt_tarjan_ec::concur_opt_tarjan_ec ( instanciator i,
spot::uf uf,
int  thread_number,
int *  stop,
bool  swarming,
std::string  option = "-cs" 
)
inline

A constuctor.

Member Function Documentation

virtual bool spot::concur_opt_tarjan_scc::check ( )
virtualinherited

Launch the emptiness check.

Implements spot::ec.

virtual std::string spot::concur_opt_tarjan_ec::csv ( )
virtual

Display the csv of for this thread.

Reimplemented from spot::concur_opt_tarjan_scc.

virtual void spot::concur_opt_tarjan_ec::dfs_pop ( )
virtual

Pop states already explored.

Reimplemented from spot::concur_opt_tarjan_scc.

virtual void spot::concur_opt_tarjan_scc::dfs_push ( fasttgba_state )
virtualinherited

Push a new state to explore.

Reimplemented from spot::opt_tarjan_scc.

virtual bool spot::concur_opt_tarjan_ec::dfs_update ( fasttgba_state s)
virtual

the update for backedges

Reimplemented from spot::concur_opt_tarjan_scc.

std::string spot::opt_tarjan_scc::extra_info_csv ( )
inherited

Supply more information in a CSV way Informations are : Number of merge, number of states mark as dead.

virtual void spot::concur_opt_tarjan_ec::fastbacktrack ( )
virtual

Speed up the backtrack when the current state as been already marked dead by another thread.

virtual color spot::concur_opt_tarjan_scc::get_color ( const fasttgba_state )
virtualinherited

Access the color of a state.

Storage for counterexample found or not

Reimplemented from spot::opt_tarjan_scc.

void spot::opt_tarjan_scc::init ( )
protectedinherited

Fix set ups for the algo.

virtual void spot::concur_opt_tarjan_scc::main ( )
virtualinherited

the main procedure

Reimplemented from spot::opt_tarjan_scc.

Member Data Documentation

const fasttgba* spot::opt_tarjan_scc::a_
protectedinherited

the automaton that will be used for the Emptiness check

deadstore* spot::opt_tarjan_scc::deadstore_
protectedinherited

The store for Deads states.

unsigned int spot::opt_tarjan_scc::dfs_size_
protectedinherited

keep dfs size

stack_of_lowlink* spot::opt_tarjan_scc::dstack_
protectedinherited

Use a "generic" lowlink stack.

std::chrono::time_point<std::chrono::system_clock> spot::concur_opt_tarjan_scc::end
protectedinherited

start!

seen_map spot::opt_tarjan_scc::H
protectedinherited

the HashMap Live

const instance_automaton* spot::opt_tarjan_scc::inst
protectedinherited

The instance automaton.

std::vector<const spot::fasttgba_state*> spot::opt_tarjan_scc::live
protectedinherited

The live stack.

int spot::concur_opt_tarjan_scc::make_cpt_
protectedinherited

stop!

unsigned int spot::opt_tarjan_scc::max_dfs_size_
protectedinherited

keep peack size

unsigned int spot::opt_tarjan_scc::max_live_size_
protectedinherited

keep peack size

int spot::opt_tarjan_scc::memory_cost_
protectedinherited

evaluates memory

int spot::opt_tarjan_scc::roots_poped_cpt_
protectedinherited

count UPDATE loop iterations

std::chrono::time_point<std::chrono::system_clock> spot::concur_opt_tarjan_scc::start
protectedinherited

stop the world varibale

int spot::opt_tarjan_scc::states_cpt_
protectedinherited

count states

int* spot::concur_opt_tarjan_scc::stop_
protectedinherited

the thread identifier

bool spot::opt_tarjan_scc::swarm_
protectedinherited

shall use swarming?

int spot::concur_opt_tarjan_scc::tn_
protectedinherited

a reference to shared union find

std::vector<pair_state_iter> spot::opt_tarjan_scc::todo
protectedinherited

the todo stack

int spot::opt_tarjan_scc::transitions_cpt_
protectedinherited

count transitions

int spot::opt_tarjan_scc::trivial_scc_
protectedinherited

count trivial SCCs

int spot::opt_tarjan_scc::update_cpt_
protectedinherited

count UPDATE calls


The documentation for this class was generated from the following file:

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Tue Jan 21 2014 16:52:02 for spot by doxygen 1.8.5