dtbasat,dtgbasat: rewrite using the tgba_digraph interface

This gets rid of many state*/int conversions.  We now use scc_info
instead of scc_map.  Finally the loops are now all 0-based.

* src/tgbaalgos/sccinfo.cc, src/tgbaalgos/sccinfo.hh (weak_sccs): New
method.
* src/tgbaalgos/dtbasat.cc, src/tgbaalgos/dtbasat.hh,
src/tgbaalgos/dtgbasat.cc, src/tgbaalgos/dtgbasat.hh: Use the
tgba_digraph interface.
* src/tgbatest/ltl2tgba.cc: Adjust calls.
This commit is contained in:
Alexandre Duret-Lutz 2014-08-20 16:11:50 +02:00
parent 99d28c3cc2
commit edb220af6a
7 changed files with 381 additions and 425 deletions

View file

@ -45,7 +45,7 @@ namespace spot
/// equivalent to \a a. If no such TGBA is found, a null pointer is
/// returned.
SPOT_API tgba_digraph_ptr
dtgba_sat_synthetize(const const_tgba_ptr& a,
dtgba_sat_synthetize(const const_tgba_digraph_ptr& a,
unsigned target_acc_number,
int target_state_number,
bool state_based = false);
@ -57,7 +57,7 @@ namespace spot
///
/// If no smaller TGBA exist, this returns a null pointer.
SPOT_API tgba_digraph_ptr
dtgba_sat_minimize(const const_tgba_ptr& a,
dtgba_sat_minimize(const const_tgba_digraph_ptr& a,
unsigned target_acc_number,
bool state_based = false);
@ -68,7 +68,7 @@ namespace spot
//
/// If no smaller TBA exist, this returns a null pointer.
SPOT_API tgba_digraph_ptr
dtgba_sat_minimize_dichotomy(const const_tgba_ptr& a,
dtgba_sat_minimize_dichotomy(const const_tgba_digraph_ptr& a,
unsigned target_acc_number,
bool state_based = false);
}