Simplify {r1;b1}&&{r2;b2} or {b1:r1}&&{b2:r2}, or similar.

* src/ltlvisit/simplify.cc: Add four rules.
* doc/tl/tl.tex: Document these rules.
* src/ltltest/reduccmp.test: Add tests.
This commit is contained in:
Alexandre Duret-Lutz 2011-12-05 15:41:45 +01:00
parent 2f9f274a5f
commit b03935a4cf
3 changed files with 172 additions and 2 deletions

View file

@ -219,6 +219,16 @@ for x in ../reduccmp ../reductaustr; do
run 0 $x '{a && {b*;c:e}} <>-> d' 'a & c & d & e'
run 0 $x '{a && {b;c*}} <>-> d' 'a & b & d'
run 0 $x '{a && {b;c*:e}} <>-> d' 'a & b & d & e'
run 0 $x '{{b1;r1*} && {b2 ; r2*}} <>-> x' \
'{{b1&&b2};{r1*&&r2*}} <>-> x'
run 0 $x '{{b1;r1*}&&{b2;r2*}} <>-> x' \
'{{b1&&b2};{r1*&&r2*}} <>-> x'
run 0 $x '{{r1*;b1}&&{r2*;b2}} <>-> x' \
'{{r1*&&r2*};{b1&&b2}} <>-> x'
run 0 $x '{{r1*;b1}&&{r2*;b2}} <>-> x' \
'{{r1*&&r2*};{b1&&b2}} <>-> x'
run 0 $x '{{a;b*;c}&&{d;e*}&&{f*;g}&&{h*}} <>-> x' \
'{{f*;g}&&{h*}&&{{a&&d};{e* && {b*;c}}}} <>-> x'
;;
esac