This is the command lps2lts that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
lps2lts - generate an LTS from an LPS
lps2lts [OPTION]... [INFILE [OUTFILE]]
Generate an LTS from the LPS in INFILE and save the result to OUTFILE. If INFILE is not
supplied, stdin is used. If OUTFILE is not supplied, the LTS is not stored.
If the 'jittyc' rewriter is used, then the MCRL2_COMPILEREWRITER environment variable
(default value: 'mcrl2compilerewriter') determines the script that compiles the rewriter,
and MCRL2_COMPILEDIR (default value: '.') determines where temporary files are stored.
Note that lps2lts can deliver multiple transitions with the same label betweenany pair of
states. If this is not desired, such transitions can be removed byapplying a strong
bisimulation reducton using for instance the tool ltsconvert.
The format of OUTFILE is determined by its extension (unless it is specified by an
option). The supported formats are:
'aut' for the Aldebaran format (CADP),
'dot' for the GraphViz format (no longer supported as input format),
'fsm' for the Finite State Machine format, or
'lts' for the mCRL2 LTS format If the jittyc rewriter is used, then the
MCRL2_COMPILEREWRITER environment variable (default value: mcrl2compilerewriter)
determines the script that compiles the rewriter, and MCRL2_COMPILEDIR (default value:
'.') determines where temporary files are stored. Note that lps2lts can deliver multiple
transitions with the same label between any pair of states. If this is not desired, such
transitions can be removed by applying a strong bisimulation reducton using for instance
the tool ltsconvert.
OPTION can be any of the following:
detect and report actions in the transitions system that have action names from
NAMES, a comma-separated list. This is for instance useful to find (or prove the
absence) of an action error. A message is printed for every occurrence of one of
these action names. With the -t flag traces towards these actions are generated
use bit hashing to store states and store at most NUM states. This means that
instead of keeping a full record of all states that have been visited, a bit array
is used that indicate whether or not a hash of a state has been seen before.
Although this means that this option may cause states to be mistaken for others
(because they are mapped to the same hash), it can be useful to explore very large
LTSs that are otherwise not explorable. The default value for NUM is approximately
2*10^8 (this corresponds to about 25MB of memory)
use enumeration caching techniques to speed up state space generation.
apply prioritization of transitions with the action label NAME.(when no NAME is
supplied (i.e., '-c') priority is given to the action 'ctau'. To give priority to
to tau use the flag -ctau. Note that if the linear process is not tau-confluent,
the generated state space is necessarily branching bisimilar to the state space of
the lps. The generation algorithm that is used does not require the linear process
to be tau convergent.
detect deadlocks (i.e. for every deadlock a message is printed)
detect divergences (i.e. for every state with a divergence (=tau loop) a message is
printed). The algorithm to detect the divergences is linear for every state, so
state space exploration becomes quadratic with this option on, causing a state
space exploration to become slow when this option is enabled.
replace free variables in the LPS with dummy values based on the value of BOOL:
'yes' (default) or 'no'
if an error occurs during exploration, save a trace to the state that could not be
set the initial size of the internally used hash tables (default is 10000)
explore at most NUM states
detect and report multiactions in the transitions system from NAMES, a comma-
separated list. Works like -a, except that multi-actions are matched exactly,
including data parameters.
do not add state information to OUTFILEWithout this option lps2lts adds state
vector to the LTS. This option causes this information to be discarded and states
are only indicated by a sequence number. Explicit state information is useful for
visualisation purposes, for instance, but can cause the OUTFILE to grow
considerably. Note that this option is implicit when writing in the AUT format.
save the output in the specified FORMAT
use summand pruning to speed up state space generation.
limit enumeration of quantifiers to NUM variables. (Default NUM=1000, NUM=0 for
use rewrite strategy NAME: 'jitty' jitty rewriting (default) 'jittyc' compiled
jitty rewriting 'jittyp' jitty rewriting with prover
explore the state space using strategy NAME: 'b', 'breadth' breadth-first search
(default) 'd', 'depth' depth-first search 'p', 'prioritized' prioritize single
actions on its first argument being of sort Nat where only those actions with the
lowest value for this parameter are selected. E.g. if there are actions a(3) and
b(4), a(3) remains and b(4) is skipped. Actions without a first parameter of sort
Nat and multactions with more than one action are always chosen (option is
experimental) 'q', 'rprioritized' prioritize actions on its first argument being of
sort Nat (see option --prioritized), and randomly select one of these to obtain a
prioritized random simulation (option is experimental) 'r', 'random' random
simulation. Out of all next states one is chosen at random independently of whether
this state has already been observed. Consequently, random simultation only
terminates when a deadlocked state is encountered.
in verbose mode, do not print progress messages indicating the number of visited
states and transitions. For large state spaces the number of progress messages can
be quite horrendous. This feature helps to suppress those. Other verbose messages,
such as the total number of states explored, just remain visible.
append timing measurements to FILE. Measurements are written to standard error if
no FILE is provided
keep at most NUM states in todo lists; this option is only relevant for breadth-
first search, where NUM is the maximum number of states per level, and for depth
first search, where NUM is the maximum depth
Write a shortest trace to each state that is reached with an action from NAMES from
option --action, is a deadlock detected with --deadlock, or is a divergence
detected with --divergence to a file. No more than NUM traces will be written. If
NUM is not supplied the number of traces is unbounded.For each trace that is to be
written a unique file with extension .trc (trace) will be created containing a
shortest trace from the initial state to the deadlock state. The traces can be
pretty printed and converted to other formats using tracepp.
do not remove unused parts of the data specification
do not display warning messages
display short intermediate messages
display detailed intermediate messages
display intermediate messages up to and including level
display help information
display version information
Use lps2lts online using onworks.net services