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

Translating LTL formulae into TGBA
[TGBA algorithms]


Functions

tgba_explicit * spot::ltl_to_tgba_fm (const ltl::formula *f, bdd_dict *dict, bool exprop=false, bool symb_merge=true, bool branching_postponement=false, bool fair_loop_approx=false, const ltl::atomic_prop_set *unobs=0)
 Build a spot::tgba_explicit* from an LTL formula.
tgba_bdd_concrete * spot::ltl_to_tgba_lacim (const ltl::formula *f, bdd_dict *dict)
 Build a spot::tgba_bdd_concrete from an LTL formula.

Function Documentation

tgba_explicit* ltl_to_tgba_fm const ltl::formula *  f,
bdd_dict *  dict,
bool  exprop = false,
bool  symb_merge = true,
bool  branching_postponement = false,
bool  fair_loop_approx = false,
const ltl::atomic_prop_set unobs = 0
 

Build a spot::tgba_explicit* from an LTL formula.

This is based on the following paper.

      @InProceedings{couvreur.99.fm,
        author	  = {Jean-Michel Couvreur},
        title     = {On-the-fly Verification of Temporal Logic},
        pages     = {253--271},
        editor	  = {Jeannette M. Wing and Jim Woodcock and Jim Davies},
        booktitle = {Proceedings of the World Congress on Formal Methods in the
      		     Development of Computing Systems (FM'99)},
        publisher = {Springer-Verlag},
        series	  = {Lecture Notes in Computer Science},
        volume	  = {1708},
        year      = {1999},
        address	  = {Toulouse, France},
        month	  = {September},
        isbn      = {3-540-66587-0}
      }
      

Parameters:
f The formula to translate into an automaton.
dict The spot::bdd_dict the constructed automata should use.
exprop When set, the algorithm will consider all properties combinations possible on each state, in an attempt to reduce the non-determinism. The automaton will have the same size as without this option, but because the transition will be more deterministic, the product automaton will be smaller (or, at worse, equal).
symb_merge When false, states with the same symbolic representation (these are equivalent formulae) will not be merged.
branching_postponement When set, several transitions leaving from the same state with the same label (i.e., condition + acceptance conditions) will be merged. This correspond to an optimization described in the following paper.
      @InProceedings{	  sebastiani.03.charme,
        author	  = {Roberto Sebastiani and Stefano Tonetta},
        title	  = {"More Deterministic" vs. "Smaller" B{\"u}chi Automata for
      		     Efficient LTL Model Checking},
        booktitle = {Proceedings for the 12th Advanced Research Working
      		     Conference on Correct Hardware Design and Verification
      		     Methods (CHARME'03)},
        pages     = {126--140},
        year      = {2003},
        editor	  = {G. Goos and J. Hartmanis and J. van Leeuwen},
        volume	  = {2860},
        series	  = {Lectures Notes in Computer Science},
        month     = {October},
        publisher = {Springer-Verlag}
      }
      
fair_loop_approx When set, a really simple characterization of unstable state is used to suppress all acceptance conditions from incoming transitions.
unobs When non-zero, the atomic propositions in the LTL formula are interpreted as events that exclude each other. The events in the formula are observable events, and unobs can be filled with additional unobservable events.
Returns:
A spot::tgba_explicit that recognizes the language of f.

tgba_bdd_concrete* ltl_to_tgba_lacim const ltl::formula *  f,
bdd_dict *  dict
 

Build a spot::tgba_bdd_concrete from an LTL formula.

This is based on the following paper.

      @InProceedings{   couvreur.00.lacim,
        author        = {Jean-Michel Couvreur},
        title         = {Un point de vue symbolique sur la logique temporelle
                        lin{\'e}aire},
        booktitle     = {Actes du Colloque LaCIM 2000},
        month         = {August},
        year          = {2000},
        pages         = {131--140},
        volume        = {27},
        series        = {Publications du LaCIM},
        publisher     = {Universit{\'e} du Qu{\'e}bec {\`a} Montr{\'e}al},
        editor        = {Pierre Leroux}
      }
      
Parameters:
f The formula to translate into an automaton.
dict The spot::bdd_dict the constructed automata should use.
Returns:
A spot::tgba_bdd_concrete that recognizes the language of f.


Please comment this page and report errors about it on the RefDocComments page.
Generated on Mon Jan 31 12:55:19 2005 for spot by doxygen 1.4.0