* src/tgbatest/ltl2tgba.cc: Add option -t to output the LBTT automata.
* src/tgbaalgos/lbtt.cc, src/tgbaalgos/lbtt.hh: New files. * src/tgbaalgos/Makefile.am (tgbaalgos_HEADERS): Add lbtt.hh. (libtgbaalgos_la_SOURCES): Add lbtt.cc. * src/tgba/bddprint.cc (print_sat_handler): Put a space after "!". * src/tgbatest/readsave.test: Adjust spaces after "!".
This commit is contained in:
parent
a307c0d0ae
commit
f9c8eb1cb7
7 changed files with 272 additions and 3 deletions
31
src/tgbaalgos/lbtt.hh
Normal file
31
src/tgbaalgos/lbtt.hh
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
#ifndef SPOT_TGBAALGOS_LBTT_HH
|
||||
# define SPOT_TGBAALGOS_LBTT_HH
|
||||
|
||||
#include "tgba/tgba.hh"
|
||||
#include <iostream>
|
||||
|
||||
namespace spot
|
||||
{
|
||||
/// \brief Print reachable states in LBTT format.
|
||||
///
|
||||
/// Note that LBTT expects an automaton with transition
|
||||
/// labeled by propositional formulae, and generalized
|
||||
/// Büchi accepting conditions on \emph states. This
|
||||
/// is unlike our spot::tgba automata which put
|
||||
/// botg generalized accepting conditions and propositional
|
||||
/// formulae) on \emph transitions.
|
||||
///
|
||||
/// This algorithm will therefore produce an automata
|
||||
/// where accepting conditions have been moved from
|
||||
/// each transition to previous state. In the worst
|
||||
/// case, doing so will multiply the number of states
|
||||
/// and transitions of the automata by <code>2^|Acc|</code>.
|
||||
/// where <code>|Acc|</code> is the number of accepting
|
||||
/// conditions used by the automata. You have been warned.
|
||||
///
|
||||
/// \param g The automata to print.
|
||||
/// \param os Where to print.
|
||||
std::ostream& lbtt_reachable(std::ostream& os, const tgba& g);
|
||||
}
|
||||
|
||||
#endif // SPOT_TGBAALGOS_LBTT_HH
|
||||
Loading…
Add table
Add a link
Reference in a new issue