mcrl2i

This tool serves as a simple REPL (read-eval-print-loop) for the mCRL2 data language. It supports rewriting of expressions as well as solving Boolean expressions using enumeration. Details about each of the commands can be found in the manual page below.

Manual page for mcrl2i

Usage

mcrl2i   [OPTION]... [INFILE]

Description

Evaluate mCRL2 data expressions via a text-based interface. If INFILE is present and if it contains an LPS or PBES, the data types of this specification may be used. If no input file is given, only the standard numeric datatypes are available. Commands are read from stdin. The following commands are available to manipulate mcrl2 data expressions. Essentially, there are commands to rewrite and type expressions, as well as generating the solutions for a boolean expression. The expressions can contain assigned or unassigned variables. Note that there are no bounds on the number of steps to evaluate or solve an expression, nor is the number of solutions bounded. Hence, the assign, eval solve commands can give rise to infinite loops.

h[elp] print this help message. q[uit] quit. t[ype] EXPRESSION print type of EXPRESSION. a[ssign] VAR=EXPRESSION evaluate the expression and assign it to the variable. e[val] EXPRESSION rewrite EXPRESSION and print result. v[ar] VARLIST declare variables in VARLIST. r[ewriter] STRATEGY use STRATEGY for rewriting (jitty, jittyc, jittyp, jittycp). s[solve] VARLIST. EXPRESSION give all valuations of the variables in VARLIST that satisfy EXPRESSION.

VARLIST is of the form x,y,...: S; ... v,w,...: T.

Command line options

-QNUM , --qlimitNUM

limit enumeration of quantifiers to NUM variables. (Default NUM=1000, NUM=0 for unlimited).

-rNAME , --rewriterNAME

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 intermediate messages

-d , --debug

display detailed intermediate messages

--log-levelLEVEL

display intermediate messages up to and including level

-h , --help

display help information

--version

display version information

Author

Muck van Weerdenburg; Jan Friso Groote