 |
|
| |
LTLDO(1) |
User Commands |
LTLDO(1) |
ltldo - run LTL/PSL formulas through other tools
ltldo [OPTION...] [COMMANDFMT...]
Run LTL/PSL formulas through another program, performing conversion of input and
output as required.
- -f, --formula=STRING
- process the formula STRING
- -F, --file=FILENAME[/COL]
- process each line of FILENAME as a formula; if COL is a positive integer,
assume a CSV file and read column COL; use a negative COL to drop the
first line of the CSV file
- --lbt-input
- read all formulas using LBT's prefix syntax
- --lenient
- parenthesized blocks that cannot be parsed as subformulas are considered
as atomic properties
- --negate
- negate each formula
- --list-shorthands
- list availabled shorthands to use in COMMANDFMT
- --relabel
- always relabel atomic propositions before calling any translator
- -t, --translator=COMMANDFMT
- register one translator to call
- -T, --timeout=NUMBER
- kill translators after NUMBER seconds
COMMANDFMT should specify input and output arguments using the
following character sequences:
- %%
- a single %
- %f,%s,%l,%w
- the formula as a (quoted) string in Spot, Spin, LBT, or Wring's
syntax
- %F,%S,%L,%W
- the formula as a file in Spot, Spin, LBT, or Wring's syntax
- %O
- the automaton output in HOA, never claim, LBTT, or ltl2dstar's format
If either %l, %L, or %T are used, any input formula that does not
use LBT-style atomic propositions (i.e. p0, p1, ...) will be relabeled
automatically. Likewise if %s or %S are used with atomic proposition that
compatible with Spin's syntax. You can force this relabeling to always occur
with option --relabel. The sequences %f,%s,%l,%w,%F,%S,%L,%W can
optionally be "infixed" by a bracketed sequence of operators to
unabbreviate before outputing the formula. For instance %[MW]f will rewrite
operators M and W before outputing it. Furthermore, if COMMANDFMT has the
form "{NAME}CMD", then only CMD will be passed to the shell, and
NAME will be used to name the tool in the output.
- --trust-hoa=BOOL
- If false, properties listed in HOA files are ignored, unless they can be
easily verified. If true (the default) any supported property is
trusted.
- --errors=abort|warn|ignore
- how to deal with tools returning with non-zero exit codes or automata that
ltldo cannot parse (default: abort)
- --fail-on-timeout
- consider timeouts as errors
- --greatest[=FORMAT]
- for each formula select the greatest automaton given by all translators,
using FORMAT for ordering (default is %s,%e)
- -n, --max-count=NUM
- output at most NUM automata
- --smallest[=FORMAT]
- for each formula select the smallest automaton given by all translators,
using FORMAT for ordering (default is %s,%e)
- -8, --utf8
- enable UTF-8 characters in output (ignored with --lbtt or
--spin)
- --check[=PROP]
- test for the additional property PROP and output the result in the HOA
format (implies -H). PROP may be some prefix of 'all' (default),
'unambiguous', 'stutter-invariant', 'stutter-sensitive-example',
'semi-determinism', or 'strength'.
- -d,
--dot[=1|a|A|b|B|c|C(COLOR)|e|E|f(FONT)|h|i(ID)|k|K|n|N|o|r|R|s|t|u|v|y|+INT|<INT|#]
- GraphViz's format. Add letters for (1) force numbered states, (a) show
acceptance condition (default), (A) hide acceptance condition, (b)
acceptance sets as bullets, (B) bullets except for
Büchi/co-Büchi automata, (c) force circular nodes, (C) color
nodes with COLOR, (d) show origins when known, (e) force elliptic nodes,
(E) force rEctangular nodes, (f(FONT)) use FONT, (g) hide edge labels, (h)
horizontal layout, (i) or (i(GRAPHID)) add IDs, (k) use state labels when
possible, (K) use transition labels (default), (n) show name, (N) hide
name, (o) ordered transitions, (r) rainbow colors for acceptance sets, (R)
color acceptance sets by Inf/Fin, (s) with SCCs, (t) force
transition-based acceptance, (u) hide true states, (v) vertical layout,
(y) split universal edges by color, (+INT) add INT to all set numbers,
(<INT) display at most INT states, (#) show internal edge numbers
- -H,
--hoaf[=1.1|i|k|l|m|s|t|v]
- Output the automaton in HOA format (default). Add letters to select (1.1)
version 1.1 of the format, (i) use implicit labels for complete
deterministic automata, (s) prefer state-based acceptance when possible
[default], (t) force transition-based acceptance, (m) mix state and
transition-based acceptance, (k) use state labels when possible, (l)
single-line output, (v) verbose properties
- --lbtt[=t]
- LBTT's format (add =t to force transition-based acceptance even on
Büchi automata)
- --name=FORMAT
- set the name of the output automaton
- -o, --output=FORMAT
- send output to a file named FORMAT instead of standard output. The first
automaton sent to a file truncates it unless FORMAT starts with
'>>'.
- -q, --quiet
- suppress all normal output
- -s, --spin[=6|c]
- Spin neverclaim (implies --ba). Add letters to select (6) Spin's
6.2.4 style, (c) comments on states
- --stats=FORMAT, --format=FORMAT
- output statistics about the automaton
- %%
- a single %
- %#
- serial number of the formula translated
- %<
- the part of the line before the formula if it comes from a column
extracted from a CSV file
- %>
- the part of the line after the formula if it comes from a column extracted
from a CSV file
- %a
- number of acceptance sets
- %c, %[LETTERS]c
- number of SCCs; you may filter the SCCs to count using the following
LETTERS, possibly concatenated: (a) accepting, (r) rejecting, (c)
complete, (v) trivial, (t) terminal, (w) weak, (iw) inherently weak. Use
uppercase letters to negate them.
- %d
- 1 if the output is deterministic, 0 otherwise
- %e
- number of reachable edges
- %F
- name of the input file
- %f
- formula translated
- %g, %[LETTERS]g
- acceptance condition (in HOA syntax); add brackets to print an acceptance
name instead and LETTERS to tweak the format: (0) no parameters, (a)
accentuated, (b) abbreviated, (d) style used in dot output, (g) no
generalized parameter, (l) recognize Street-like and Rabin-like, (m) no
main parameter, (p) no parity parameter, (o) name unknown acceptance as
'other', (s) shorthand for 'lo0'.
- %h
- the automaton in HOA format on a single line (use %[opt]h to specify
additional options as in --hoa=opt)
- %L
- location in the input file
- %m
- name of the automaton
- %n
- number of nondeterministic states in output
- %p
- 1 if the output is complete, 0 otherwise
- %r
- wall-clock time elapsed in seconds (excluding parsing)
- %R, %[LETTERS]R
- CPU time (excluding parsing), in seconds; Add LETTERS to restrict to(u)
user time, (s) system time, (p) parent process, or (c) children
processes.
- %s
- number of reachable states
- %t
- number of reachable transitions
- %T
- tool used for translation
- %u, %[e]u
- number of states (or [e]dges) with universal branching
- %u, %[LETTER]u
- 1 if the automaton contains some universal branching (or a number of
[s]tates or [e]dges with universal branching)
- %w
- one word accepted by the output automaton
- %x, %[LETTERS]x
- number of atomic propositions declared in the automaton; add LETTERS to
list atomic propositions with (n) no quoting, (s) occasional double-quotes
with C-style escape, (d) double-quotes with C-style escape, (c)
double-quotes with CSV-style escape, (p) between parentheses, any extra
non-alphanumeric character will be used to separate propositions
- --help
- print this help
- --version
- print program version
Mandatory or optional arguments to long options are also mandatory
or optional for any corresponding short options.
Report bugs to <spot@lrde.epita.fr>.
Copyright © 2022 Laboratoire de Recherche et Développement de
l'Epita. License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO
WARRANTY, to the extent permitted by law.
randltl(1), genltl(1), ltlfilt(1), ltl2tgba(1),
ltldo(1)
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc.
|