sccfilter: some inherently-weak automata should have t acceptance
* spot/twaalgos/sccfilter.cc: If an inherently-weak automaton has no rejecting cycle, reduce its acceptance to t instead of Büchi. * spot/twa/acc.hh (operator==, operator<): Fix comparisons of true acceptances. * NEWS: Mention these two changes. * spot/twaalgos/sccfilter.hh: Update documentation. * spot/twaalgos/determinize.cc (tgba_determinize): The call to scc_filter assume that the input BA is never reduced to t acceptance. Call scc_filter with an extra option to ensure that. * spot/twaalgos/postproc.cc (do_scc_filter): Adjust to add the extra option when we want to build Büchi or coBuchi. (ensure_ba): Don't mark trivial SCCs as accepting. * tests/core/complement.test, tests/core/dstar.test, tests/core/ltlsynt.test, tests/core/readsave.test, tests/core/wdba2.test, tests/python/_product_susp.ipynb, tests/python/automata-io.ipynb, tests/python/dualize.py, tests/python/highlighting.ipynb, tests/python/intrun.py, tests/python/setacc.py, tests/python/simstate.py, tests/python/stutter-inv.ipynb, tests/python/zlktree.py: Adjust test cases.
This commit is contained in:
parent
13377542cd
commit
0e71dd70c1
20 changed files with 857 additions and 842 deletions
|
|
@ -1,6 +1,6 @@
|
|||
#!/usr/bin/python3
|
||||
# -*- mode: python; coding: utf-8 -*-
|
||||
# Copyright (C) 2016, 2018, 2021, 2022 Laboratoire de Recherche et
|
||||
# Copyright (C) 2016, 2018, 2021, 2022, 2023 Laboratoire de Recherche et
|
||||
# Développement de l'EPITA.
|
||||
#
|
||||
# This file is part of Spot, a model checking library.
|
||||
|
|
@ -104,10 +104,10 @@ except RuntimeError as e:
|
|||
from gc import collect
|
||||
acc = spot.translate('a').acc()
|
||||
collect()
|
||||
tc.assertEqual(acc, spot.acc_cond('Inf(0)'))
|
||||
tc.assertEqual(acc, spot.acc_cond('t'))
|
||||
acc = spot.translate('b').get_acceptance()
|
||||
collect()
|
||||
tc.assertEqual(acc, spot.acc_code('Inf(0)'))
|
||||
tc.assertEqual(acc, spot.acc_code('t'))
|
||||
|
||||
|
||||
c = spot.acc_cond('Fin(0)&Fin(1)&(Inf(2)|Fin(3))')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue