spot
1.2.6
|
Modules | |
Decorating the dot output | |
Classes | |
struct | spot::dstar_aut |
Temporary encoding of an omega automaton produced by ltl2dstar. More... | |
Typedefs | |
typedef std::pair < spot::location, std::string > | spot::dstar_parse_error |
A parse diagnostic with its location. More... | |
typedef std::list < dstar_parse_error > | spot::dstar_parse_error_list |
A list of parser diagnostics, as filled by parse. More... | |
typedef std::pair < spot::location, std::string > | spot::neverclaim_parse_error |
A parse diagnostic with its location. More... | |
typedef std::list < neverclaim_parse_error > | spot::neverclaim_parse_error_list |
A list of parser diagnostics, as filled by parse. More... | |
typedef std::pair < spot::location, std::string > | spot::tgba_parse_error |
A parse diagnostic with its location. More... | |
typedef std::list < tgba_parse_error > | spot::tgba_parse_error_list |
A list of parser diagnostics, as filled by parse. More... | |
Enumerations | |
enum | dstar_type { Rabin, Streett } |
Functions | |
SPOT_API dstar_aut * | spot::dstar_parse (const std::string &filename, dstar_parse_error_list &error_list, bdd_dict *dict, ltl::environment &env=ltl::default_environment::instance(), bool debug=false) |
Build a spot::tgba_explicit from ltl2dstar's output. More... | |
SPOT_API bool | spot::format_dstar_parse_errors (std::ostream &os, const std::string &filename, dstar_parse_error_list &error_list) |
Format diagnostics produced by spot::dstar_parse. More... | |
SPOT_API tgba * | spot::nra_to_nba (const dstar_aut *nra) |
Convert a non-deterministic Rabin automaton into a non-deterministic Büchi automaton. More... | |
SPOT_API tgba * | spot::nra_to_nba (const dstar_aut *nra, const state_set *ignore) |
Convert a non-deterministic Rabin automaton into a non-deterministic Büchi automaton. More... | |
SPOT_API tgba * | spot::dra_to_ba (const dstar_aut *dra, bool *dba_output=0) |
Convert a deterministic Rabin automaton into a Büchi automaton, deterministic when possible. More... | |
SPOT_API tgba * | spot::nsa_to_tgba (const dstar_aut *nra) |
Convert a non-deterministic Streett automaton into a non-deterministic tgba. More... | |
SPOT_API tgba * | spot::dstar_to_tgba (const dstar_aut *dstar) |
Convert a Rabin or Streett automaton into a TGBA. More... | |
SPOT_API std::ostream & | spot::kripke_save_reachable (std::ostream &os, const kripke *k) |
Save the reachable part of Kripke structure in text format. More... | |
SPOT_API std::ostream & | spot::kripke_save_reachable_renumbered (std::ostream &os, const kripke *k) |
Save the reachable part of Kripke structure in text format. More... | |
SPOT_API tgba_explicit_string * | spot::neverclaim_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... | |
SPOT_API bool | spot::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... | |
SPOT_API std::ostream & | spot::dotty_reachable (std::ostream &os, const tgba *g, bool assume_sba=false, dotty_decorator *dd=0) |
Print reachable states in dot format. More... | |
SPOT_API std::ostream & | spot::hoaf_reachable (std::ostream &os, const tgba *g, const ltl::formula *f=0, hoaf_acceptance acceptance=Hoaf_Acceptance_States, hoaf_alias alias=Hoaf_Alias_None, bool newlines=true) |
Print reachable states in Hanoi Omega Automata format. More... | |
SPOT_API std::ostream & | spot::lbtt_reachable (std::ostream &os, const tgba *g, bool sba=false) |
Print reachable states in LBTT's format. More... | |
SPOT_API const tgba * | spot::lbtt_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... | |
SPOT_API std::ostream & | spot::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... | |
SPOT_API std::ostream & | spot::tgba_save_reachable (std::ostream &os, const tgba *g) |
Save reachable states in text format. More... | |
SPOT_API tgba_explicit_string * | spot::tgba_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... | |
SPOT_API bool | spot::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... | |
typedef std::pair<spot::location, std::string> spot::dstar_parse_error |
A parse diagnostic with its location.
typedef std::list<dstar_parse_error> spot::dstar_parse_error_list |
A list of parser diagnostics, as filled by parse.
typedef std::pair<spot::location, std::string> spot::neverclaim_parse_error |
A parse diagnostic with its location.
typedef std::list<neverclaim_parse_error> spot::neverclaim_parse_error_list |
A list of parser diagnostics, as filled by parse.
typedef std::pair<spot::location, std::string> spot::tgba_parse_error |
A parse diagnostic with its location.
typedef std::list<tgba_parse_error> spot::tgba_parse_error_list |
A list of parser diagnostics, as filled by parse.
SPOT_API std::ostream& spot::dotty_reachable | ( | std::ostream & | os, |
const tgba * | g, | ||
bool | assume_sba = false , |
||
dotty_decorator * | dd = 0 |
||
) |
Print reachable states in dot format.
If assume_sba is set, this assumes that the automaton is an SBA and use double elipse to mark accepting states.
The dd argument allows to customize the output in various ways. See this page for a list of available decorators. If no decorator is specified, the dotty_decorator is used. labels the transitions are encoded in UTF-8.
SPOT_API tgba* spot::dra_to_ba | ( | const dstar_aut * | dra, |
bool * | dba_output = 0 |
||
) |
Convert a deterministic Rabin automaton into a Büchi automaton, deterministic when possible.
See "Deterministic Ï-automata vis-a-vis Deterministic Büchi Automata", S. Krishnan, A. Puri, and R. Brayton (ISAAC'94) for more details about a DRA->DBA construction.
We essentially apply this method SCC-wise. If an SCC is DBA-realizable, we duplicate it in the output, fixing just the acceptance states. If an SCC is not DBA-realizable, then we apply the more usual conversion from Rabin to NBA for this part.
If the optional dba_output argument is non-null, the pointed Boolean will be updated to indicate whether the returned Büchi automaton is deterministic.
SPOT_API dstar_aut* spot::dstar_parse | ( | const std::string & | filename, |
dstar_parse_error_list & | error_list, | ||
bdd_dict * | dict, | ||
ltl::environment & | env = ltl::default_environment::instance() , |
||
bool | debug = false |
||
) |
Build a spot::tgba_explicit from ltl2dstar's output.
filename | The name of the file to parse. |
error_list | A list that will be filled with parse errors that occured during parsing. |
dict | The BDD dictionary where to use. |
env | The environment of atomic proposition into which parsing should take place. |
debug | When true, causes the parser to trace its execution. |
Note that the parser usually tries to recover from errors. It can return an non zero value even if it encountered error during the parsing of filename. If you want to make sure filename was parsed succesfully, check error_list for emptiness.
SPOT_API tgba* spot::dstar_to_tgba | ( | const dstar_aut * | dstar) |
Convert a Rabin or Streett automaton into a TGBA.
This function calls dra_to_ba() or nsa_to_tgba().
SPOT_API bool spot::format_dstar_parse_errors | ( | std::ostream & | os, |
const std::string & | filename, | ||
dstar_parse_error_list & | error_list | ||
) |
Format diagnostics produced by spot::dstar_parse.
os | Where diagnostics should be output. |
filename | The filename that should appear in the diagnostics. |
error_list | The error list filled by spot::ltl::parse while parsing ltl_string. |
true
iff any diagnostic was output. SPOT_API bool spot::format_neverclaim_parse_errors | ( | std::ostream & | os, |
const std::string & | filename, | ||
neverclaim_parse_error_list & | error_list | ||
) |
Format diagnostics produced by spot::neverclaim_parse.
os | Where diagnostics should be output. |
filename | The filename that should appear in the diagnostics. |
error_list | The error list filled by spot::ltl::parse while parsing ltl_string. |
true
iff any diagnostic was output. SPOT_API bool spot::format_tgba_parse_errors | ( | std::ostream & | os, |
const std::string & | filename, | ||
tgba_parse_error_list & | error_list | ||
) |
Format diagnostics produced by spot::tgba_parse.
os | Where diagnostics should be output. |
filename | The filename that should appear in the diagnostics. |
error_list | The error list filled by spot::ltl::parse while parsing ltl_string. |
true
iff any diagnostic was output. SPOT_API std::ostream& spot::hoaf_reachable | ( | std::ostream & | os, |
const tgba * | g, | ||
const ltl::formula * | f = 0 , |
||
hoaf_acceptance | acceptance = Hoaf_Acceptance_States , |
||
hoaf_alias | alias = Hoaf_Alias_None , |
||
bool | newlines = true |
||
) |
Print reachable states in Hanoi Omega Automata format.
os | The output stream to print on. |
g | The automaton to output. |
f | The (optional) formula associated to the automaton. If given it will be output as a comment. |
acceptance | Force the type of acceptance mode used in output. |
alias | Whether aliases should be used in output. |
newlines | Whether to use newlines in output. |
SPOT_API std::ostream& spot::kripke_save_reachable | ( | std::ostream & | os, |
const kripke * | k | ||
) |
Save the reachable part of Kripke structure in text format.
The states will be named with the value returned by the kripke::format_state() method. Such a string can be large, so the output will not be I/O efficient. We recommend using this function only for debugging. Use kripke_save_reachable_renumbered() for large output.
SPOT_API std::ostream& spot::kripke_save_reachable_renumbered | ( | std::ostream & | os, |
const kripke * | k | ||
) |
Save the reachable part of Kripke structure in text format.
States will be renumbered with sequential number. This is much more I/O efficient when dumping large Kripke structures with big state names. The drawback is that any information carried by the state name is lost.
SPOT_API const tgba* spot::lbtt_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.
is | The stream on which the automaton should be input. |
error | A string in which to write any error message. |
dict | The dictionary that should register the BDD variables used by the automaton built. |
env | The environment of atomic proposition into which parsing should take place. |
envacc | The environment of acceptance conditions into which parsing should take place. |
SPOT_API std::ostream& spot::lbtt_reachable | ( | std::ostream & | os, |
const tgba * | g, | ||
bool | sba = false |
||
) |
Print reachable states in LBTT's format.
g | The automata to print. |
os | Where to print. |
sba | Assume g is an SBA and use LBTT's state-based acceptance format (similar to LBT's format). |
SPOT_API std::ostream& spot::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.
os | The output stream to print on. |
g | The (state-based degeneralized) automaton to output. There should be only one acceptance condition, and all the transitions of a state should be either all accepting or all unaccepting. If your automaton does not satisfies these requirements, call degeneralize() first. |
f | The (optional) formula associated to the automaton. If given it will be output as a comment. |
comments | Whether to comment each state of the never clause with the label of the g automaton. |
SPOT_API tgba_explicit_string* spot::neverclaim_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.
filename | The name of the file to parse. |
error_list | A list that will be filled with parse errors that occured during parsing. |
dict | The BDD dictionary where to use. |
env | The environment of atomic proposition into which parsing should take place. |
debug | When true, causes the parser to trace its execution. |
Note that the parser usually tries to recover from errors. It can return an non zero value even if it encountered error during the parsing of filename. If you want to make sure filename was parsed succesfully, check error_list for emptiness.
SPOT_API tgba* spot::nra_to_nba | ( | const dstar_aut * | nra) |
Convert a non-deterministic Rabin automaton into a non-deterministic Büchi automaton.
SPOT_API tgba* spot::nra_to_nba | ( | const dstar_aut * | nra, |
const state_set * | ignore | ||
) |
Convert a non-deterministic Rabin automaton into a non-deterministic Büchi automaton.
This version simply ignores all states in ignore.
SPOT_API tgba* spot::nsa_to_tgba | ( | const dstar_aut * | nra) |
Convert a non-deterministic Streett automaton into a non-deterministic tgba.
SPOT_API tgba_explicit_string* spot::tgba_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.
filename | The name of the file to parse. |
error_list | A list that will be filled with parse errors that occured during parsing. |
dict | The BDD dictionary where to use. |
env | The environment of atomic proposition into which parsing should take place. |
envacc | The environment of acceptance conditions into which parsing should take place. |
debug | When true, causes the parser to trace its execution. |
Note that the parser usually tries to recover from errors. It can return an non zero value even if it encountered error during the parsing of filename. If you want to make sure filename was parsed succesfully, check error_list for emptiness.
SPOT_API std::ostream& spot::tgba_save_reachable | ( | std::ostream & | os, |
const tgba * | g | ||
) |
Save reachable states in text format.