spot  1.99.3
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members

Translate an LTL formula into an optimized spot::tgba. More...

#include <twaalgos/translate.hh>

Inheritance diagram for spot::translator:
Inheritance graph
Collaboration diagram for spot::translator:
Collaboration graph

Public Types

enum  output_type
 
typedef int output_pref
 
enum  optimization_level
 

Public Member Functions

 translator (ltl::ltl_simplifier *simpl, const option_map *opt=0)
 
 translator (const bdd_dict_ptr &dict, const option_map *opt=0)
 
 translator (const option_map *opt=0)
 
void set_type (output_type type)
 
void set_pref (output_pref pref)
 
void set_level (optimization_level level)
 
twa_graph_ptr run (const ltl::formula *f)
 Convert f into an automaton. More...
 
twa_graph_ptr run (const ltl::formula **f)
 Convert f into an automaton, and update f. More...
 

Protected Types

enum  {
  Any = 0, Small = 1, Deterministic = 2, Complete = 4,
  SBAcc = 8, Unambiguous = 16
}
 

Protected Member Functions

void setup_opt (const option_map *opt)
 
void build_simplifier (const bdd_dict_ptr &dict)
 
twa_graph_ptr run (twa_graph_ptr input, const ltl::formula *f)
 Optimize an automaton. More...
 
twa_graph_ptr do_simul (const twa_graph_ptr &input, int opt)
 
twa_graph_ptr do_sba_simul (const twa_graph_ptr &input, int opt)
 
twa_graph_ptr do_degen (const twa_graph_ptr &input)
 

Protected Attributes

output_type type_
 
int pref_
 
optimization_level level_
 
bool degen_reset_
 
bool degen_order_
 
int degen_cache_
 
bool degen_lskip_
 
bool degen_lowinit_
 
int simul_
 
int scc_filter_
 
int ba_simul_
 
bool tba_determinisation_
 
int sat_minimize_
 
int sat_acc_
 
int sat_states_
 
bool state_based_
 
bool wdba_minimize_
 

Detailed Description

Translate an LTL formula into an optimized spot::tgba.

This class implements a three-step translation:

Method set_type() may be used to specify the type of automaton produced (TGBA, BA, Monitor). The default is TGBA.

Method set_pref() may be used to specify whether small automata should be prefered over deterministic automata.

Method set_level() may be used to specify the optimization level.

The semantic of these three methods is inherited from the spot::postprocessor class, but the optimization level is additionally used to select which LTL simplifications to enable.

Member Function Documentation

twa_graph_ptr spot::postprocessor::run ( twa_graph_ptr  input,
const ltl::formula f 
)
inherited

Optimize an automaton.

The returned automaton might be a new automaton, or an in-place modification of the input automaton.

twa_graph_ptr spot::translator::run ( const ltl::formula f)

Convert f into an automaton.

The formula f is simplified internally, but it is not not destroyed (this is the responsibility of the caller).

twa_graph_ptr spot::translator::run ( const ltl::formula **  f)

Convert f into an automaton, and update f.

The formula *f is destroyed, and replaced by the simplified version, which should be destroyed by the caller.


The documentation for this class was generated from the following file:

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Wed Aug 26 2015 08:42:38 for spot by doxygen 1.8.8