improve translation of ms-phi-h=2..3

* spot/twaalgos/gfguarantee.cc: Rework the history computation to keep
an overapproximation of the history, and a longer one.  Also replay
the history even if there is no initial trivial SCC.  This helps with
translating FG(!a|XXXb) where we need to keep the history of a, but we
were previously unable to do so because some state had both "a" and
"ab" as input.
* spot/twaalgos/translate.cc: Optimize the product of suspendable
automata by removing useless trivial SCCs.
* tests/core/genltl.test, tests/core/satmin.test, NEWS: Adjust
expected results.
This commit is contained in:
Alexandre Duret-Lutz 2018-06-20 17:46:11 +02:00
parent c9131aee72
commit 621fb818e3
5 changed files with 135 additions and 61 deletions

View file

@ -191,9 +191,9 @@ cat >exp<<EOF
"ms-phi-s=2",1
"ms-phi-h=0",1
"ms-phi-h=1",2
"ms-phi-h=2",5
"ms-phi-h=3",19
"ms-phi-h=4",83
"ms-phi-h=2",4
"ms-phi-h=3",8
"ms-phi-h=4",16
"gf-equiv=0",1
"gf-equiv=1",1
"gf-equiv=2",1

View file

@ -660,8 +660,8 @@ cat >expected <<'EOF'
"!(G((p0) -> ((p1) U (p2))))","15",3
"!(G((p0) -> ((p1) U (p2))))","16",3
"!(G((p0) -> ((p1) U (p2))))","17",3
"G(F((p0) <-> (X(X(p1)))))","1",6
"G(F((p0) <-> (X(X(p1)))))","2",6
"G(F((p0) <-> (X(X(p1)))))","1",4
"G(F((p0) <-> (X(X(p1)))))","2",4
"G(F((p0) <-> (X(X(p1)))))","3",4
"G(F((p0) <-> (X(X(p1)))))","4",4
"G(F((p0) <-> (X(X(p1)))))","6",4