lpsuntime

The lpsuntime tool removes time from a linear process specification (LPS).

Consider an LPS with the following process section:

\[\begin{split}\begin{array}{l} P(d:D) =\\ \quad \sum_{e_0:E_0} c_0(d,e_0) \to a_0(f_0(d,e_0))^ct_0(d,e_0) \cdot P(g_0(d,e_0)) + {}\\ \quad \sum_{e_1:E_1} c_1(d,e_1) \to a_1(f_1(d,e_1))^ct_1(d,e_1) \cdot P(g_1(d,e_1)) + {}\\ \quad \ldots \end{array}\end{split}\]

The tool transforms this to the following equivalent untimed version:

\[\begin{split}\begin{array}{l} P(d:D,t:\mathbb{R}) =\\ \quad \sum_{e_0:E_0} c_0(d,e_0) \land t_0(d,e_0) > t \to a_0(f_0(d,e_0)) \cdot P(g_0(d,e_0),t_0(d,e_0)) + {}\\ \quad \sum_{e_1:E_1} c_1(d,e_1) \land t_1(d,e_1) > t \to a_1(f_1(d,e_1)) \cdot P(g_1(d,e_1),t_1(d,e_1)) + {}\\ \quad \ldots \end{array}\end{split}\]
orphan:


Usage

lpsuntime   [OPTION]... [INFILE [OUTFILE]]

Description

Remove time from the linear process specification (LPS) in INFILE and write the result to OUTFILE. If INFILE is not present, stdin is used. If OUTFILE is not present, stdout is used.

Command line options

-e , --eliminate-sumvars

when possible, eliminate summation variables of type Real using the Fourier Motzkin algorithm. This can significantly change the structure of the conditions.

-i , --invariant

add invariants for parameters of type Real to the output

-QNUM , --qlimit=NUM

limit enumeration of universal and existential quantifiers in data expressions to NUM iterations (default NUM=10, NUM=0 for unlimited).

-rNAME , --rewriter=NAME

use rewrite strategy NAME:

jitty

jitty rewriting

jittyc

compiled jitty rewriting

jittyp

jitty rewriting with prover

--timings[=FILE]

append timing measurements to FILE. Measurements are written to standard error if no FILE is provided

Standard options

-q , --quiet

do not display warning messages

-v , --verbose

display short log messages

-d , --debug

display detailed log messages

--log-level=LEVEL

display log messages up to and including level; either warn, verbose, debug or trace

-h , --help

display help information

--version

display version information

--help-all

display help information, including hidden and experimental options

Author

Jeroen Keiren