streett_to_generalized_buchi: fix incorrect algorithm

Fixes #284, reported by Juraj Major.

* spot/twaalgos/totgba.cc: Fix the algorithm.
* spot/twa/acc.hh: More doc for future generations.
* tests/core/scc.test: More test cases.
* NEWS: Mention the issues.
This commit is contained in:
Alexandre Duret-Lutz 2017-09-26 17:17:17 +02:00
parent 210046e8cd
commit f81fb31136
4 changed files with 88 additions and 13 deletions

View file

@ -1051,6 +1051,15 @@ namespace spot
// Returns a number of pairs (>=0) if Streett, or -1 else.
int is_streett() const;
/// \brief Rabin/streett pairs used by is_rabin_like and is_streett_like.
///
/// These pairs hold two marks which can each contain one or no set.
///
/// For instance is_streett_like() rewrites Inf(0)&(Inf(2)|Fin(1))&Fin(3)
/// as three pairs: [(fin={},inf={0}),(fin={1},inf={2}),(fin={3},inf={})].
///
/// Empty marks should be interpreted in a way that makes them
/// false in Streett, and true in Rabin.
struct SPOT_API rs_pair
{
rs_pair() = default;