postproc: Add option to output Complete automata.

* src/tgbaalgos/postproc.cc, src/tgbaalgos/postproc.hh: Tweak set_pref()
to also accept Any|Complete, Small|Complete, or Deterministic|Complete.
* src/bin/common_post.hh, src/bin/common_post.cc: Add option --complete
and set comp.
* src/bin/dstar2tgba.cc, src/bin/ltl2tgba.cc, src/bin/ltl2tgta.cc: Pass
comp to set_pref().
* src/tgbaalgos/complete.cc: Preserve state-based acceptance.
* src/tgbatest/dstar.test, src/tgbatest/ltlcross2.test,
src/tgbatest/nondet.test: Augment tests.
* doc/org/dstar2tgba.org, doc/org/ltl2tgba.org, NEWS: Document.
This commit is contained in:
Alexandre Duret-Lutz 2013-08-26 15:46:51 +02:00
parent b31facffb1
commit 1ab46b0864
14 changed files with 139 additions and 49 deletions

View file

@ -72,7 +72,17 @@ namespace spot
type_ = type;
}
enum output_pref { Any, Small, Deterministic };
enum
{
Any = 0,
Small = 1,
Deterministic = 2,
// 3 reserved for unambiguous
// Combine Complete as 'Small | Complete' or 'Deterministic | Complete'
Complete = 4
};
typedef int output_pref;
void
set_pref(output_pref pref)
{
@ -95,7 +105,7 @@ namespace spot
const tgba* do_degen(const tgba* input);
output_type type_;
output_pref pref_;
int pref_;
optimization_level level_;
// Fine-tuning options fetched from the option_map.
bool degen_reset_;