spot  1.1.4
Namespaces | Classes | Typedefs | Enumerations | Functions
spot Namespace Reference

Namespaces

 eltl
 
 ltl
 

Classes

class  fair_kripke_succ_iterator
 Iterator code for a Fair Kripke structure. More...
 
class  fair_kripke
 Interface for a Fair Kripke structure. More...
 
class  kripke_succ_iterator
 Iterator code for Kripke structure. More...
 
class  kripke
 Interface for a Kripke structure. More...
 
class  state_kripke
 Concrete class for kripke states. More...
 
class  kripke_explicit_succ_iterator
 Implement iterator pattern on successor of a state_kripke. More...
 
class  kripke_explicit
 Kripke Structure. More...
 
class  acc_compl
 Helper class to convert acceptance conditions into promises. More...
 
class  acceptance_convertor
 Help class to convert between acceptance conditions to other BDD formats. More...
 
class  bdd_allocator
 Manage ranges of variables. More...
 
struct  bdd_less_than
 Comparison functor for BDDs. More...
 
struct  bdd_hash
 Hash functor for BDDs. More...
 
class  fixed_size_pool
 A fixed-size memory pool implementation. More...
 
class  printable
 
class  printable_value
 
class  printable_id
 The default callback simply writes "%c". More...
 
class  printable_percent
 Called by default for "%%" and "%\0". More...
 
class  formater
 
class  free_list
 Manage list of free integers. More...
 
struct  ptr_hash
 A hash function for pointers. More...
 
struct  identity_hash
 A hash function that returns identity. More...
 
struct  char_ptr_less_than
 Strict Weak Ordering for char*. More...
 
class  minato_isop
 Generate an irredundant sum-of-products (ISOP) form of a BDD function. More...
 
class  loopless_modular_mixed_radix_gray_code
 Loopless modular mixed radix Gray code iteration. More...
 
class  multiple_size_pool
 A multiple-size memory pool implementation. More...
 
class  option_map
 Manage a map of options. More...
 
class  barand
 Compute pseudo-random integer value between 0 and n included, following a binomial distribution for probability p. More...
 
struct  time_info
 A structure to record elapsed time in clock ticks. More...
 
class  timer
 A timekeeper that accumulate interval of time. More...
 
class  timer_map
 A map of timer, where each timer has a name. More...
 
class  unique_ptr
 Take ownership of a pointer at its construction, and destroy it at the end of the scope. More...
 
class  explicit_state_conjunction
 Basic implementation of saba_state_conjunction. More...
 
class  saba
 A State-based Alternating (Generalized) Büchi Automaton. More...
 
class  saba_complement_tgba
 Complement a TGBA and produce a SABA. More...
 
class  saba_state
 Abstract class for saba states. More...
 
struct  saba_state_ptr_less_than
 Strict Weak Ordering for saba_state*. More...
 
struct  saba_state_ptr_equal
 An Equivalence Relation for saba_state*. More...
 
struct  saba_state_ptr_hash
 Hash Function for saba_state*. More...
 
struct  saba_state_shared_ptr_less_than
 Strict Weak Ordering for shared_saba_state (shared_ptr<const saba_state*>). More...
 
struct  saba_state_shared_ptr_equal
 An Equivalence Relation for shared_saba_state (shared_ptr<const saba_state*>). More...
 
struct  saba_state_shared_ptr_hash
 Hash Function for shared_saba_state (shared_ptr<const saba_state*>). More...
 
class  saba_state_conjunction
 Iterate over a conjunction of saba_state. More...
 
class  saba_succ_iterator
 Iterate over the successors of a saba_state. More...
 
class  saba_reachable_iterator
 Iterate over all reachable states of a spot::saba. More...
 
class  saba_reachable_iterator_depth_first
 An implementation of spot::saba_reachable_iterator that browses states depth first. More...
 
class  saba_reachable_iterator_breadth_first
 An implementation of spot::saba_reachable_iterator that browses states breadth first. More...
 
class  ta
 A Testing Automaton. More...
 
class  ta_succ_iterator
 Iterate over the successors of a state. More...
 
class  scc_stack_ta
 
class  ta_explicit
 
class  state_ta_explicit
 
class  ta_explicit_succ_iterator
 Successor iterators used by spot::ta_explicit. More...
 
class  state_ta_product
 A state for spot::ta_product. More...
 
class  ta_succ_iterator_product
 Iterate over the successors of a product computed on the fly. More...
 
class  ta_product
 A lazy product between a Testing automaton and a Kripke structure. (States are computed on the fly.) More...
 
class  ta_succ_iterator_product_by_changeset
 
class  tgta
 A Transition-based Generalized Testing Automaton (TGTA). More...
 
class  tgta_explicit
 
class  tgta_product
 A lazy product. (States are computed on the fly.) More...
 
class  tgta_succ_iterator_product
 Iterate over the successors of a product computed on the fly. More...
 
class  ta_check
 An implementation of the emptiness-check algorithm for a product between a TA and a Kripke structure. More...
 
class  ta_reachable_iterator
 Iterate over all reachable states of a spot::ta. More...
 
class  ta_reachable_iterator_depth_first
 An implementation of spot::ta_reachable_iterator that browses states depth first. More...
 
class  ta_reachable_iterator_breadth_first
 An implementation of spot::ta_reachable_iterator that browses states breadth first. More...
 
struct  ta_statistics
 
class  bdd_dict
 Map BDD variables to formulae. More...
 
class  future_conditions_collector
 Wrap a tgba to offer information about upcoming conditions. More...
 
class  sba
 A State-based Generalized Büchi Automaton. More...
 
class  state
 Abstract class for states. More...
 
struct  state_ptr_less_than
 Strict Weak Ordering for state*. More...
 
struct  state_ptr_equal
 An Equivalence Relation for state*. More...
 
struct  state_ptr_hash
 Hash Function for state*. More...
 
struct  state_shared_ptr_less_than
 Strict Weak Ordering for shared_state (shared_ptr<const state*>). More...
 
struct  state_shared_ptr_equal
 An Equivalence Relation for shared_state (shared_ptr<const state*>). More...
 
struct  state_shared_ptr_hash
 Hash Function for shared_state (shared_ptr<const state*>). More...
 
class  state_bdd
 
class  tgba_succ_iterator
 Iterate over the successors of a state. More...
 
class  tgba_succ_iterator_concrete
 
class  taa_tgba
 A self-loop Transition-based Alternating Automaton (TAA) which is seen as a TGBA (abstract class, see below). More...
 
class  state_set
 Set of states deriving from spot::state. More...
 
class  taa_succ_iterator
 
class  taa_tgba_labelled
 
class  taa_tgba_string
 
class  taa_tgba_formula
 
class  tgba
 A Transition-based Generalized Büchi Automaton. More...
 
class  tgba_bdd_concrete
 A concrete spot::tgba implemented using BDDs. More...
 
class  tgba_bdd_concrete_factory
 Helper class to build a spot::tgba_bdd_concrete object. More...
 
struct  tgba_bdd_core_data
 Core data for a TGBA encoded using BDDs. More...
 
class  tgba_bdd_factory
 Abstract class for spot::tgba_bdd_concrete factories. More...
 
struct  destroy_key
 
struct  destroy_key< const ltl::formula * >
 
class  state_explicit
 
class  state_explicit_number
 
class  state_explicit_string
 
class  state_explicit_formula
 
class  tgba_explicit_succ_iterator
 
class  explicit_graph
 
class  tgba_explicit
 
class  sba_explicit
 
class  explicit_conf
 
class  explicit_conf< graph, state_explicit_string >
 
class  explicit_conf< graph, state_explicit_formula >
 
class  bdd_ordered
 
class  tgba_kv_complement
 Build a complemented automaton. More...
 
class  state_product
 A state for spot::tgba_product. More...
 
class  tgba_product
 A lazy product. (States are computed on the fly.) More...
 
class  tgba_product_init
 A lazy product with different initial states. More...
 
class  tgba_safra_complement
 Build a complemented automaton. More...
 
class  tgba_scc
 Wrap a tgba to offer information about strongly connected components. More...
 
class  tgba_sgba_proxy
 Change the labeling-mode of spot::tgba on the fly, producing a state-based generalized Büchi automaton. More...
 
class  tgba_tba_proxy
 Degeneralize a spot::tgba on the fly, producing a TBA. More...
 
class  tgba_sba_proxy
 Degeneralize a spot::tgba on the fly, producing an SBA. More...
 
class  state_union
 A state for spot::tgba_union. More...
 
class  tgba_succ_iterator_union
 Iterate over the successors of an union computed on the fly. More...
 
class  tgba_union
 A lazy union. (States are computed on the fly.) More...
 
class  bfs_steps
 Make a BFS in a spot::tgba to compute a tgba_run::steps. More...
 
struct  sccs_set
 
class  enumerate_cycles
 Enumerate elementary cycles in a SCC. More...
 
class  dotty_decorator
 Choose state and link styles for spot::dotty_reachable. More...
 
class  emptiness_check_result
 The result of an emptiness check. More...
 
class  emptiness_check
 Common interface to emptiness check algorithms. More...
 
class  emptiness_check_instantiator
 
struct  tgba_run
 An accepted run, for a tgba. More...
 
struct  unsigned_statistics
 
class  unsigned_statistics_copy
 comparable statistics More...
 
class  ec_statistics
 Emptiness-check statistics. More...
 
class  ars_statistics
 Accepting Run Search statistics. More...
 
class  acss_statistics
 Accepting Cycle Search Space statistics. More...
 
class  couvreur99_check_result
 Compute a counter example from a spot::couvreur99_check_status. More...
 
class  explicit_connected_component
 An SCC storing all its states explicitly. More...
 
class  connected_component_hash_set
 
class  explicit_connected_component_factory
 Abstract factory for explicit_connected_component. More...
 
class  connected_component_hash_set_factory
 Factory for connected_component_hash_set. More...
 
class  couvreur99_check
 An implementation of the Couvreur99 emptiness-check algorithm. More...
 
class  couvreur99_check_shy
 A version of spot::couvreur99_check that tries to visit known states first. More...
 
class  numbered_state_heap_const_iterator
 Iterator on numbered_state_heap objects. More...
 
class  numbered_state_heap
 Keep track of a large quantity of indexed states. More...
 
class  numbered_state_heap_factory
 Abstract factory for numbered_state_heap. More...
 
class  numbered_state_heap_hash_map
 A straightforward implementation of numbered_state_heap with a hash map. More...
 
class  numbered_state_heap_hash_map_factory
 Factory for numbered_state_heap_hash_map. More...
 
class  scc_stack
 
class  couvreur99_check_status
 The status of the emptiness-check on success. More...
 
class  postprocessor
 Wrap TGBA/BA/Monitor post-processing algorithms in an easy interface. More...
 
struct  power_map
 
class  tgba_reachable_iterator
 Iterate over all reachable states of a spot::tgba. More...
 
class  tgba_reachable_iterator_depth_first
 An implementation of spot::tgba_reachable_iterator that browses states depth first. More...
 
class  tgba_reachable_iterator_breadth_first
 An implementation of spot::tgba_reachable_iterator that browses states breadth first. More...
 
class  tgba_run_dotty_decorator
 Highlight a spot::tgba_run on a spot::tgba. More...
 
struct  scc_stats
 
class  scc_map
 Build a map of Strongly Connected components in in a TGBA. More...
 
struct  tgba_statistics
 
struct  tgba_sub_statistics
 
class  printable_formula
 
class  stat_printer
 prints various statistics about a TGBA More...
 
class  translator
 Translate an LTL formula into an optimized spot::tgba. More...
 
class  weight
 Manage for a given automaton a vector of counter indexed by its acceptance condition. More...
 
class  gspn_exception
 An exception used to forward GSPN errors. More...
 
class  gspn_interface
 
class  gspn_ssp_interface
 

Typedefs

typedef std::pair
< kripkeyy::location,
std::string > 
kripke_parse_error
 A parse diagnostic with its location. More...
 
typedef std::list
< kripke_parse_error
kripke_parse_error_list
 A list of parser diagnostics, as filled by parse. More...
 
typedef std::pair
< neverclaimyy::location,
std::string > 
neverclaim_parse_error
 A parse diagnostic with its location. More...
 
typedef std::list
< neverclaim_parse_error
neverclaim_parse_error_list
 A list of parser diagnostics, as filled by parse. More...
 
typedef boost::shared_ptr
< const saba_state
shared_saba_state
 
typedef boost::shared_ptr
< const state
shared_state
 
typedef explicit_conf
< tgba_explicit
< state_explicit_string >
, state_explicit_string
tgba_explicit_string
 
typedef explicit_conf
< tgba_explicit
< state_explicit_formula >
, state_explicit_formula
tgba_explicit_formula
 
typedef explicit_conf
< tgba_explicit
< state_explicit_number >
, state_explicit_number
tgba_explicit_number
 
typedef explicit_conf
< sba_explicit
< state_explicit_string >
, state_explicit_string
sba_explicit_string
 
typedef explicit_conf
< sba_explicit
< state_explicit_formula >
, state_explicit_formula
sba_explicit_formula
 
typedef explicit_conf
< sba_explicit
< state_explicit_number >
, state_explicit_number
sba_explicit_number
 
typedef std::vector< bdd_orderedacc_list_t
 
typedef std::pair
< tgbayy::location,
std::string > 
tgba_parse_error
 A parse diagnostic with its location. More...
 
typedef std::list
< tgba_parse_error
tgba_parse_error_list
 A list of parser diagnostics, as filled by parse. More...
 
typedef Sgi::hash< std::string > string_hash
 A hash function for strings. More...
 

Enumerations

enum  reduce_tgba_options {
  Reduce_None = 0, Reduce_quotient_Dir_Sim = 1, Reduce_transition_Dir_Sim = 2, Reduce_quotient_Del_Sim = 4,
  Reduce_transition_Del_Sim = 8, Reduce_Scc = 16, Reduce_All = -1U
}
 Options for reduce. More...
 

Functions

std::ostream & kripke_save_reachable (std::ostream &os, const kripke *k)
 Save the reachable part of Kripke structure in text format. More...
 
std::ostream & kripke_save_reachable_renumbered (std::ostream &os, const kripke *k)
 Save the reachable part of Kripke structure in text format. More...
 
kripke_explicitkripke_parse (const std::string &name, kripke_parse_error_list &error_list, bdd_dict *dict, ltl::environment &env=ltl::default_environment::instance(), bool debug=false)
 
bool format_kripke_parse_errors (std::ostream &os, const std::string &filename, kripke_parse_error_list &error_list)
 Format diagnostics produced by spot::kripke_parse. More...
 
bool is_bare_word (const char *str)
 
std::string quote_unless_bare_word (const std::string &str)
 Double-quote words that are not bare. More...
 
bdd compute_all_acceptance_conditions (bdd neg_acceptance_conditions)
 Compute all acceptance conditions from all neg acceptance conditions. More...
 
bdd compute_neg_acceptance_conditions (bdd all_acceptance_conditions)
 Compute neg acceptance conditions from all acceptance conditions. More...
 
std::ostream & escape_str (std::ostream &os, const std::string &str)
 Escape characters ", \, and \n in str. More...
 
std::string escape_str (const std::string &str)
 Escape characters ", \, and \n in str. More...
 
void trim (std::string &str)
 Remove spaces at the front and back of str. More...
 
size_t wang32_hash (size_t key)
 Thomas Wang's 32 bit hash function. More...
 
size_t knuth32_hash (size_t key)
 Knuth's Multiplicative hash function. More...
 
void int_array_array_compress2 (const int *array, size_t n, int *dest, size_t &dest_size)
 Compress an int array of size n into a int array. More...
 
void int_array_array_decompress2 (const int *array, size_t array_size, int *res, size_t size)
 Uncompress an int array of size array_size into a int array of size size. More...
 
void int_vector_vector_compress (const std::vector< int > &input, std::vector< unsigned int > &output)
 Compress an int vector into a vector of unsigned int. More...
 
void int_vector_vector_decompress (const std::vector< unsigned int > &array, std::vector< int > &output, size_t size)
 Uncompress a vector of unsigned int into a vector of size size. More...
 
const std::vector< unsigned int > * int_array_vector_compress (const int *array, size_t n)
 Compress an int array if size n into a vector of unsigned int. More...
 
void int_vector_array_decompress (const std::vector< unsigned int > *array, int *res, size_t size)
 Uncompress a vector of unsigned int into an int array of size size. More...
 
void int_array_array_compress (const int *array, size_t n, int *dest, size_t &dest_size)
 Compress an int array of size n into a int array. More...
 
void int_array_array_decompress (const int *array, size_t array_size, int *res, size_t size)
 Uncompress an int array of size array_size into a int array of size size. More...
 
int memusage ()
 Total number of pages in use by the program. More...
 
void srand (unsigned int seed)
 Reset the seed of the pseudo-random number generator. More...
 
int rrand (int min, int max)
 Compute a pseudo-random integer value between min and max included. More...
 
int mrand (int max)
 Compute a pseudo-random integer value between 0 and max-1 included. More...
 
double drand ()
 Compute a pseudo-random double value between 0.0 and 1.0 (1.0 excluded). More...
 
double nrand ()
 Compute a pseudo-random double value following a standard normal distribution. (Odeh & Evans) More...
 
double bmrand ()
 Compute a pseudo-random double value following a standard normal distribution. (Box-Muller) More...
 
int prand (double p)
 Return a pseudo-random positive integer value following a Poisson distribution with parameter p. More...
 
template<typename T >
unique_ptr< T > make_unique (T *ptr)
 Change a pointer into a unique_ptr. More...
 
const char * version ()
 Return Spot's version. More...
 
tgba_explicit_stringneverclaim_parse (const std::string &filename, neverclaim_parse_error_list &error_list, bdd_dict *dict, ltl::environment &env=ltl::default_environment::instance(), bool debug=false)
 Build a spot::tgba_explicit from a Spin never claim file. More...
 
bool format_neverclaim_parse_errors (std::ostream &os, const std::string &filename, neverclaim_parse_error_list &error_list)
 Format diagnostics produced by spot::neverclaim_parse. More...
 
std::ostream & saba_dotty_reachable (std::ostream &os, const saba *g)
 Print reachable states in dot format. More...
 
std::ostream & dotty_reachable (std::ostream &os, const ta *a)
 
taminimize_ta (const ta *ta_)
 Construct a simplified TA by merging bisimilar states. More...
 
tgta_explicitminimize_tgta (const tgta_explicit *tgta_)
 Construct a simplified TGTA by merging bisimilar states. More...
 
std::set< const state * > get_states_set (const ta *t)
 Compute states set for an automaton. More...
 
ta_statistics stats_reachable (const ta *t)
 Compute statistics for an automaton. More...
 
ta_explicittgba_to_ta (const tgba *tgba_to_convert, bdd atomic_propositions_set, bool degeneralized=true, bool artificial_initial_state_mode=true, bool single_pass_emptiness_check=false, bool artificial_livelock_state_mode=false)
 Build a spot::ta_explicit* (TA) from an LTL formula. More...
 
tgta_explicittgba_to_tgta (const tgba *tgba_to_convert, bdd atomic_propositions_set)
 Build a spot::tgta_explicit* (TGTA) from an LTL formula. More...
 
std::ostream & bdd_print_sat (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as a list of literals. More...
 
std::string bdd_format_sat (const bdd_dict *dict, bdd b)
 Format a BDD as a list of literals. More...
 
std::ostream & bdd_print_acc (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as a list of acceptance conditions. More...
 
std::ostream & bdd_print_accset (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as a set of acceptance conditions. More...
 
std::string bdd_format_accset (const bdd_dict *dict, bdd b)
 Format a BDD as a set of acceptance conditions. More...
 
std::ostream & bdd_print_set (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as a set. More...
 
std::string bdd_format_set (const bdd_dict *dict, bdd b)
 Format a BDD as a set. More...
 
std::ostream & bdd_print_formula (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as a formula. More...
 
std::string bdd_format_formula (const bdd_dict *dict, bdd b)
 Format a BDD as a formula. More...
 
std::ostream & bdd_print_dot (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as a diagram in dotty format. More...
 
std::ostream & bdd_print_table (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as a table. More...
 
void enable_utf8 ()
 Enable UTF-8 output for bdd printers. More...
 
std::string bdd_format_isop (const bdd_dict *dict, bdd b)
 Format a BDD as an irredundant sum of product. More...
 
std::ostream & bdd_print_isop (std::ostream &os, const bdd_dict *dict, bdd b)
 Print a BDD as an irredundant sum of product. More...
 
bdd formula_to_bdd (const ltl::formula *f, bdd_dict *d, void *for_me)
 Convert a Boolean formula into a BDD. More...
 
const ltl::formulabdd_to_formula (bdd f, const bdd_dict *d)
 Convert a BDD into a formula. More...
 
void shared_state_deleter (state *s)
 
tgba_bdd_concreteproduct (const tgba_bdd_concrete *left, const tgba_bdd_concrete *right)
 Multiplies two spot::tgba_bdd_concrete automata. More...
 
void display_safra (const tgba_safra_complement *a)
 Produce a dot output of the Safra automaton associated to a. More...
 
tgbawdba_complement (const tgba *aut)
 Complement a weak deterministic Büchi automaton. More...
 
tgbacompsusp (const ltl::formula *f, bdd_dict *dict, bool no_wdba=false, bool no_simulation=false, bool early_susp=false, bool no_susp_product=false, bool wdba_smaller=false, bool oblig=false)
 Compositional translation algorithm with resetable suspension. More...
 
std::vector< std::vector
< sccs_set * > > * 
find_paths (tgba *a, const scc_map &m)
 
unsigned max_spanning_paths (std::vector< sccs_set * > *paths, scc_map &m)
 
std::list< tgba * > split_tgba (tgba *a, const scc_map &m, unsigned split_number)
 
sbadegeneralize (const tgba *a, bool use_z_lvl=true, bool use_cust_acc_orders=false, bool use_lvl_cache=true)
 Degeneralize a spot::tgba into an equivalent sba with only one acceptance condition. More...
 
std::ostream & dotty_reachable (std::ostream &os, const tgba *g, bool assume_sba=false, dotty_decorator *dd=0)
 Print reachable states in dot format. More...
 
tgba_explicit_numbertgba_dupexp_bfs (const tgba *aut)
 Build an explicit automata from all states of aut, numbering states in bread first order as they are processed. More...
 
tgba_explicit_numbertgba_dupexp_dfs (const tgba *aut)
 Build an explicit automata from all states of aut, numbering states in depth first order as they are processed. More...
 
tgba_explicit_numbertgba_dupexp_bfs (const tgba *aut, std::map< const state *, const state *, state_ptr_less_than > &relation)
 Build an explicit automata from all states of aut, numbering states in bread first order as they are processed. More...
 
tgba_explicit_numbertgba_dupexp_dfs (const tgba *aut, std::map< const state *, const state *, state_ptr_less_than > &relation)
 Build an explicit automata from all states of aut, numbering states in depth first order as they are processed. More...
 
tgba_bdd_concreteeltl_to_tgba_lacim (const ltl::formula *f, bdd_dict *dict)
 Build a spot::tgba_bdd_concrete from an ELTL formula. More...
 
std::ostream & print_tgba_run (std::ostream &os, const tgba *a, const tgba_run *run)
 Display a tgba_run. More...
 
tgbatgba_run_to_tgba (const tgba *a, const tgba_run *run)
 Return an explicit_tgba corresponding to run (i.e. comparable states are merged). More...
 
emptiness_checkcouvreur99 (const tgba *a, option_map options=option_map(), const numbered_state_heap_factory *nshf=numbered_state_heap_hash_map_factory::instance())
 Check whether the language of an automate is empty. More...
 
emptiness_checkexplicit_gv04_check (const tgba *a, option_map o=option_map())
 Emptiness check based on Geldenhuys and Valmari's TACAS'04 paper. More...
 
unsigned count_nondet_states (const tgba *aut)
 Count the number of non-deterministic states in aut. More...
 
bool is_deterministic (const tgba *aut)
 Return true iff aut is deterministic. More...
 
bool is_inherently_weak_scc (scc_map &map, unsigned scc)
 Whether the SCC number scc in map is inherently weak. More...
 
bool is_weak_scc (scc_map &map, unsigned scc)
 Whether the SCC number scc in map is weak. More...
 
bool is_complete_scc (scc_map &map, unsigned scc)
 Whether the SCC number scc in map is complete. More...
 
bool is_syntactic_weak_scc (scc_map &map, unsigned scc)
 Whether the SCC number scc in map is syntactically weak. More...
 
bool is_syntactic_terminal_scc (scc_map &map, unsigned scc)
 Whether the SCC number scc in map is syntactically terminal. More...
 
bool is_terminal_scc (scc_map &map, unsigned scc)
 Whether the SCC number scc in map is terminal. More...
 
std::ostream & lbtt_reachable (std::ostream &os, const tgba *g, bool sba=false)
 Print reachable states in LBTT's format. More...
 
const tgbalbtt_parse (std::istream &is, std::string &error, bdd_dict *dict, ltl::environment &env=ltl::default_environment::instance(), ltl::environment &envacc=ltl::default_environment::instance())
 Read an automaton in LBTT's format. More...
 
taa_tgbaltl_to_taa (const ltl::formula *f, bdd_dict *dict, bool refined_rules=false)
 Build a spot::taa* from an LTL formula. More...
 
tgba_explicit_formulaltl_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, ltl::ltl_simplifier *simplifier=0)
 Build a spot::tgba_explicit* from an LTL formula. More...
 
tgba_bdd_concreteltl_to_tgba_lacim (const ltl::formula *f, bdd_dict *dict)
 Build a spot::tgba_bdd_concrete from an LTL formula. More...
 
emptiness_checkexplicit_magic_search (const tgba *a, option_map o=option_map())
 Returns an emptiness checker on the spot::tgba automaton a. More...
 
emptiness_checkbit_state_hashing_magic_search (const tgba *a, size_t size, option_map o=option_map())
 Returns an emptiness checker on the spot::tgba automaton a. More...
 
emptiness_checkmagic_search (const tgba *a, option_map o=option_map())
 Wrapper for the two magic_search implementations. More...
 
sba_explicit_numberminimize_monitor (const tgba *a)
 Construct a minimal deterministic monitor. More...
 
sba_explicit_numberminimize_wdba (const tgba *a)
 Minimize a Büchi automaton in the WDBA class. More...
 
tgbaminimize_obligation (const tgba *aut_f, const ltl::formula *f=0, const tgba *aut_neg_f=0, bool reject_bigger=false)
 Minimize an automaton if it represents an obligation property. More...
 
std::ostream & never_claim_reachable (std::ostream &os, const tgba *g, const ltl::formula *f=0, bool comments=false)
 Print reachable states in Spin never claim format. More...
 
tgba_runproject_tgba_run (const tgba *a_run, const tgba *a_proj, const tgba_run *run)
 Project a tgba_run on a tgba. More...
 
tgbarandom_graph (int n, float d, const ltl::atomic_prop_set *ap, bdd_dict *dict, int n_acc=0, float a=0.1, float t=0.5, ltl::environment *env=&ltl::default_environment::instance())
 Construct a tgba randomly. More...
 
tgba_runreduce_run (const tgba *a, const tgba_run *org)
 Reduce an accepting run. More...
 
const tgbareduc_tgba_sim (const tgba *a, int opt=Reduce_All)
 Simplify the automaton using a simulation relation. More...
 
bool replay_tgba_run (std::ostream &os, const tgba *a, const tgba_run *run, bool debug=false)
 Replay a tgba_run on a tgba. More...
 
bool is_guarantee_automaton (const tgba *aut, const scc_map *sm=0)
 Whether an automaton represents a guarantee property. More...
 
bool is_safety_mwdba (const tgba *aut)
 Whether a minimized WDBA represents a safety property. More...
 
std::ostream & tgba_save_reachable (std::ostream &os, const tgba *g)
 Save reachable states in text format. More...
 
scc_stats build_scc_stats (const tgba *a)
 
scc_stats build_scc_stats (const scc_map &m)
 
std::ostream & dump_scc_dot (const tgba *a, std::ostream &out, bool verbose=false)
 
std::ostream & dump_scc_dot (const scc_map &m, std::ostream &out, bool verbose=false)
 
tgbascc_filter (const tgba *aut, bool remove_all_useless=false, scc_map *given_sm=0, bdd susp=bddtrue, bool early_susp=false, bdd ignored=bddtrue)
 Prune unaccepting SCCs and remove superfluous acceptance conditions. More...
 
tgbascc_filter_states (const tgba *aut, scc_map *given_sm=0)
 Prune unaccepting SCCs. More...
 
emptiness_checkexplicit_se05_search (const tgba *a, option_map o=option_map())
 Returns an emptiness check on the spot::tgba automaton a. More...
 
emptiness_checkbit_state_hashing_se05_search (const tgba *a, size_t size, option_map o=option_map())
 Returns an emptiness checker on the spot::tgba automaton a. More...
 
emptiness_checkse05 (const tgba *a, option_map o)
 Wrapper for the two se05 implementations. More...
 
tgbasimulation (const tgba *automaton)
 Attempt to reduce the automaton by direct simulation. More...
 
tgbasimulation_sba (const tgba *automaton)
 
tgbadont_care_simulation (const tgba *t, int limit=-1)
 
tgbadont_care_iterated_simulations (const tgba *t, int limit=-1)
 
tgba_statistics stats_reachable (const tgba *g)
 Compute statistics for an automaton. More...
 
tgba_sub_statistics sub_stats_reachable (const tgba *g)
 Compute subended statistics for an automaton. More...
 
sba_explicit_numberstrip_acceptance (const tgba *a)
 Duplicate automaton a, removing all acceptance sets. More...
 
emptiness_checkexplicit_tau03_search (const tgba *a, option_map o=option_map())
 Returns an emptiness checker on the spot::tgba automaton a. More...
 
emptiness_checkexplicit_tau03_opt_search (const tgba *a, option_map o=option_map())
 Returns an emptiness checker on the spot::tgba automaton a. More...
 
tgba_explicit_stringtgba_parse (const std::string &filename, tgba_parse_error_list &error_list, bdd_dict *dict, ltl::environment &env=ltl::default_environment::instance(), ltl::environment &envacc=ltl::default_environment::instance(), bool debug=false)
 Build a spot::tgba_explicit from a text file. More...
 
bool format_tgba_parse_errors (std::ostream &os, const std::string &filename, tgba_parse_error_list &error_list)
 Format diagnostics produced by spot::tgba_parse. More...
 
kripkeload_dve2 (const std::string &file, bdd_dict *dict, const ltl::atomic_prop_set *to_observe, const ltl::formula *dead=ltl::constant::true_instance(), int compress=0, bool verbose=true)
 
std::ostream & operator<< (std::ostream &os, const gspn_exception &e)
 
couvreur99_checkcouvreur99_check_ssp_semi (const tgba *ssp_automata)
 
couvreur99_checkcouvreur99_check_ssp_shy_semi (const tgba *ssp_automata)
 
couvreur99_checkcouvreur99_check_ssp_shy (const tgba *ssp_automata, bool stack_inclusion=true, bool double_inclusion=false, bool reversed_double_inclusion=false, bool no_decomp=false)
 
tgba_explicit_numbertgba_powerset (const tgba *aut, power_map &pm)
 Build a deterministic automaton, ignoring acceptance conditions. More...
 
tgba_explicit_numbertgba_powerset (const tgba *aut)
 
tgbacosimulation (const tgba *automaton)
 Attempt to reduce the automaton by reverse simulation. More...
 
tgbacosimulation_sba (const tgba *automaton)
 
tgbaiterated_simulations (const tgba *automaton)
 Iterate simulation() and cosimulation(). More...
 
tgbaiterated_simulations_sba (const tgba *automaton)
 

Typedef Documentation

typedef std::vector<bdd_ordered> spot::acc_list_t
typedef std::pair<kripkeyy::location, std::string> spot::kripke_parse_error

A parse diagnostic with its location.

A list of parser diagnostics, as filled by parse.

typedef boost::shared_ptr<const saba_state> spot::shared_saba_state
typedef boost::shared_ptr<const state> spot::shared_state

Function Documentation

std::string spot::bdd_format_accset ( const bdd_dict *  dict,
bdd  b 
)

Format a BDD as a set of acceptance conditions.

This is used when saving a TGBA.

Parameters
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
Returns
The BDD formated as a string.
std::string spot::bdd_format_formula ( const bdd_dict *  dict,
bdd  b 
)

Format a BDD as a formula.

Parameters
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
Returns
The BDD formated as a string.
std::string spot::bdd_format_isop ( const bdd_dict *  dict,
bdd  b 
)

Format a BDD as an irredundant sum of product.

Parameters
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
Returns
The BDD formated as a string.
std::string spot::bdd_format_sat ( const bdd_dict *  dict,
bdd  b 
)

Format a BDD as a list of literals.

This assumes that b is a conjunction of literals.

Parameters
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
Returns
The BDD formated as a string.
std::string spot::bdd_format_set ( const bdd_dict *  dict,
bdd  b 
)

Format a BDD as a set.

Parameters
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
Returns
The BDD formated as a string.
std::ostream& spot::bdd_print_acc ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as a list of acceptance conditions.

This is used when saving a TGBA.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
Returns
The BDD formated as a string.
std::ostream& spot::bdd_print_accset ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as a set of acceptance conditions.

This is used when saving a TGBA.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
Returns
The BDD formated as a string.
std::ostream& spot::bdd_print_dot ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as a diagram in dotty format.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
std::ostream& spot::bdd_print_formula ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as a formula.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
std::ostream& spot::bdd_print_isop ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as an irredundant sum of product.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
std::ostream& spot::bdd_print_sat ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as a list of literals.

This assumes that b is a conjunction of literals.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
std::ostream& spot::bdd_print_set ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as a set.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
std::ostream& spot::bdd_print_table ( std::ostream &  os,
const bdd_dict *  dict,
bdd  b 
)

Print a BDD as a table.

Parameters
osThe output stream.
dictThe dictionary to use, to lookup variables.
bThe BDD to print.
const ltl::formula* spot::bdd_to_formula ( bdd  f,
const bdd_dict *  d 
)

Convert a BDD into a formula.

Format the BDD as an irredundant sum of product (see the minato_isop class for details) and map the BDD variables back into their atomic propositions. This works only for Boolean formulas, and all the BDD variables used in f should have been registered in d. Although the result has type ltl::formula*, it obviously does not use any temporal operator.

scc_stats spot::build_scc_stats ( const tgba *  a)
scc_stats spot::build_scc_stats ( const scc_map &  m)
tgba* spot::compsusp ( const ltl::formula *  f,
bdd_dict *  dict,
bool  no_wdba = false,
bool  no_simulation = false,
bool  early_susp = false,
bool  no_susp_product = false,
bool  wdba_smaller = false,
bool  oblig = false 
)

Compositional translation algorithm with resetable suspension.

Described in "Compositional Approach to Suspension and Other Improvements to LTL Translation", Tomáš Babiak, Thomas Badie, Alexandre Duret-Lutz, Mojmír Křetínský, Jan Strejček (SPIN'13).

If no_wdba or no_simulation is true, the corresponding operation is not performed on the skeleton automaton. If early_susp is true, then composition starts on the transition that enters the accepting SCC, not just in the SCC itself. If no_susp_product is true, then the composition is not performed and the skeleton automaton is returned for debugging. If wdba_smaller is true, then the WDBA-minimization of the skeleton is used only if it produces a smaller automaton.

Finally the oblig flag is a work in progress and should not be set to true.

This interface is subject to change, and clients aiming for long-term stability should better use the services of the spot::translator class instead.

bdd spot::compute_all_acceptance_conditions ( bdd  neg_acceptance_conditions)

Compute all acceptance conditions from all neg acceptance conditions.

Referenced by spot::explicit_graph< State, tgba >::all_acceptance_conditions().

bdd spot::compute_neg_acceptance_conditions ( bdd  all_acceptance_conditions)

Compute neg acceptance conditions from all acceptance conditions.

Referenced by spot::explicit_graph< State, tgba >::set_acceptance_conditions().

void spot::display_safra ( const tgba_safra_complement *  a)

Produce a dot output of the Safra automaton associated to a.

Parameters
aThe tgba_safra_complement with an intermediate Safra automaton to display
std::ostream& spot::dotty_reachable ( std::ostream &  os,
const ta *  a 
)
std::ostream& spot::dump_scc_dot ( const tgba *  a,
std::ostream &  out,
bool  verbose = false 
)
std::ostream& spot::dump_scc_dot ( const scc_map &  m,
std::ostream &  out,
bool  verbose = false 
)
void spot::enable_utf8 ( )

Enable UTF-8 output for bdd printers.

std::vector<std::vector<sccs_set* > >* spot::find_paths ( tgba *  a,
const scc_map &  m 
)
bool spot::format_kripke_parse_errors ( std::ostream &  os,
const std::string &  filename,
kripke_parse_error_list &  error_list 
)

Format diagnostics produced by spot::kripke_parse.

Parameters
osWhere diagnostics should be output.
filenameThe filename that should appear in the diagnostics.
error_listThe error list filled by spot::ltl::parse while parsing ltl_string.
Returns
true if any diagnostic was output.
bdd spot::formula_to_bdd ( const ltl::formula *  f,
bdd_dict *  d,
void *  for_me 
)

Convert a Boolean formula into a BDD.

Convert the Boolean formula f into a BDD, using existing variables from d, and registering new ones as necessary. for_me, the address of the user of these BDD variables will be passed to d when registering the variables.

If you only use the BDD representation temporarily, for instance passing it right away to bdd_to_formula(), you should not forget to unregister the variables that have been registered for for_me. See bdd_dict::unregister_all_my_variables().

Referenced by spot::explicit_graph< State, tgba >::add_condition().

std::set<const state*> spot::get_states_set ( const ta *  t)

Compute states set for an automaton.

bool spot::is_guarantee_automaton ( const tgba *  aut,
const scc_map *  sm = 0 
)

Whether an automaton represents a guarantee property.

A weak deterministic TGBA represents a guarantee property if any accepting path ends on an accepting state with only one transition that is a self-loop labelled by true.

Note that in the general case, this is only a sufficient condition : some guarantee automata might not be recognized with this check e.g. because of some non-determinism in the automaton. In that case, you should interpret a false return value as "I don't know".

If you apply this function on a weak deterministic TGBA (e.g. after a successful minimization with minimize_obligation()), then the result leaves no doubt: false really means that the automaton is not a guarantee property.

Parameters
autthe automaton to check
sman scc_map of the automaton if available (it will be built otherwise. If you supply an scc_map you should call build_map() before passing it to this function.
bool spot::is_safety_mwdba ( const tgba *  aut)

Whether a minimized WDBA represents a safety property.

A minimized WDBA (as returned by a successful run of minimize_obligation()) represent safety property if it contains only accepting transitions.

Parameters
autthe automaton to check
kripke_explicit* spot::kripke_parse ( const std::string &  name,
kripke_parse_error_list &  error_list,
bdd_dict *  dict,
ltl::environment &  env = ltl::default_environment::instance(),
bool  debug = false 
)
kripke* spot::load_dve2 ( const std::string &  file,
bdd_dict *  dict,
const ltl::atomic_prop_set *  to_observe,
const ltl::formula *  dead = ltl::constant::true_instance(),
int  compress = 0,
bool  verbose = true 
)
template<typename T >
unique_ptr<T> spot::make_unique ( T *  ptr)
inline

Change a pointer into a unique_ptr.

unsigned spot::max_spanning_paths ( std::vector< sccs_set * > *  paths,
scc_map &  m 
)
int spot::memusage ( )

Total number of pages in use by the program.

Returns
The total number of pages in use by the program if known. -1 otherwise.
std::ostream& spot::operator<< ( std::ostream &  os,
const gspn_exception &  e 
)
std::ostream& spot::saba_dotty_reachable ( std::ostream &  os,
const saba *  g 
)

Print reachable states in dot format.

tgba* spot::scc_filter ( const tgba *  aut,
bool  remove_all_useless = false,
scc_map *  given_sm = 0,
bdd  susp = bddtrue,
bool  early_susp = false,
bdd  ignored = bddtrue 
)

Prune unaccepting SCCs and remove superfluous acceptance conditions.

This function will explore the SCCs of the automaton and remove dead SCCs (i.e. SCC that are not accepting, and those with no exit path leading to an accepting SCC).

Additionally, this will try to remove useless acceptance conditions. This operation may diminish the number of acceptance condition of the automaton (for instance when two acceptance conditions are always used together we only keep one) but it will never remove all acceptance conditions, even if it would be OK to have zero.

Acceptance conditions on transitions going to non-accepting SCC are all removed. Acceptance conditions going to an accepting SCC and coming from another SCC are only removed if remove_all_useless is set. The default value of remove_all_useless is false because some algorithms (like the degeneralization) will work better if transitions going to an accepting SCC are accepting.

If given_sm is supplied, the function will use its result without computing a map of its own.

If susp is different from bddtrue, it should be a conjunction of (positive) variables to be removed from transitions going to non-accepting SCCs. If early_susp is false, the previous variable are also removed from transitions entering an accepting SCC. ignored is a conjunction of positive variables that should be removed everywhere.

Warning
Calling scc_filter on a TGBA that has the SBA property (i.e., transitions leaving accepting states are all marked as accepting) may destroy this property. Use scc_filter_states() instead.
tgba* spot::scc_filter_states ( const tgba *  aut,
scc_map *  given_sm = 0 
)

Prune unaccepting SCCs.

This is an abridged version of scc_filter(), that only remove useless states, without touching at the acceptance conditions.

Especially, if the input TGBA has the SBA property, (i.e., transitions leaving accepting states are all marked as accepting), then the output TGBA will also have that property.

void spot::shared_state_deleter ( state *  s)
inline
std::list<tgba*> spot::split_tgba ( tgba *  a,
const scc_map &  m,
unsigned  split_number 
)

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Mon Jul 29 2013 00:27:25 for spot by doxygen 1.8.4