to_finit: fix issue #526
* spot/twaalgos/remprop.cc: Use bdd_restrict instead of bdd_exists. * tests/core/ltlf.test: Add test case. * NEWS: Mention the bug.
This commit is contained in:
parent
43b4d80da1
commit
a117fe1a22
3 changed files with 57 additions and 4 deletions
4
NEWS
4
NEWS
|
|
@ -36,6 +36,10 @@ New in spot 2.11.3.dev (not yet released)
|
||||||
done in Spot so far) may require the output to use transition-based
|
done in Spot so far) may require the output to use transition-based
|
||||||
acceptance. (Issue #525.)
|
acceptance. (Issue #525.)
|
||||||
|
|
||||||
|
- to_finite(), introduce in 2.11, had a bug that could break the
|
||||||
|
completeness of automata and trigger an exception from the HOA
|
||||||
|
printer. (Issue #526.)
|
||||||
|
|
||||||
New in spot 2.11.3 (2022-12-09)
|
New in spot 2.11.3 (2022-12-09)
|
||||||
|
|
||||||
Bug fixes:
|
Bug fixes:
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
// -*- coding: utf-8 -*-
|
// -*- coding: utf-8 -*-
|
||||||
// Copyright (C) 2015-2019, 2022 Laboratoire de Recherche et Développement
|
// Copyright (C) 2015-2019, 2022, 2023 Laboratoire de Recherche et
|
||||||
// de l'Epita (LRDE).
|
// Développement de l'Epita (LRDE).
|
||||||
//
|
//
|
||||||
// This file is part of Spot, a model checking library.
|
// This file is part of Spot, a model checking library.
|
||||||
//
|
//
|
||||||
|
|
@ -205,7 +205,7 @@ namespace spot
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
e.cond = bdd_exist(e.cond, rem);
|
e.cond = bdd_restrict(e.cond, rem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
# Copyright (C) 2022 Laboratoire de Recherche et Développement de
|
# Copyright (C) 2022, 2023 Laboratoire de Recherche et Développement de
|
||||||
# l'Epita (LRDE).
|
# l'Epita (LRDE).
|
||||||
#
|
#
|
||||||
# This file is part of Spot, a model checking library.
|
# This file is part of Spot, a model checking library.
|
||||||
|
|
@ -173,3 +173,52 @@ grep -v '\[f\]' out4 > out3
|
||||||
cmp out3 out4 && exit 1 # make sure we did remove something
|
cmp out3 out4 && exit 1 # make sure we did remove something
|
||||||
autfilt out3 > out4
|
autfilt out3 > out4
|
||||||
diff out4 expected3
|
diff out4 expected3
|
||||||
|
|
||||||
|
# Issue #526
|
||||||
|
ltlfilt -f '(i->XXo)|G(i<->Xo2)' --from-ltlf | ltl2tgba -D |\
|
||||||
|
autfilt -C --to-finite > out
|
||||||
|
cat >exp <<EOF
|
||||||
|
HOA: v1
|
||||||
|
States: 9
|
||||||
|
Start: 0
|
||||||
|
AP: 3 "o" "o2" "i"
|
||||||
|
acc-name: Buchi
|
||||||
|
Acceptance: 1 Inf(0)
|
||||||
|
properties: trans-labels explicit-labels state-acc complete
|
||||||
|
properties: deterministic
|
||||||
|
--BODY--
|
||||||
|
State: 0 {0}
|
||||||
|
[2] 6
|
||||||
|
[!2] 7
|
||||||
|
State: 1
|
||||||
|
[!1&!2] 1
|
||||||
|
[!1&2] 5
|
||||||
|
[1] 8
|
||||||
|
State: 2 {0}
|
||||||
|
[0] 7
|
||||||
|
[!0] 8
|
||||||
|
State: 3 {0}
|
||||||
|
[!0&!1&!2] 1
|
||||||
|
[!0&!1&2] 5
|
||||||
|
[0] 7
|
||||||
|
[!0&1] 8
|
||||||
|
State: 4 {0}
|
||||||
|
[!0&1&!2] 1
|
||||||
|
[!0&1&2] 5
|
||||||
|
[0] 7
|
||||||
|
[!0&!1] 8
|
||||||
|
State: 5 {0}
|
||||||
|
[1&!2] 1
|
||||||
|
[1&2] 5
|
||||||
|
[!1] 8
|
||||||
|
State: 6 {0}
|
||||||
|
[!1] 2
|
||||||
|
[1&!2] 3
|
||||||
|
[1&2] 4
|
||||||
|
State: 7 {0}
|
||||||
|
[t] 7
|
||||||
|
State: 8
|
||||||
|
[t] 8
|
||||||
|
--END--
|
||||||
|
EOF
|
||||||
|
diff out exp
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue