Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LTLDO(1)			 User Commands			      LTLDO(1)

NAME
       ltldo - run LTL/PSL formulas through other tools

SYNOPSIS
       ltldo [OPTION...] [COMMANDFMT...]

DESCRIPTION
       Run  LTL/PSL formulas through another program, performing conversion of
       input and output	as required.

   Input options:
       -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

   Specifying translators to call:
       --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  follow-
       ing 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  au-
       tomatically.   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  se-
       quence of operators to unabbreviate before outputting the formula.  For
       instance	 %[MW]f	 will  rewrite operators M and W before	outputting 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.

   Parsing of automata:
       --trust-hoa=BOOL
	      If  false,  properties  listed  in HOA files are ignored,	unless
	      they can be easily verified.  If true  (the  default)  any  sup-
	      ported property is trusted.

   Error handling:
       --errors=abort|warn|ignore
	      how to deal with tools returning with non-zero exit codes	or au-
	      tomata that ltldo	cannot parse (default: abort)

       --fail-on-timeout
	      consider timeouts	as errors

   Output selection:
       --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)

   Output format:
       -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-sensi-
	      tive-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 Bchi/co-Bchi automata, (c) force circular nodes,  (C)	 color
	      nodes  with COLOR, (d) show origins when known, (e) force	ellip-
	      tic 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 la-
	      bels (default), (n) show name, (N) hide name, (o)	ordered	 tran-
	      sitions,	(r)  rainbow colors for	acceptance sets, (R) color ac-
	      ceptance sets by Inf/Fin,	 (s)  with  SCCs,  (t)	force  transi-
	      tion-based  acceptance,  (u) hide	true states, (v) vertical lay-
	      out, (y) split universal edges by	color, (+INT) add INT  to  all
	      set  numbers, (<INT) display at most INT states, (#) show	inter-
	      nal 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, (b) create an alias ba-
	      sis if >=2 AP are	used, (i) use implicit labels for complete de-
	      terministic 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 Bchi 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

   Any FORMAT string may use the following interpreted sequences:
       %%     a	single %

       %#     serial number of the formula translated

       %<     the  part	of the line before the formula if it comes from	a col-
	      umn 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  fol-
	      lowing  LETTERS,	possibly  concatenated:	(a) accepting, (r) re-
	      jecting, (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, %[LETTER]e
	      number of	edges (add one LETTER to  select  (r)  reachable  [de-
	      fault], (u) unreachable, (a) all).

       %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

       %l     serial number of the output automaton (0-based)

       %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  re-
	      strict  to(u) user time, (s) system time,	(p) parent process, or
	      (c) children processes.

       %s, %[LETTER]s
	      number of	states (add one	LETTER to select  (r)  reachable  [de-
	      fault], (u) unreachable, (a) all).

       %T     tool used	for translation

       %t, %[LETTER]t
	      number  of  transitions  (add one	LETTER to select (r) reachable
	      [default], (u) unreachable, (a) all).

       %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  num-
	      ber 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) oc-
	      casional 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

   Miscellaneous options:
       --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.

REPORTING BUGS
       Report bugs to <spot@lrde.epita.fr>.

COPYRIGHT
       Copyright (C) 2024 by the Spot authors, see the AUTHORS	File  for  de-
       tails.	License	GPLv3+:	GNU GPL	version	3 or later <http://gnu.org/li-
       censes/gpl.html>.
       This is free software: you are free  to	change	and  redistribute  it.
       There is	NO WARRANTY, to	the extent permitted by	law.

SEE ALSO
       randltl(1), genltl(1), ltlfilt(1), ltl2tgba(1), ltldo(1)

ltldo (spot) 2.12.1		September 2024			      LTLDO(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ltldo&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help