Hi Jianwen,
On Fri, Jun 8, 2012 at 5:44 PM, Jianwen Li <lijwen2748(a)gmail.com> wrote:
When I read the source codes of SPOT I was confused
about the structure of the automaton.
How did you store the transitions and states in the automaton, such as tgba?
The tgba class defines a read-only interface that only allows you to
explore the automaton, but not to modify it.
Some subclasses of tgba use a graph to store the automaton explicitly.
You may want to look for tgba_explicit_numbered,
tgba_explicit_string, tgba_explicit_formula depending on whether your
states are labelled by integers, strings, or LTL formulas. All these
types are actually specialization of the explicit_graph class, which
implements the tgba interface as well as a few other methods to modify
the automaton.
Other subclasses such as tgba_bdd_concrete represent the automaton
symbolically using BDDs.
You may also chose not to represent the automaton at all, but compute
it on the fly. In that case your algorithm should be a class that
inherits from tgba, and implement its interface (for instance the
product of two automata is implemented this way).
--
Alexandre Duret-Lutz