A lazy product between a Testing automaton and a Kripke structure. (States are computed on the fly.)
More...
#include <ta/taproduct.hh>
Detailed Description
A lazy product between a Testing automaton and a Kripke structure. (States are computed on the fly.)
Member Typedef Documentation
Constructor & Destructor Documentation
spot::ta_product::ta_product |
( |
const ta * |
testing_automaton, |
|
|
const kripke * |
kripke_structure |
|
) |
| |
Constructor.
- Parameters
-
testing_automaton | The TA component in the product. |
kripke_structure | The Kripke component in the product. |
virtual spot::ta_product::~ta_product |
( |
| ) |
|
|
virtual |
spot::ta_product::ta_product |
( |
const ta_product & |
| ) |
|
|
private |
Member Function Documentation
virtual bdd spot::ta_product::all_acceptance_conditions |
( |
| ) |
const |
|
virtual |
Return the set of all acceptance conditions used by this automaton (for Generalized form: Transition-based Generalized Testing Automata).
The goal of the emptiness check is to ensure that a strongly connected component walks through each of these acceptiong conditions. I.e., the union of the acceptiong conditions of all transition in the SCC should be equal to the result of this function.
Implements spot::ta.
virtual std::string spot::ta_product::format_state |
( |
const spot::state * |
s | ) |
const |
|
virtual |
Format the state as a string for printing.
This formating is the responsability of the automata that owns the state.
Implements spot::ta.
virtual void spot::ta_product::free_state |
( |
const spot::state * |
s | ) |
const |
|
virtual |
virtual spot::state* spot::ta::get_artificial_initial_state |
( |
| ) |
const |
|
inlinevirtualinherited |
Get the artificial initial state set of the automaton. Return 0 if this artificial state is not implemented (in this case, use get_initial_states_set
) The aim of adding this state is to have an unique initial state. This artificial initial state have one transition to each real initial state, and this transition is labeled by the corresponding initial condition. (For more details, see the paper cited above)
Reimplemented in spot::ta_explicit.
virtual bdd_dict* spot::ta_product::get_dict |
( |
| ) |
const |
|
virtual |
Get the dictionary associated to the automaton.
State are represented as BDDs. The dictionary allows to map BDD variables back to formulae, and vice versa. This is useful when dealing with several automata (which may use the same BDD variable for different formula), or simply when printing.
Implements spot::ta.
Get the initial states set of the automaton.
Implements spot::ta.
const kripke* spot::ta_product::get_kripke |
( |
| ) |
const |
|
inline |
virtual bdd spot::ta_product::get_state_condition |
( |
const spot::state * |
s | ) |
const |
|
virtual |
Return a BDD condition that represents the valuation of atomic propositions in the state s.
Implements spot::ta.
const ta* spot::ta_product::get_ta |
( |
| ) |
const |
|
inline |
virtual bool spot::ta_product::is_accepting_state |
( |
const spot::state * |
s | ) |
const |
|
virtual |
Return true if s is a Buchi-accepting state, otherwise false.
Implements spot::ta.
virtual bool spot::ta_product::is_hole_state_in_ta_component |
( |
const spot::state * |
s | ) |
const |
|
virtual |
Return true if the state s has no succeseurs in the TA automaton (the TA component of the product automaton)
virtual bool spot::ta_product::is_initial_state |
( |
const spot::state * |
s | ) |
const |
|
virtual |
Return true if s is an initial state, otherwise false.
Implements spot::ta.
virtual bool spot::ta_product::is_livelock_accepting_state |
( |
const spot::state * |
s | ) |
const |
|
virtual |
Return true if s is a livelock-accepting state , otherwise false.
Implements spot::ta.
Get an iterator over the successors of state.
The iterator has been allocated with new
. It is the responsability of the caller to delete
it when no longer needed.
Implements spot::ta.
Get an iterator over the successors of state filtred by the changeset on transitions.
The iterator has been allocated with new
. It is the responsability of the caller to delete
it when no longer needed.
Implements spot::ta.
Member Data Documentation
const kripke* spot::ta_product::kripke_ |
|
private |
const ta* spot::ta_product::ta_ |
|
private |
The documentation for this class was generated from the following file: