spot
1.2.1a
|
#include <fasttgba/fasttgba_explicit.hh>
Public Member Functions | |
fasttgbaexplicit (ap_dict *aps, acc_dict *acc) | |
Constructor for a fasttgba. More... | |
virtual fasttgba_state * | get_init_state () const |
Get the initial state of the automaton. More... | |
virtual fasttgba_succ_iterator * | succ_iter (const fasttgba_state *local_state) const |
Get an iterator over the successors of state. More... | |
virtual fasttgba_succ_iterator * | swarm_succ_iter (const fasttgba_state *state) const |
Get a Swarm iterator over the sucessors of a state. More... | |
virtual ap_dict & | get_dict () const |
Get the dictionary associated to the automaton. More... | |
virtual acc_dict & | get_acc () const |
Get the acceptance dictionary associated to the automaton. More... | |
virtual std::string | format_state (const fasttgba_state *state) const |
Format the state as a string for printing. More... | |
virtual std::string | transition_annotation (const fasttgba_succ_iterator *t) const |
Return a possible annotation for the transition pointed to by the iterator. More... | |
virtual fasttgba_state * | project_state (const fasttgba_state *s, const fasttgba *t) const |
Project a state on an automaton. More... | |
virtual markset | all_acceptance_marks () const |
Return the set of all acceptance marks used by this automaton. More... | |
virtual unsigned int | number_of_acceptance_marks () const |
The number of acceptance marks. More... | |
aut_strength | get_strength () const |
Ease to detect the strength of an automaton. More... | |
fast_explicit_state * | add_state (int s) |
Provide the manner to add a new state to this automaton. More... | |
void | add_transition (int src, int dst, cube cond, markset acc) |
Provide the way to create a transision between two states. More... | |
void | set_strength (aut_strength s) |
set the strength of an automaton More... | |
Protected Types | |
typedef Sgi::hash_map< int, fast_explicit_state *, identity_hash< int > > | sm |
Protected Attributes | |
markset | all_marks_ |
the set of acceptance mark More... | |
ap_dict * | aps_ |
The set of atomic proposition. More... | |
acc_dict * | acc_ |
The set of acceptance mark. More... | |
const fasttgba_state * | init_ |
sm | state_map_ |
The states of the automaton. More... | |
aut_strength | strength_ |
int | num_acc_ |
The number of acceptance mark. More... | |
int | num_var_ |
The number of variables. More... | |
This class is the concrete implementation of the fasttgba interface. Moreover this interface provides all what is needed to build such an automaton
Constructor for a fasttgba.
aps | a set of atomic proposition name |
acc | a set of acceptance variable name |
fast_explicit_state* spot::fasttgbaexplicit::add_state | ( | int | s | ) |
Provide the manner to add a new state to this automaton.
If it's the first state added to this automaton, then this state becomes the initial one
s | the integer name for the state |
Provide the way to create a transision between two states.
src | the label of the source state |
dst | the label of the destination state |
cond | the atomic proposition labelling the transition |
cond | the accepting mark on this transition |
|
virtual |
Return the set of all acceptance marks used by this automaton.
The goal of the emptiness check is to ensure that a strongly connected component walks through each of these acceptance conditions. I.e., the union of the acceptance conditions of all transition in the SCC should be equal to the result of this function.
Implements spot::fasttgba.
|
virtual |
Format the state as a string for printing.
This formating is the responsability of the automata that owns the state.
Implements spot::fasttgba.
|
virtual |
Get the acceptance dictionary associated to the automaton.
Implements spot::fasttgba.
|
virtual |
Get the dictionary associated to the automaton.
Implements spot::fasttgba.
|
virtual |
Get the initial state of the automaton.
The state has been allocated with new
. It is the responsability of the caller to destroy
it when no longer needed.
Implements spot::fasttgba.
|
inline |
Ease to detect the strength of an automaton.
The strength of an automaton is the strength of the highest SCC. If we are not able to detect the strength of an SCC, the automaton must be consider strong.
|
virtual |
The number of acceptance marks.
Implements spot::fasttgba.
|
virtual |
Project a state on an automaton.
Implements spot::fasttgba.
|
inline |
set the strength of an automaton
|
virtual |
Get an iterator over the successors of state.
state | The state whose successors are to be explored. This pointer is not adopted in any way by succ_iter , and it is still the caller's responsability to destroy it when appropriate (this can be done during the lifetime of the iterator). |
Implements spot::fasttgba.
|
virtual |
Get a Swarm iterator over the sucessors of a state.
Such an iterator visits randomly once each outgoing transitions
state | the states whose successors are to be explored. |
Implements spot::fasttgba.
|
virtual |
Return a possible annotation for the transition pointed to by the iterator.
Implements spot::fasttgba.
|
protected |
The set of acceptance mark.
|
protected |
the set of acceptance mark
|
protected |
The set of atomic proposition.
|
mutableprotectedinherited |
The number of acceptance mark.
|
mutableprotectedinherited |
The number of variables.
|
protected |
The states of the automaton.