Personal tools

User manual/lpsrealelm

From MCRL2

Jump to: navigation, search
User manual

Contents

Replace process parameters of sort real by parameters over a finite domain.

Contents

Synopsis

lpsrealelm [OPTION]... [INFILE [OUTFILE]]

Short description

The lpsrealelm tool replaces parameters of sort real from the linear process specification (LPS) in INFILE and writes the result to OUTFILE. The real paramaters are replaced by parameters of sort Comp, which is an structured sort with three constants smaller, equal and larger. They represent that certain pairs of real expressions must be smaller, equal or larger to each other. If the resulting linear process does not contain MAY-actions, it is strongly bisimilar to the input lps. Otherwise, the result is may-bisimilar to the original. If INFILE is not present, stdin is used. If OUTFILE is not present, stdout is used.

The process equation section of an LPS is of the following form:

act  step, urgent, reset;
proc P(x:Real) = sum y:Real.(x<y)->step.P(y)
               + sum y:Real.(x<y && x<2)->urgent.P(y)
               + reset.P(0);
 
init P(0);

The tool transforms this to the following strongly bisimilar LPS (where it must be noted that in this particular case the condition x>=0 has been added to each summand in the input LPS).

sort Comp = struct smaller?is_smaller | equal?is_equal | larger?is_larger;
 
act  step,urgent,reset;
 
proc P(xi,xi00: Comp) =
       !is_smaller(xi) ->
         reset .
         P(equal, smaller)
     + (is_smaller(xi00) && !is_smaller(xi)) ->
         urgent .
         P(larger, equal)
     + (!is_smaller(xi) && is_smaller(xi00)) ->
         urgent .
         P(larger, smaller)
     + (is_smaller(xi00) && !is_smaller(xi)) ->
         urgent .
         P(larger, larger)
     + (is_smaller(xi00) && !is_smaller(xi)) ->
         step .
         P(larger, equal)
     + (!is_smaller(xi) && is_smaller(xi00)) ->
         step .
         P(larger, smaller)
     + !is_smaller(xi) ->
         step .
         P(larger, larger);
 
init P(equal, smaller);

Options

OPTION can be any of the following :

--max=NUM
perform at most NUM iterations. 1 iteration is always performed.
-rNAME, --rewriter=NAME
use rewrite strategy NAME
-q, --quiet
do not display warning messages
-v, --verbose
display short intermediate messages
-d, --debug
display detailed intermediate messages
-h, --help
display help information
--version
display version information

Author

Written by Jeroen Keiren and Jan Friso Groote.

Bug reporting

Report bugs at our issue tracking system.



prev.gif lpspp lpsrewr next.gif
This page was last modified on 15 March 2009, at 10:30. This page has been accessed 958 times.
Copyright © 2005-2012 Technische Universiteit Eindhoven.
Powered by MediaWiki