NAME
lpsinvelm - check invariants and use these to simplify or eliminate
summands of an LPS
SYNOPSIS
lpsinvelm [OPTION]... --invfile=INVFILE [INFILE [OUTFILE]]
DESCRIPTION
Checks whether the boolean formula (an mCRL2 data expression of sort
Bool) provided as invariant is an invariant of the linear process
specification (LPS) in INFILE. If this is the case, the tool eliminates
all summands of the LPS whose condition violates the invariant, and
writes the result to OUTFILE. If INFILE is present, stdin is used. If
OUTFILE is not present, stdout is used.
The tool can also be used to simplify the conditions of the summands of
the given LPS.
OPTIONS
OPTION can be any of the following:
-y, --all-violations
do not terminate as soon as a single violation of the invariant
is found, but report all violations instead
-c, --counter-example
display a valuation indicating why the invariant could possibly
be violated if it is uncertain whether a summand violates the
invariant
-o, --induction
apply induction on lists
-iINVFILE, --invariant=INVFILE
use the boolean formula (an mCRL2 data expression of sort Bool)
in INVFILE as invariant
-n, --no-check
do not check if the invariant holds before eliminating
unreachable summands
-e, --no-elimination
do not eliminate or simplify summands
-pPREFIX, --print-dot=PREFIX
save a .dot file of the resulting BDD if it is impossible to
determine whether a summand violates the invariant; PREFIX will
be used as prefix of the output files
-rNAME, --rewriter=NAME
use rewrite strategy NAME:
’jitty’ for jitty rewriting (default),
’jittyp’ for jitty rewriting with prover,
’jittyc’ for compiled jitty rewriting,
’inner’ for innermost rewriting,
’innerp’ for innermost rewriting with prover, or
’innerc’ for compiled innermost rewriting
-l, --simplify-all
simplify the conditions of all summands, instead of just
eliminating the summands whose conditions in conjunction with
the invariant are contradictions
-zSOLVER, --smt-solver=SOLVER
use SOLVER to remove inconsistent paths from the internally used
BDDs (by default, no path elimination is applied):
’ario’ for the SMT solver Ario, or
’cvc’ for the SMT solver CVC3
-sNUM, --summand=NUM
eliminate or simplify the summand with number NUM only
-tLIMIT, --time-limit=LIMIT
spend at most LIMIT seconds on proving a single formula
Standard options:
-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 Luc Engelen.
REPORTING BUGS
Report bugs at <http://www.mcrl2.org/issuetracker>.
COPYRIGHT
Copyright © 2010 Technische Universiteit Eindhoven.
This is free software. You may redistribute copies of it under the
terms of the Boost Software License
<http://www.boost.org/LICENSE_1_0.txt>. There is NO WARRANTY, to the
extent permitted by law.
SEE ALSO
See also the manual at
<http://www.mcrl2.org/mcrl2/wiki/index.php/User_manual/lpsinvelm>.
lpsinvelm mCRL2 toolset July 2010 (Maye2010ent)