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

FreeBSD Manual Pages

  
 
  

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

NAME
     genaut - generate I-automata from scalable patterns

SYNOPSIS
     genaut [OPTION...]

DESCRIPTION
     Generate I-automata from predefined patterns.

   Pattern selection:
     --cycle-log-nba=RANGE
	    A  cyclic  NBA  with N*N states and log(N) atomic propositions, that
	    should be simplifiable to a cyclic NBA with N states.

     --cycle-onehot-nba=RANGE
	    A cyclic NBA with N*N states and N atomic propositions, that  should
	    be simplifiable to a cyclic NBA with N states.

     --cyclist-proof-dba=RANGE
	    A	DBA   with   N+2   states   that   should  be  included  in  cy-
	    clist-trace-nba=B.

     --cyclist-trace-nba=RANGE
	    An NBA with N+2 states that should include cyclist-proof-dba=B.

     --ks-nca=RANGE
	    A co-BA1/4chi automaton with 2N+1 states for  which  any  equivalent
	    deterministic co-BA1/4chi automaton has at least 2^N/(2N+1) states.

     --l-dsa=RANGE
	    A  deterministic Streett automaton with 4N states with no equivalent
	    deterministic Rabin automaton of less than N! states.

     --l-nba=RANGE
	    A BA1/4chi automaton with 3N+1 states  whose  complementary  Streett
	    automaton needs at least N!  states.

     --m-nba=RANGE
	    An	NBA  with  N+1	states	whose  determinization needs at least N!
	    states.

     RANGE may have one of the following forms: 'INT', 'INT..INT',  or	'..INT'.
     In the latter case, the missing number is assumed to be 1.

   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'  (de-
	    fault), 'unambiguous', 'stutter-invariant', 'stutter-sensitive-exam-
	    ple', '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
	    BA1/4chi/co-BA1/4chi 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|b|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 basis if >=2 AP
	    are used, (i) use implicit labels  for  complete  deterministic  au-
	    tomata,  (s)  prefer state-based acceptance when possible [default],
	    (t) force transition-based acceptance, (m)	mix  state  and  transi-
	    tion-based	acceptance, (k) use state labels when possible, (l) sin-
	    gle-line output, (v) verbose properties

     --lbtt[=t]
	    LBTT's format (add =t to force transition-based acceptance	even  on
	    BA1/4chi 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 %

     %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, %[LETTER]e
	    number  of	edges (add one LETTER to select (r) reachable [default],
	    (u) unreachable, (a) all).

     %F     the name of the pattern

     %g, %[LETTERS]g
	    acceptance condition (in HOA syntax); add brackets to print  an  ac-
	    ceptance  name instead and LETTERS to tweak the format: (0) no para-
	    meters, (a) accentuated, (b) abbreviated, (d) style used in dot out-
	    put, (g) no generalized parameter, (l) recognize Street-like and Ra-
	    bin-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     the argument of the pattern

     %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 restrict 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  [default],
	    (u) unreachable, (a) all).

     %t, %[LETTER]t
	    number  of	transitions (add one LETTER to select (r) reachable [de-
	    fault], (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 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  LET-
	    TERS 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  paren-
	    theses,  any  extra non-alphanumeric character will be used to sepa-
	    rate propositions

   Miscellaneous options:
     --help
	    print this help

     --version
	    print program version

     Mandatory or optional arguments to long options are also mandatory  or  op-
     tional for any corresponding short options.

BIBLIOGRAPHY
     Prefixes used in pattern names refer to the following papers:

     ks     D.	Kuperberg,  M.	Skrzypczak: On Determinisation of Good-for-Games
	    Automata.  Proceedings of ICALP'15.

     l	    C. LA<paragraph>ding: Optimal Bounds for  Transformations  of  I-Au-
	    tomata.  Proceedings of FSTTCS'99.

     m	    M.	Michel: Complementation is more difficult with automata on infi-
	    nite words.  CNET, Paris (1988).  Unpublished manuscript.

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

COPYRIGHT
     Copyright (C) 2025 by the Spot authors, see the AUTHORS File  for	details.
     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
     autfilt(1), genltl(1), randaut(1), randltl(1)

genaut (spot) 2.14.5		  January 2026			       GENAUT(1)

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

home | help