simulation: fix merging transiant SCCs
This fixes #452, and also fix a bug related to transiant SCCs incorrectly merged in cosimulation: the source of the edges was updated without fixing the chaining of the edges. * spot/twaalgos/simulation.cc: Fix all the above. * tests/python/simstate.py: Add test case from issue #452. * tests/core/det.test, tests/core/ltlsynt.test, tests/core/satmin.test: Lower expected sizes. * tests/python/decompose.ipynb: Adjust for changed order.
This commit is contained in:
parent
cfa3417449
commit
fca6513604
6 changed files with 203 additions and 142 deletions
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (C) 2013-2020 Laboratoire de Recherche et Développement de
|
||||
# Copyright (C) 2013-2021 Laboratoire de Recherche et Développement de
|
||||
# l'Epita (LRDE).
|
||||
#
|
||||
# This file is part of Spot, a model checking library.
|
||||
|
|
@ -42,7 +42,7 @@ cat >formulas <<'EOF'
|
|||
1,9,X(a R ((!b & F!c) M X!a))
|
||||
1,2,XG!a R Fb
|
||||
1,4,GFc | (a & Fb)
|
||||
1,6,X(a R (Fb R F!b))
|
||||
1,4,X(a R (Fb R F!b))
|
||||
1,1,G(Xa M Fa)
|
||||
1,3,X(Gb | GFa)
|
||||
1,9,X(Gc | XG((b & Ga) | (!b & F!a)))
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#! /bin/sh
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (C) 2017, 2019, 2020 Laboratoire de Recherche et
|
||||
# Copyright (C) 2017, 2019-2021 Laboratoire de Recherche et
|
||||
# Développement de l'Epita (LRDE).
|
||||
#
|
||||
# This file is part of Spot, a model checking library.
|
||||
|
|
@ -376,6 +376,6 @@ diff out exp
|
|||
|
||||
f='Fp0 U XX((p0 & F!p1) | (!p0 & Gp1))'
|
||||
ltlsynt --verbose --algo=ps --outs=p1 --ins=p0 -f "$f" 2>err
|
||||
grep 'DPA has 14 states' err
|
||||
grep 'DPA has 13 states' err
|
||||
ltlsynt --verbose -x wdba-minimize=1 --algo=ps --outs=p1 --ins=p0 -f "$f" 2>err
|
||||
grep 'DPA has 12 states' err
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (C) 2013, 2017, 2018, 2019 Laboratoire de Recherche et Développement
|
||||
# de l'Epita (LRDE).
|
||||
# Copyright (C) 2013, 2017-2019, 2021 Laboratoire de Recherche et
|
||||
# Développement de l'Epita (LRDE).
|
||||
#
|
||||
# This file is part of Spot, a model checking library.
|
||||
#
|
||||
|
|
@ -1300,8 +1300,8 @@ cat >expected <<'EOF'
|
|||
"!((G(F(p0))) | ((p1) & (F(p2))))","15",5
|
||||
"!((G(F(p0))) | ((p1) & (F(p2))))","16",5
|
||||
"!((G(F(p0))) | ((p1) & (F(p2))))","17",5
|
||||
"X((p0) R ((F(p1)) R (F(!(p1)))))","1",6
|
||||
"X((p0) R ((F(p1)) R (F(!(p1)))))","2",6
|
||||
"X((p0) R ((F(p1)) R (F(!(p1)))))","1",4
|
||||
"X((p0) R ((F(p1)) R (F(!(p1)))))","2",4
|
||||
"X((p0) R ((F(p1)) R (F(!(p1)))))","3",4
|
||||
"X((p0) R ((F(p1)) R (F(!(p1)))))","4",4
|
||||
"X((p0) R ((F(p1)) R (F(!(p1)))))","6",4
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue