19 #ifndef SPOT_FASTTGBA_FASTTGBA_PRODUCT_HH
20 # define SPOT_FASTTGBA_FASTTGBA_PRODUCT_HH
23 #include "fasttgba.hh"
24 #include "misc/hash.hh"
25 #include "misc/fixpool.hh"
44 virtual size_t hash()
const;
85 bool left_is_kripke =
false);
89 virtual bool done()
const;
132 bool left_is_kripke =
false);
158 markset all_acceptance_marks()
const;
161 unsigned int number_of_acceptance_marks()
const;
171 #endif // SPOT_FASTTGBA_FASTTGBA_PRODUCT_HH
const fasttgba * left_
The left aut. of the product.
Definition: fasttgba_product.hh:164
virtual void next()
Jump to the next successor (if any).
fasttgba_succ_iterator * left_
Reference on the left iterator.
Definition: fasttgba_product.hh:105
Definition: fasttgba.hh:33
fasttgba_succ_iterator * right_
Reference on the right iterator.
Definition: fasttgba_product.hh:106
bool kripke_left
The left automaton is a Kripke.
Definition: fasttgba_product.hh:167
bool kripke_left
The left automaton is a Kripke.
Definition: fasttgba_product.hh:108
This class act as an interface for all classes.
Definition: fasttgba_state.hh:30
virtual void destroy() const
Release a state.
This class represents a product state.
Definition: fasttgba_product.hh:34
Abstract class for states.
Definition: state.hh:40
virtual fasttgba_state * current_state() const
Get the state of the current successor.
virtual const fasttgba_state * right() const
An accessor to the right part of a state.
This class represents conjunction of variables.
Definition: cube.hh:34
This class is used to create a dictionary that will contain all atomic propositions that are needed b...
Definition: ap_dict.hh:41
Iterate over the successors of a state.
Definition: fasttgba_succ_iterator.hh:35
virtual fasttgba_succ_iterator * left() const
An accessor to the left iterator.
This class allows to do a synchronized product between two fast tgba.
Definition: fasttgba_product.hh:124
virtual size_t hash() const
Hash a state.
virtual markset current_acceptance_marks() const
Get the acceptance conditions on the transition leading to this successor.
virtual bool done() const
Check whether the iteration is finished.
This class represents a set of acceptance marks.
Definition: markset.hh:35
virtual void * external_information() const
Definition: acc_dict.hh:31
virtual const fasttgba_state * left() const
An accessor to the left part of a state.
const fasttgba * right_
The right aut. of the product.
Definition: fasttgba_product.hh:165
virtual fasttgba_succ_iterator * right() const
An accessor to the right iterator.
virtual cube current_condition() const
Get the condition on the transition leading to this successor.
This is an iterator for the product.
Definition: fasttgba_product.hh:76
virtual int compare(const fasttgba_state *other) const
Compares two states (that come from the same automaton).
virtual fasttgba_state * clone() const
Duplicate a state.
A fixed-size memory pool implementation.
Definition: fixpool.hh:31
virtual void first()
Position the iterator on the first successor (if any).