Initial code for TGBA (Transition Generalized Bchi Automata).

Contains tgba_bdd, a BDD-encoded TGBA, and ltl_to_tgba,
a LTL-to-TGBA translator using Couvreur's algorithm.

* src/Makefile.am (SUBDIRS): Add tgba.
(libspot_la_LIBADD): Add tgba/libtgba.la.
* src/tgba/Makefile.am, src/tgba/bddfactory.cc,
src/tgba/bddfactory.hh, src/tgba/dictunion.cc,
src/tgba/dictunion.hh, src/tgba/ltl2tgba.cc, src/tgba/ltl2tgba.hh,
src/tgba/state.hh, src/tgba/statebdd.cc, src/tgba/statebdd.hh,
src/tgba/succiter.hh, src/tgba/succiterconcrete.cc,
src/tgba/succiterconcrete.hh, src/tgba/succlist.hh,
src/tgba/tgba.hh, src/tgba/tgbabddconcrete.cc,
src/tgba/tgbabddconcrete.hh, src/tgba/tgbabddconcretefactory.cc,
src/tgba/tgbabddconcretefactory.hh,
src/tgba/tgbabddconcreteproduct.cc,
src/tgba/tgbabddconcreteproduct.hh, src/tgba/tgbabddcoredata.cc,
src/tgba/tgbabddcoredata.hh, src/tgba/tgbabdddict.cc,
src/tgba/tgbabdddict.hh, src/tgba/tgbabddfactory.hh,
src/tgba/tgbabddtranslatefactory.cc,
src/tgba/tgbabddtranslatefactory.hh: New files.
This commit is contained in:
Alexandre Duret-Lutz 2003-05-26 11:17:40 +00:00
parent 5100c197a2
commit c03934140f
32 changed files with 1263 additions and 2 deletions

32
src/tgba/tgbabdddict.cc Normal file
View file

@ -0,0 +1,32 @@
#include "tgbabdddict.hh"
#include "ltlvisit/tostring.hh"
namespace spot
{
std::ostream&
tgba_bdd_dict::dump(std::ostream& os) const
{
fv_map::const_iterator sii;
os << "Atomic Propositions:" << std::endl;
for (sii = var_map.begin(); sii != var_map.end(); ++sii)
{
os << " " << sii->second << ": ";
to_string(sii->first, os) << std::endl;
}
os << "States:" << std::endl;
for (sii = now_map.begin(); sii != now_map.end(); ++sii)
{
os << " " << sii->second << ": Now[";
to_string(sii->first, os) << "]" << std::endl;
os << " " << sii->second + 1 << ": Next[";
to_string(sii->first, os) << "]" << std::endl;
}
os << "Promises:" << std::endl;
for (sii = prom_map.begin(); sii != prom_map.end(); ++sii)
{
os << " " << sii->second << ": ";
to_string(sii->first, os) << std::endl;
}
return os;
}
}