Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members

spot::parity_game_graph_direct Class Reference

Parity game graph which compute the direct simulation relation. More...

#include <reductgba_sim.hh>

Inheritance diagram for spot::parity_game_graph_direct:

Inheritance graph
[legend]
Collaboration diagram for spot::parity_game_graph_direct:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 parity_game_graph_direct (const tgba *a)
 ~parity_game_graph_direct ()
virtual simulation_relationget_relation ()
void print (std::ostream &os)
virtual void add_state (const state *s)
virtual const statenext_state ()
 Called by run() to obtain the.

void run ()
 Iterate over all reachable states of a spot::tgba.


Protected Types

typedef Sgi::hash_map< const
state *, int, state_ptr_hash,
state_ptr_equal
seen_map

Protected Member Functions

virtual void build_graph ()
 Compute each node of the graph.

virtual void lift ()
 Compute the link of the graph. Successor of spoiler node (resp. duplicator node) are duplicator node (resp. spoiler node). Remove edge from spoiler to duplicator that make duplicator loose. Spoiler node whose still have some link, reveal a direct simulation relation.

void build_link ()
void start ()
 Called by run() before starting its iteration.

void end ()
 Called by run() once all states have been explored.

void process_state (const state *s, int n, tgba_succ_iterator *si)
void process_link (int in, int out, const tgba_succ_iterator *si)

Protected Attributes

sn_v spoiler_vertice_
dn_v duplicator_vertice_
s_v tgba_state_
int nb_node_parity_game
std::deque< const state * > todo
 A queue of states yet to explore.

const tgbaautomata_
 The spot::tgba to explore.

seen_map seen
 States already seen.


Detailed Description

Parity game graph which compute the direct simulation relation.


Member Typedef Documentation

typedef Sgi::hash_map<const state*, int, state_ptr_hash, state_ptr_equal> spot::tgba_reachable_iterator::seen_map [protected, inherited]
 

Reimplemented in spot::tgba_reduc.


Constructor & Destructor Documentation

spot::parity_game_graph_direct::parity_game_graph_direct const tgba a  ) 
 

spot::parity_game_graph_direct::~parity_game_graph_direct  ) 
 


Member Function Documentation

virtual void spot::tgba_reachable_iterator_breadth_first::add_state const state s  )  [virtual, inherited]
 

Implements spot::tgba_reachable_iterator.

virtual void spot::parity_game_graph_direct::build_graph  )  [protected, virtual]
 

Compute each node of the graph.

Implements spot::parity_game_graph.

void spot::parity_game_graph_direct::build_link  )  [protected]
 

void spot::parity_game_graph::end  )  [protected, virtual, inherited]
 

Called by run() once all states have been explored.

Reimplemented from spot::tgba_reachable_iterator.

virtual simulation_relation* spot::parity_game_graph_direct::get_relation  )  [virtual]
 

Implements spot::parity_game_graph.

virtual void spot::parity_game_graph_direct::lift  )  [protected, virtual]
 

Compute the link of the graph. Successor of spoiler node (resp. duplicator node) are duplicator node (resp. spoiler node). Remove edge from spoiler to duplicator that make duplicator loose. Spoiler node whose still have some link, reveal a direct simulation relation.

Implements spot::parity_game_graph.

virtual const state* spot::tgba_reachable_iterator_breadth_first::next_state  )  [virtual, inherited]
 

Called by run() to obtain the.

Implements spot::tgba_reachable_iterator.

void spot::parity_game_graph::print std::ostream &  os  )  [inherited]
 

void spot::parity_game_graph::process_link int  in,
int  out,
const tgba_succ_iterator si
[protected, virtual, inherited]
 

Called by run() to process a transition.

Parameters:
in The source state number.
out The destination state number.
si The spot::tgba_succ_iterator positionned on the current transition.

Reimplemented from spot::tgba_reachable_iterator.

void spot::parity_game_graph::process_state const state s,
int  n,
tgba_succ_iterator si
[protected, virtual, inherited]
 

Called by run() to process a state.

Parameters:
s The current state.
n An unique number assigned to s.
si The spot::tgba_succ_iterator for s.

Reimplemented from spot::tgba_reachable_iterator.

void spot::tgba_reachable_iterator::run  )  [inherited]
 

Iterate over all reachable states of a spot::tgba.

This is a template method that will call add_state(), next_state(), start(), end(), process_state(), and process_link(), while it iterate over state.

void spot::parity_game_graph::start  )  [protected, virtual, inherited]
 

Called by run() before starting its iteration.

Reimplemented from spot::tgba_reachable_iterator.


Member Data Documentation

const tgba* spot::tgba_reachable_iterator::automata_ [protected, inherited]
 

The spot::tgba to explore.

dn_v spot::parity_game_graph::duplicator_vertice_ [protected, inherited]
 

int spot::parity_game_graph::nb_node_parity_game [protected, inherited]
 

seen_map spot::tgba_reachable_iterator::seen [protected, inherited]
 

States already seen.

sn_v spot::parity_game_graph::spoiler_vertice_ [protected, inherited]
 

s_v spot::parity_game_graph::tgba_state_ [protected, inherited]
 

std::deque<const state*> spot::tgba_reachable_iterator_breadth_first::todo [protected, inherited]
 

A queue of states yet to explore.


The documentation for this class was generated from the following file:
Generated on Tue Jun 29 17:02:11 2004 for spot by doxygen 1.3.7