The algorithm applies a transformation on data expressions of a linear process specification (LPS), by which other tools (such as lpsparelm, lpsconstelm) can apply their transformations more effectively. In concrete, this tool unfolds a sort with associated constructor functions to a set of process parameters in the LPS, in such a way that all behaviour is preserved.
lpsparunfold [OPTION]... [INFILE [OUTFILE]]
Unfolds a set of given process parameters of the linear process specification (LPS) in INFILE and writes the result to OUTFILE. If INFILE is not present, stdin is used. If OUTFILE is not present, stdout is used.
-a
, --alt-case
use an alternative placement method for case functions
-i[NUM]
, --index=[NUM]
unfolds process parameters for comma separated indices
-x
, --no-pattern
do not unfold pattern matching functions in state updates
-p
, --possibly-inconsistent
add rewrite rules that can make a data specification inconsistent
-QNUM
, --qlimit=NUM
limit enumeration of quantifiers to NUM iterations. (Default NUM=1000, NUM=0 for unlimited).
-nNUM
, --repeat=NUM
repeat unfold NUM times
-rNAME
, --rewriter=NAME
use rewrite strategy NAME:
jitty
jitty rewriting
jittyc
compiled jitty rewriting
jittyp
jitty rewriting with prover
-sNAME
, --sort=NAME
unfolds all process parameters of sort NAME
--timings[=FILE]
append timing measurements to FILE. Measurements are written to standard error if no FILE is provided
-q
, --quiet
do not display warning messages
-v
, --verbose
display short intermediate messages
-d
, --debug
display detailed intermediate messages
--log-level=LEVEL
display intermediate messages up to and including level
-h
, --help
display help information
--version
display version information
--help-all
display help information, including hidden and experimental options
Frank Stappers