simplifier: new PSL simplifications
{e[*0..j]}<>->f = {e[*1..j]}<>->f
{e[*0..j]}[]->f = {e[*1..j]}[]->f
Fixes #81.
This required a small change to the bounded-star-normal-form to prevent
infinite recursion.
* spot/tl/simplify.cc: Implement these rules.
* doc/tl/tl.tex, NEWS: Document them.
* tests/core/reduccmp.test: Add tests, and adjust others.
* tests/core/unambig.test: Replace formula that used to generated an
ambiguous automaton, but now generates a deterministic one.
This commit is contained in:
parent
d5b2de7fa8
commit
abff7eba8e
5 changed files with 38 additions and 16 deletions
4
NEWS
4
NEWS
|
|
@ -111,9 +111,11 @@ New in spot 2.0.3a (not yet released)
|
|||
implies that "autfilt --check=stutter" will now label all
|
||||
automata, not just deterministic automata.
|
||||
|
||||
* New LTL simplification rules:
|
||||
* New LTL and PSL simplification rules:
|
||||
- if e is pure eventuality and g => e, then e U g = Fg
|
||||
- if u is purely universal and u => g, then u R g = Gg
|
||||
- {s[*0..j]}[]->b = {s[*1..j]}[]->b
|
||||
- {s[*0..j]}<>->b = {s[*1..j]}<>->b
|
||||
|
||||
Python:
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue