bin: add support for -b/--buchi
* bin/common_post.cc, bin/randaut.cc: Implement -b/--buchi. Also add --sba as alias for -B, and --gba as alias for --tgba. * NEWS: Document those changes. * doc/org/ltl2tgba.org, doc/org/oaut.org: Adjust documentation. * tests/core/ltl2tgba2.test, tests/core/ltlcross2.test, tests/core/randaut.test: Add more tests. * tests/core/sbacc.test: --sbacc cannot be abbreviated as --sba anymore.
This commit is contained in:
parent
7c6b35313a
commit
8785f5a74b
9 changed files with 520 additions and 479 deletions
19
NEWS
19
NEWS
|
|
@ -18,6 +18,19 @@ New in spot 2.9.5.dev (not yet released)
|
|||
Choices are "ITE" for the if-then-else normal form or "ISOP" for
|
||||
relying on irreducible sums of products.
|
||||
|
||||
- ltl2tgba, autfilt, dstar2tgba, and randaut learned a --buchi
|
||||
option, or -b for short. This output Büchi automata without
|
||||
forcing state-based acceptance.
|
||||
|
||||
The following aliases have also been added for consistency:
|
||||
--gba is an alias for --tgba, because the "t" of --tgba is
|
||||
never forced.
|
||||
--sba is an alias for -B/--ba, because -B really
|
||||
implies -S and that is not clear from --ba.
|
||||
As a consequence of the introduction of --sba, the option
|
||||
--sbacc (an alias for --state-based-acceptance) cannot be
|
||||
abbreviated as --sba anymore.
|
||||
|
||||
Library:
|
||||
|
||||
- Historically, Spot labels automata by Boolean formulas over
|
||||
|
|
@ -67,10 +80,14 @@ New in spot 2.9.5.dev (not yet released)
|
|||
|
||||
can be replaced by
|
||||
|
||||
postprocessor::set_type(postprocessor::BA)
|
||||
postprocessor::set_type(postprocessor::GeneralizedBuchi)
|
||||
|
||||
and
|
||||
|
||||
postprocessor::set_type(postprocessor::BA)
|
||||
|
||||
by
|
||||
|
||||
postprocessor::set_type(postprocessor::Buchi)
|
||||
postprocessor::set_pref(postprocessor::Small
|
||||
| postprocessor::SBAcc)
|
||||
|
|
|
|||
|
|
@ -50,9 +50,15 @@ static constexpr const argp_option options[] =
|
|||
{ "generic", 'G', nullptr, 0,
|
||||
"any acceptance condition is allowed", 0 },
|
||||
{ "tgba", OPT_TGBA, nullptr, 0,
|
||||
"Transition-based Generalized Büchi Automaton (default)", 0 },
|
||||
{ "ba", 'B', nullptr, 0,
|
||||
"Büchi Automaton (implies -S)", 0 },
|
||||
"automaton with Generalized Büchi acceptance (default)", 0 },
|
||||
{ "gba", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "sba", 'B', nullptr, 0,
|
||||
"state-based Büchi Automaton (same as -S -b)", 0 },
|
||||
// Historical name of the --sba option.
|
||||
{ "ba", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "buchi", 'b', nullptr, 0,
|
||||
"automaton with Büchi acceptance", 0 },
|
||||
{ "Buchi", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "monitor", 'M', nullptr, 0, "Monitor (accepts all finite prefixes "
|
||||
"of the given property)", 0 },
|
||||
{ "complete", 'C', nullptr, 0, "output a complete automaton", 0 },
|
||||
|
|
@ -113,9 +119,15 @@ static const argp_option options_disabled[] =
|
|||
{ "generic", 'G', nullptr, 0,
|
||||
"any acceptance is allowed (default)", 0 },
|
||||
{ "tgba", OPT_TGBA, nullptr, 0,
|
||||
"Transition-based Generalized Büchi Automaton", 0 },
|
||||
{ "ba", 'B', nullptr, 0,
|
||||
"Büchi Automaton (with state-based acceptance)", 0 },
|
||||
"automaton with Generalized Büchi acceptance", 0 },
|
||||
{ "gba", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "sba", 'B', nullptr, 0,
|
||||
"state-based Büchi Automaton (same as -S -b)", 0 },
|
||||
// Historical name of the --sba option.
|
||||
{ "ba", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "buchi", 'b', nullptr, 0,
|
||||
"automaton with Büchi acceptance", 0 },
|
||||
{ "Buchi", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "monitor", 'M', nullptr, 0, "Monitor (accepts all finite prefixes "
|
||||
"of the given property)", 0 },
|
||||
{ "complete", 'C', nullptr, 0, "output a complete automaton", 0 },
|
||||
|
|
@ -164,6 +176,10 @@ parse_opt_post(int key, char* arg, struct argp_state*)
|
|||
pref = spot::postprocessor::Any;
|
||||
pref_set = true;
|
||||
break;
|
||||
case 'b':
|
||||
type = spot::postprocessor::Buchi;
|
||||
colored = spot::postprocessor::Any;
|
||||
break;
|
||||
case 'B':
|
||||
type = spot::postprocessor::Buchi;
|
||||
colored = spot::postprocessor::Any;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
// -*- coding: utf-8 -*-
|
||||
// Copyright (C) 2012-2016, 2018-2019 Laboratoire de Recherche et
|
||||
// Copyright (C) 2012-2016, 2018-2020 Laboratoire de Recherche et
|
||||
// Développement de l'Epita (LRDE).
|
||||
//
|
||||
// This file is part of Spot, a model checking library.
|
||||
|
|
@ -81,8 +81,14 @@ static const argp_option options[] =
|
|||
"probability that an edge belongs to one acceptance set (0.2)", 0 },
|
||||
{ "automata", 'n', "INT", 0, "number of automata to output (1)\n"\
|
||||
"use a negative value for unbounded generation", 0 },
|
||||
{ "ba", 'B', nullptr, 0,
|
||||
"build a Buchi automaton (implies --acceptance=Buchi --state-acc)", 0 },
|
||||
{ "sba", 'B', nullptr, 0,
|
||||
"build a state-based Buchi automaton "
|
||||
"(implies --acceptance=Buchi --state-acc)", 0 },
|
||||
// historical name for --sba
|
||||
{ "ba", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "buchi", 'b', nullptr, 0,
|
||||
"build a Büchi automaton (same as --acceptance=Buchi)", 0 },
|
||||
{ "Buchi", 0, nullptr, OPTION_ALIAS, nullptr, 0 },
|
||||
{ "colored", OPT_COLORED, nullptr, 0,
|
||||
"build an automaton in which each edge (or state if combined with "
|
||||
"-S) belong to a single acceptance set", 0 },
|
||||
|
|
@ -161,10 +167,10 @@ static bool gba_wanted = false;
|
|||
static std::unique_ptr<unique_aut_t> opt_uniq = nullptr;
|
||||
|
||||
static void
|
||||
ba_options()
|
||||
ba_options(bool sbacc)
|
||||
{
|
||||
opt_acc_sets = { 1, 1 };
|
||||
opt_state_acc = true;
|
||||
opt_state_acc = sbacc;
|
||||
}
|
||||
|
||||
// Range should have the form 12..34 or 12:34, maybe with spaces. The
|
||||
|
|
@ -209,8 +215,12 @@ parse_opt(int key, char* arg, struct argp_state* as)
|
|||
generic_wanted = true;
|
||||
}
|
||||
break;
|
||||
case 'b':
|
||||
ba_options(false);
|
||||
ba_wanted = true;
|
||||
break;
|
||||
case 'B':
|
||||
ba_options();
|
||||
ba_options(true);
|
||||
ba_wanted = true;
|
||||
break;
|
||||
case 'e':
|
||||
|
|
@ -300,20 +310,22 @@ main(int argc, char** argv)
|
|||
error(2, 0,
|
||||
"--spin implies --ba so should not be used with --acceptance");
|
||||
if (generic_wanted && ba_wanted)
|
||||
error(2, 0, "--acceptance and --ba may not be used together");
|
||||
error(2, 0, "--acceptance and %s may not be used together",
|
||||
opt_state_acc ? "--ba" : "--buchi");
|
||||
|
||||
if (automaton_format == Spin && opt_acc_sets.max > 1)
|
||||
error(2, 0, "--spin is incompatible with --acceptance=%d..%d",
|
||||
opt_acc_sets.min, opt_acc_sets.max);
|
||||
if (ba_wanted && opt_acc_sets.min != 1 && opt_acc_sets.max != 1)
|
||||
error(2, 0, "--ba is incompatible with --acceptance=%d..%d",
|
||||
error(2, 0, "%s is incompatible with --acceptance=%d..%d",
|
||||
opt_state_acc ? "--ba" : "--buchi",
|
||||
opt_acc_sets.min, opt_acc_sets.max);
|
||||
if (ba_wanted && generic_wanted)
|
||||
error(2, 0,
|
||||
"--ba is incompatible with --acceptance=%s", opt_acceptance);
|
||||
|
||||
if (automaton_format == Spin)
|
||||
ba_options();
|
||||
ba_options(true);
|
||||
|
||||
if (opt_colored && opt_acc_sets.min == -1 && !generic_wanted)
|
||||
error(2, 0, "--colored requires at least one acceptance set; "
|
||||
|
|
|
|||
|
|
@ -15,8 +15,10 @@ Those options will be covered in more detail below, but here is
|
|||
a quick summary:
|
||||
|
||||
- =--tgba= (the default) outputs Transition-based Generalized Büchi
|
||||
Automata
|
||||
- =--ba= (or =-B=) outputs state-based Büchi automata
|
||||
Automata,
|
||||
= =--buchi= (or =-b=) outputs transition-based Büchi automata,
|
||||
- =--sba= (or =-B=) outputs state-based Büchi automata
|
||||
(=--ba= is a historical alias for this option)
|
||||
- =--monitor= (or =-M=) outputs monitors
|
||||
- =--generic --deterministic= (or =-DG=) will do whatever it takes to
|
||||
produce a deterministic automaton, and may use any acceptance
|
||||
|
|
@ -24,8 +26,19 @@ a quick summary:
|
|||
- =--parity --deterministic= (or =-DP=) will produce a deterministic
|
||||
automaton with parity acceptance.
|
||||
|
||||
(The latter two can also be used with =--deterministic=, but that is
|
||||
less frequent.)
|
||||
The latter two can also be used without =--deterministic=, but that is
|
||||
less frequent.
|
||||
|
||||
Except for =-B= which forces state-based acceptance, these options
|
||||
build transition-based automata by default. Internally, Spot only
|
||||
supports transition-based automata. However, while transition-based
|
||||
automata can be smaller then their state-based counterpart, there are
|
||||
many cases where transition-based acceptance does not bring any benefits.
|
||||
|
||||
In case where it is detected that the transition-based automaton looks
|
||||
like a state-based automaton, the different automaton printers will
|
||||
usually present the result as an automaton with state-based acceptance
|
||||
for simplicity.
|
||||
|
||||
* TGBA and BA
|
||||
|
||||
|
|
@ -57,11 +70,11 @@ State: 1
|
|||
--END--
|
||||
#+end_SRC
|
||||
|
||||
Actually, because =ltl2tgba= is often used with a single formula
|
||||
passed on the command line, the =-f= option can be omitted and any
|
||||
command-line parameter that is not the argument of some option will be
|
||||
assumed to be a formula to translate (this differs from [[file:ltlfilt.org][=ltlfilt=]],
|
||||
where such parameters are assumed to be filenames).
|
||||
As =ltl2tgba= is often used with a single formula passed on the
|
||||
command line, the =-f= option can be omitted and any command-line
|
||||
parameter that is not the argument of some option will be assumed to
|
||||
be a formula to translate (this differs from [[file:ltlfilt.org][=ltlfilt=]], where such
|
||||
parameters are assumed to be filenames).
|
||||
|
||||
=ltl2tgba= honors the [[file:oaut.org][common options for selecting the output format]].
|
||||
The default output format, as shown above, is the [[file:hoa.org][HOA]] format, as this
|
||||
|
|
@ -69,7 +82,7 @@ can easily be piped to other tools.
|
|||
|
||||
To convert the automaton into a picture, or into vectorial format, use
|
||||
=--dot= or =-d= to request [[http://www.graphviz.org/][GraphViz output]] and process the result with
|
||||
=dot= or =dotty=. Typically, you could get a =pdf= of this TGBA using
|
||||
=dot= or =dotty=. Typically, one can get a =pdf= of this TGBA using
|
||||
#+BEGIN_SRC sh :exports code
|
||||
ltl2tgba "Fa & GFb" -d | dot -Tpdf > tgba.pdf
|
||||
#+END_SRC
|
||||
|
|
@ -92,10 +105,10 @@ $txt
|
|||
|
||||
Characters like ⓿, ❶, etc. denotes the acceptance sets a transition
|
||||
belongs to. In this case, there is only one acceptance set, called
|
||||
=0=, containing a single transition. You may have many transitions in
|
||||
the same acceptance set, and a transition may also belong to multiple
|
||||
=0=, containing a single transition. An acceptance set can contains
|
||||
multiple transitions, and a transition may also belong to multiple
|
||||
acceptance sets. An infinite path through this automaton is accepting
|
||||
iff it visit each acceptance set infinitely often. Therefore, in the
|
||||
iff it visits each acceptance set infinitely often. Therefore, in the
|
||||
above example, any accepted path will /necessarily/ leave the initial
|
||||
state after a finite amount of steps, and then it will verify the
|
||||
property =b= infinitely often. It is also possible that an automaton
|
||||
|
|
@ -137,99 +150,66 @@ these acceptance sets ensures that atomic propositions =a= and =b= must
|
|||
be true infinitely often.
|
||||
|
||||
A Büchi automaton for the previous formula can be obtained with the
|
||||
=-B= option:
|
||||
=-B= or =-b= options, depending on whether we insist on have
|
||||
state-based acceptance (=-B=) or if transition-based acceptance is OK
|
||||
(=-b=).
|
||||
|
||||
#+NAME: dotex2tba
|
||||
#+BEGIN_SRC sh :exports code
|
||||
ltl2tgba -b 'GFa & GFb' -d
|
||||
#+END_SRC
|
||||
#+BEGIN_SRC dot :file dotex2tba.svg :var txt=dotex2tba :exports results
|
||||
$txt
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS:
|
||||
[[file:dotex2tba.svg]]
|
||||
|
||||
#+NAME: dotex2ba
|
||||
#+BEGIN_SRC sh :exports code
|
||||
ltl2tgba -B 'GFa & GFb' -d
|
||||
#+END_SRC
|
||||
#+RESULTS: dotex2ba
|
||||
#+begin_example
|
||||
digraph G {
|
||||
rankdir=LR
|
||||
node [shape="circle"]
|
||||
fontname="Lato"
|
||||
node [fontname="Lato"]
|
||||
edge [fontname="Lato"]
|
||||
node[style=filled, fillcolor="#ffffa0"] edge[arrowhead=vee, arrowsize=.7]
|
||||
I [label="", style=invis, width=0]
|
||||
I -> 0
|
||||
0 [label="0", peripheries=2]
|
||||
0 -> 0 [label=<a & b>]
|
||||
0 -> 1 [label=<!b>]
|
||||
0 -> 2 [label=<!a & b>]
|
||||
1 [label="1"]
|
||||
1 -> 0 [label=<a & b>]
|
||||
1 -> 1 [label=<!b>]
|
||||
1 -> 2 [label=<!a & b>]
|
||||
2 [label="2"]
|
||||
2 -> 0 [label=<a>]
|
||||
2 -> 2 [label=<!a>]
|
||||
}
|
||||
#+end_example
|
||||
|
||||
#+BEGIN_SRC dot :file dotex2ba.svg :var txt=dotex2ba :exports results
|
||||
$txt
|
||||
#+END_SRC
|
||||
#+RESULTS:
|
||||
[[file:dotex2ba.svg]]
|
||||
|
||||
Although accepting states in the Büchi automaton are (traditionally)
|
||||
pictured with double-lines, internally this automaton is still handled
|
||||
as a TGBA with a single acceptance set such that the transitions
|
||||
leaving the state are either all accepting, or all non-accepting. You
|
||||
can see this underlying TGBA if you pass the =--dot=t= option (the =t=
|
||||
requests the use of transition-based acceptance as it is done
|
||||
internally):
|
||||
Although accepting states in state-based Büchi automaton are
|
||||
(traditionally) pictured with double-lines, internally this automaton
|
||||
is still handled as a TGBA with a single acceptance set such that the
|
||||
transitions leaving the state are either all accepting, or all
|
||||
non-accepting. The underlying TGBA can be seen by passing the
|
||||
=--dot=t= option (the =t= requests the use of transition-based
|
||||
acceptance, as it is done internally):
|
||||
|
||||
#+BEGIN_SRC sh :exports code
|
||||
ltl2tgba --dot=t -B 'GFa & GFb'
|
||||
ltl2tgba -B 'GFa & GFb' --dot=t
|
||||
#+END_SRC
|
||||
|
||||
#+NAME: dotex2ba-t
|
||||
#+BEGIN_SRC sh :exports none
|
||||
ltl2tgba --dot=.t -B 'GFa & GFb'
|
||||
ltl2tgba -B 'GFa & GFb' --dot=.t
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS: dotex2ba-t
|
||||
#+begin_example
|
||||
digraph G {
|
||||
rankdir=LR
|
||||
fontname="Lato"
|
||||
node [fontname="Lato"]
|
||||
edge [fontname="Lato"]
|
||||
node[style=filled, fillcolor="#ffffa0"] edge[arrowhead=vee, arrowsize=.7]
|
||||
I [label="", style=invis, width=0]
|
||||
I -> 0
|
||||
0 [label="0"]
|
||||
0 -> 0 [label=<a & b<br/><font color="#5DA5DA">⓿</font>>]
|
||||
0 -> 1 [label=<!b<br/><font color="#5DA5DA">⓿</font>>]
|
||||
0 -> 2 [label=<!a & b<br/><font color="#5DA5DA">⓿</font>>]
|
||||
1 [label="1"]
|
||||
1 -> 0 [label=<a & b>]
|
||||
1 -> 1 [label=<!b>]
|
||||
1 -> 2 [label=<!a & b>]
|
||||
2 [label="2"]
|
||||
2 -> 0 [label=<a>]
|
||||
2 -> 2 [label=<!a>]
|
||||
}
|
||||
#+end_example
|
||||
|
||||
#+BEGIN_SRC dot :file dotex2ba-t.svg :var txt=dotex2ba-t :exports results
|
||||
$txt
|
||||
#+END_SRC
|
||||
#+RESULTS:
|
||||
[[file:dotex2ba-t.svg]]
|
||||
|
||||
Using option =-S= instead of option =-B= you can obtain generalized
|
||||
Büchi automata with state-based acceptance. Here is the same formula
|
||||
as above, for comparison.
|
||||
|
||||
Option =-B= is in fact a shorthand for =-b -S=, where =-b= requests
|
||||
Büchi acceptance, and =-S= requests state-based acceptance.
|
||||
|
||||
Calling =ltl2tgba -S= will build an automaton with generalized Büchi
|
||||
acceptance (the default for =ltltgba=), but force state-based
|
||||
acceptance on the output.
|
||||
|
||||
Here is the same formula as above, for comparison.
|
||||
|
||||
#+NAME: dotex2gba
|
||||
#+BEGIN_SRC sh :exports code
|
||||
ltl2tgba -S 'GFa & GFb' -d
|
||||
#+END_SRC
|
||||
|
||||
#+BEGIN_SRC dot :file dotex2gba.svg :var txt=dotex2gba :exports results
|
||||
$txt
|
||||
#+END_SRC
|
||||
|
|
@ -254,23 +234,32 @@ ltl2tgba --help | sed -n '/Output format:/,/^$/p' | sed '1d;$d'
|
|||
--lbtt or --spin)
|
||||
--check[=PROP] test for the additional property PROP and output
|
||||
the result in the HOA format (implies -H). PROP
|
||||
may be any prefix of 'all' (default),
|
||||
'unambiguous', 'stutter-invariant', or
|
||||
'strength'.
|
||||
-d, --dot[=1|a|b|B|c|e|f(FONT)|h|n|N|o|r|R|s|t|v|+INT]
|
||||
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|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) acceptance display, (b)
|
||||
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, (e) force elliptic nodes, (f(FONT)) use
|
||||
FONT, (h) horizontal layout, (v) vertical layout,
|
||||
(n) with name, (N) without 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,
|
||||
(+INT) add INT to all set numbers
|
||||
-H, --hoaf[=i|l|m|s|t|v] Output the automaton in HOA format (default). Add
|
||||
letters to select (i) use implicit labels for
|
||||
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, (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
|
||||
|
|
@ -287,40 +276,17 @@ ltl2tgba --help | sed -n '/Output format:/,/^$/p' | sed '1d;$d'
|
|||
-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 output statistics about the automaton
|
||||
--stats=FORMAT, --format=FORMAT
|
||||
output statistics about the automaton
|
||||
#+end_example
|
||||
|
||||
Option =-8= can be used to improve the readability of the output
|
||||
if your system can display UTF-8 correctly.
|
||||
on systems that can display UTF-8 correctly.
|
||||
|
||||
#+NAME: dotex2ba8
|
||||
#+BEGIN_SRC sh :exports code
|
||||
ltl2tgba -B8 "GFa & GFb" -d
|
||||
ltl2tgba -8B "GFa & GFb" -d
|
||||
#+END_SRC
|
||||
#+RESULTS: dotex2ba8
|
||||
#+begin_example
|
||||
digraph G {
|
||||
rankdir=LR
|
||||
fontname="Lato"
|
||||
node [fontname="Lato"]
|
||||
edge [fontname="Lato"]
|
||||
node[style=filled, fillcolor="#ffffa0"] edge[arrowhead=vee, arrowsize=.7]
|
||||
I [label="", style=invis, width=0]
|
||||
I -> 0
|
||||
0 [label=<0<br/><font color="#5DA5DA">⓿</font>>]
|
||||
0 -> 0 [label=<a∧b>]
|
||||
0 -> 1 [label=<b̅>]
|
||||
0 -> 2 [label=<a̅∧b>]
|
||||
1 [label=<1>]
|
||||
1 -> 0 [label=<a∧b>]
|
||||
1 -> 1 [label=<b̅>]
|
||||
1 -> 2 [label=<a̅∧b>]
|
||||
2 [label=<2>]
|
||||
2 -> 0 [label=<a>]
|
||||
2 -> 2 [label=<a̅>]
|
||||
}
|
||||
#+end_example
|
||||
|
||||
#+BEGIN_SRC dot :file dotex2ba8.svg :var txt=dotex2ba8 :exports results
|
||||
$txt
|
||||
#+END_SRC
|
||||
|
|
|
|||
|
|
@ -297,48 +297,67 @@ represented in the first version.
|
|||
|
||||
* LBTT output
|
||||
|
||||
The [[http://www.tcs.hut.fi/Software/lbtt/doc/html/Format-for-automata.html][LBTT]] output has two flavors: state-based (which is used to output
|
||||
Büchi automata or monitors) or transition-based (for TGBA).
|
||||
The [[http://www.tcs.hut.fi/Software/lbtt/doc/html/Format-for-automata.html][LBTT]] output has two flavors: state-based or transition-based. The
|
||||
transition flavor can be recognized by the present of a =t= after the
|
||||
second number. (The first number is the number of states, while the
|
||||
second number is the number of acceptance sets used.)
|
||||
|
||||
Compare the following transition-based and state-based Büchi automata
|
||||
for =GFp0=:
|
||||
|
||||
#+BEGIN_SRC sh
|
||||
ltl2tgba --ba --lbtt 'p0 U p1'
|
||||
ltl2tgba -b --lbtt 'GFp0'
|
||||
#+END_SRC
|
||||
#+RESULTS:
|
||||
: 1 1t
|
||||
: 0 1
|
||||
: 0 -1 ! p0
|
||||
: 0 0 -1 p0
|
||||
: -1
|
||||
|
||||
#+BEGIN_SRC sh
|
||||
ltl2tgba -B --lbtt 'GFp0'
|
||||
#+END_SRC
|
||||
#+RESULTS:
|
||||
: 2 1
|
||||
: 0 1 -1
|
||||
: 1 p1
|
||||
: 0 & p0 ! p1
|
||||
: 0 1 0 -1
|
||||
: 0 p0
|
||||
: 1 ! p0
|
||||
: -1
|
||||
: 1 0 0 -1
|
||||
: 1 t
|
||||
: 1 0 -1
|
||||
: 0 p0
|
||||
: 1 ! p0
|
||||
: -1
|
||||
|
||||
If you want to request transition-based output even for Büchi automata,
|
||||
use =--lbtt=t=.
|
||||
Since even state-based automata are stored as transition-based
|
||||
automata by Spot, it is also possible to force transition-based
|
||||
LBTT output to be used even if the automaton declares itself as
|
||||
state-based. This is done by passing =--lbtt=t=.
|
||||
|
||||
#+BEGIN_SRC sh
|
||||
ltl2tgba --ba --lbtt=t 'p0 U p1'
|
||||
ltl2tgba -B --lbtt=t 'GFp0'
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS:
|
||||
: 2 1t
|
||||
: 0 1
|
||||
: 1 -1 p1
|
||||
: 0 -1 & p0 ! p1
|
||||
: 0 0 -1 p0
|
||||
: 1 0 -1 ! p0
|
||||
: -1
|
||||
: 1 0
|
||||
: 1 0 -1 t
|
||||
: 0 -1 p0
|
||||
: 1 -1 ! p0
|
||||
: -1
|
||||
|
||||
Note that the [[http://www.tcs.hut.fi/Software/lbtt/doc/html/Format-for-automata.html][LBTT]] output generalizes the format output by [[http://www.tcs.hut.fi/Software/maria/tools/lbt/][LBT]] with
|
||||
support for transition-based acceptance. Both formats however are
|
||||
restricted to atomic propositions of the form =p0=, =p1=, etc... In
|
||||
case other atomic propositions are used, Spot output them in double
|
||||
quotes. This other extension of the format is also supported by
|
||||
quotes. This second extension of the format was introduced by
|
||||
[[http://www.ltl2dstar.de/][ltl2dstar]].
|
||||
|
||||
#+BEGIN_SRC sh
|
||||
ltl2tgba --ba --lbtt 'a U b'
|
||||
ltl2tgba -B --lbtt 'a U b'
|
||||
#+END_SRC
|
||||
|
||||
#+RESULTS:
|
||||
|
|
|
|||
|
|
@ -33,332 +33,336 @@ genltl --dac --eh --sb --hkrss --p --and-fg=32 --format=%F,%L,%f >pos
|
|||
|
||||
ltl2tgba -Fformulas/3 --stats='%<,%f, %s,%t' |
|
||||
ltl2tgba -D -F-/3 --stats='%<,%f,%>, %s,%t' |
|
||||
ltl2tgba -b -F-/3 --stats='%<,%f,%>, %s,%t' |
|
||||
ltl2tgba -bD -F-/3 --stats='%<,%f,%>, %s,%t' |
|
||||
ltl2tgba -B -F-/3 --stats='%<,%f,%>, %s,%t' |
|
||||
ltl2tgba -BD -F-/3 --stats='%<,%>, %s,%t' > output
|
||||
|
||||
fg42=2,4294967298
|
||||
gf42=1,4294967296
|
||||
cat >expected <<EOF
|
||||
dac-patterns,1, 1,1, 1,1, 1,1, 1,1
|
||||
dac-patterns,2, 3,10, 3,10, 3,10, 3,10
|
||||
dac-patterns,3, 2,5, 2,5, 2,5, 2,5
|
||||
dac-patterns,4, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,5, 2,13, 2,13, 2,13, 2,13
|
||||
dac-patterns,6, 2,4, 2,4, 2,4, 2,4
|
||||
dac-patterns,7, 2,6, 2,6, 2,6, 2,6
|
||||
dac-patterns,8, 3,12, 3,12, 3,12, 3,12
|
||||
dac-patterns,9, 2,12, 2,12, 2,12, 2,12
|
||||
dac-patterns,10, 2,12, 2,12, 2,12, 2,12
|
||||
dac-patterns,11, 5,9, 5,9, 5,9, 5,9
|
||||
dac-patterns,12, 7,26, 7,26, 7,26, 7,26
|
||||
dac-patterns,13, 6,22, 6,22, 6,22, 6,22
|
||||
dac-patterns,14, 7,52, 7,52, 7,52, 7,52
|
||||
dac-patterns,15, 6,46, 6,46, 6,46, 6,46
|
||||
dac-patterns,16, 1,1, 1,1, 1,1, 1,1
|
||||
dac-patterns,17, 3,10, 3,10, 3,10, 3,10
|
||||
dac-patterns,18, 2,5, 2,5, 2,5, 2,5
|
||||
dac-patterns,19, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,20, 2,13, 2,13, 2,13, 2,13
|
||||
dac-patterns,21, 2,7, 2,7, 2,7, 2,7
|
||||
dac-patterns,22, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,23, 5,40, 5,40, 5,40, 5,40
|
||||
dac-patterns,24, 3,40, 3,40, 3,40, 3,40
|
||||
dac-patterns,25, 2,29, 2,29, 2,29, 2,29
|
||||
dac-patterns,26, 2,8, 2,8, 2,8, 2,8
|
||||
dac-patterns,27, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,28, 3,24, 3,24, 3,24, 3,24
|
||||
dac-patterns,29, 3,40, 3,40, 3,40, 3,40
|
||||
dac-patterns,30, 3,40, 3,40, 3,40, 3,40
|
||||
dac-patterns,31, 3,18, 3,18, 3,18, 3,18
|
||||
dac-patterns,32, 4,56, 4,56, 4,56, 4,56
|
||||
dac-patterns,33, 4,48, 4,48, 4,48, 4,48
|
||||
dac-patterns,34, 4,112, 4,112, 4,112, 4,112
|
||||
dac-patterns,35, 3,78, 3,78, 3,78, 3,78
|
||||
dac-patterns,36, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,37, 4,56, 4,56, 4,56, 4,56
|
||||
dac-patterns,38, 4,56, 4,56, 4,56, 4,56
|
||||
dac-patterns,39, 4,112, 4,112, 4,112, 4,112
|
||||
dac-patterns,40, 3,88, 3,88, 3,88, 3,88
|
||||
dac-patterns,41, 4,32, 4,32, 4,32, 4,32
|
||||
dac-patterns,42, 6,96, 6,96, 6,96, 6,96
|
||||
dac-patterns,43, 5,80, 5,80, 5,80, 5,80
|
||||
dac-patterns,44, 10,300, 10,300, 13,372, 13,372
|
||||
dac-patterns,45, 10,296, 10,296, 9,280, 9,280
|
||||
dac-patterns,46, 4,41, 4,41, 5,50, 5,50
|
||||
dac-patterns,47, 4,52, 4,52, 4,52, 4,52
|
||||
dac-patterns,48, 3,38, 3,38, 4,50, 4,50
|
||||
dac-patterns,49, 4,104, 4,104, 4,104, 4,104
|
||||
dac-patterns,50, 6,164, 6,164, 7,188, 7,188
|
||||
dac-patterns,51, 4,65, 4,65, 5,78, 5,78
|
||||
dac-patterns,52, 4,104, 4,104, 4,104, 4,104
|
||||
dac-patterns,53, 3,62, 3,62, 4,78, 4,78
|
||||
dac-patterns,54, 4,208, 4,208, 4,208, 4,208
|
||||
dac-patterns,55, 6,292, 6,292, 7,324, 7,324
|
||||
eh-patterns,1, 2,10, 2,10, 2,10, 2,10
|
||||
eh-patterns,2, 3,44, 4,55, 3,44, 4,55
|
||||
eh-patterns,3, 7,832, 8,912, 7,832, 8,912
|
||||
eh-patterns,4, 2,8, 2,8, 2,8, 2,8
|
||||
eh-patterns,5, 4,32, 4,32, 4,32, 4,32
|
||||
eh-patterns,6, 3,24, 3,24, 3,24, 3,24
|
||||
eh-patterns,7, 3,14, 3,14, 4,18, 4,18
|
||||
eh-patterns,8, 2,13, 2,13, 2,13, 2,13
|
||||
eh-patterns,9, 1,8, 1,8, 4,32, 4,32
|
||||
eh-patterns,10, 1,32, 1,32, 6,192, 6,192
|
||||
eh-patterns,11, 2,15, 2,15, 2,15, 2,15
|
||||
eh-patterns,12, 4,60, 4,60, 4,60, 4,60
|
||||
sb-patterns,1, 2,7, 2,7, 2,7, 2,7
|
||||
sb-patterns,2, 3,21, 3,21, 3,21, 3,21
|
||||
sb-patterns,3, 3,16, 3,16, 3,16, 3,16
|
||||
sb-patterns,4, 3,14, 3,14, 4,18, 4,18
|
||||
sb-patterns,5, 3,13, 3,13, 3,13, 3,13
|
||||
sb-patterns,6, 4,11, 4,11, 4,11, 4,11
|
||||
sb-patterns,7, 3,7, 3,7, 3,7, 3,7
|
||||
sb-patterns,8, 2,7, 2,7, 3,9, 3,9
|
||||
sb-patterns,9, 3,10, 3,10, 5,14, 5,14
|
||||
sb-patterns,10, 2,7, 2,7, 2,7, 2,7
|
||||
sb-patterns,11, 1,1, 1,1, 1,1, 1,1
|
||||
sb-patterns,12, 1,1, 1,1, 1,1, 1,1
|
||||
sb-patterns,13, 2,8, 2,8, 2,8, 2,8
|
||||
sb-patterns,14, 2,8, 2,8, 2,8, 2,8
|
||||
sb-patterns,16, 3,24, 3,24, 3,24, 3,24
|
||||
sb-patterns,17, 1,4, 1,4, 3,12, 3,12
|
||||
sb-patterns,18, 1,4, 1,4, 3,12, 3,12
|
||||
sb-patterns,19, 4,8, 4,8, 4,8, 4,8
|
||||
sb-patterns,20, 5,28, 5,28, 5,28, 5,28
|
||||
sb-patterns,21, 4,32, 4,32, 6,48, 6,48
|
||||
sb-patterns,22, 3,7, 3,7, 3,7, 3,7
|
||||
sb-patterns,23, 6,58, 6,58, 6,58, 6,58
|
||||
sb-patterns,24, 4,16, 4,16, 4,16, 4,16
|
||||
sb-patterns,25, 3,10, 3,10, 3,10, 3,10
|
||||
sb-patterns,26, 1,1, 1,1, 1,1, 1,1
|
||||
sb-patterns,27, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,1, 1,2, 1,2, 3,6, 3,6
|
||||
hkrss-patterns,2, 1,2, 1,2, 3,6, 3,6
|
||||
hkrss-patterns,3, 4,16, 4,16, 5,20, 5,20
|
||||
hkrss-patterns,4, 9,400, 16,256, 9,400, 17,272
|
||||
hkrss-patterns,6, 1,2, 1,2, 3,6, 3,6
|
||||
hkrss-patterns,7, 2,8, 2,8, 2,8, 2,8
|
||||
hkrss-patterns,8, 1,1, 1,1, 1,1, 1,1
|
||||
hkrss-patterns,9, 2,8, 2,8, 2,8, 2,8
|
||||
hkrss-patterns,11, 2,16, 2,16, 2,16, 2,16
|
||||
hkrss-patterns,12, 2,32, 2,32, 2,32, 2,32
|
||||
hkrss-patterns,13, 16,4096, 16,4096, 40,10240, 40,10240
|
||||
hkrss-patterns,14, 1,1, 1,1, 1,1, 1,1
|
||||
hkrss-patterns,15, 1,3, 1,3, 1,3, 1,3
|
||||
hkrss-patterns,16, 1,3, 1,3, 1,3, 1,3
|
||||
hkrss-patterns,17, 1,3, 1,3, 1,3, 1,3
|
||||
hkrss-patterns,18, 1,6, 1,6, 1,6, 1,6
|
||||
hkrss-patterns,19, 1,25, 1,25, 1,25, 1,25
|
||||
hkrss-patterns,20, 1,31, 1,31, 1,31, 1,31
|
||||
hkrss-patterns,21, 2,1024, 2,1024, 2,1024, 2,1024
|
||||
hkrss-patterns,22, 2,1024, 2,1024, 2,1024, 2,1024
|
||||
hkrss-patterns,23, 1,63, 1,63, 1,63, 1,63
|
||||
hkrss-patterns,24, 1,63, 1,63, 1,63, 1,63
|
||||
hkrss-patterns,25, 1,63, 1,63, 1,63, 1,63
|
||||
hkrss-patterns,26, 1,98, 1,98, 1,98, 1,98
|
||||
hkrss-patterns,27, 1,127, 1,127, 1,127, 1,127
|
||||
hkrss-patterns,28, 1,255, 1,255, 1,255, 1,255
|
||||
hkrss-patterns,29, 3,44, 3,44, 3,44, 3,44
|
||||
hkrss-patterns,30, 5,78, 5,78, 5,78, 5,78
|
||||
hkrss-patterns,31, 1,1, 1,1, 1,1, 1,1
|
||||
hkrss-patterns,32, 3,46, 3,46, 3,46, 3,46
|
||||
hkrss-patterns,33, 3,46, 3,46, 3,46, 3,46
|
||||
hkrss-patterns,34, 2,12, 2,12, 2,12, 2,12
|
||||
hkrss-patterns,35, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,36, 34,192, 34,192, 34,192, 34,192
|
||||
hkrss-patterns,37, 2,30, 2,30, 2,30, 2,30
|
||||
hkrss-patterns,38, 2,7, 2,7, 3,10, 3,10
|
||||
hkrss-patterns,39, 3,11, 3,11, 3,11, 3,11
|
||||
hkrss-patterns,40, 4,13, 4,13, 4,13, 4,13
|
||||
hkrss-patterns,41, 6,17, 6,17, 6,17, 6,17
|
||||
hkrss-patterns,42, 6,17, 6,17, 6,17, 6,17
|
||||
hkrss-patterns,43, 8,21, 8,21, 8,21, 8,21
|
||||
hkrss-patterns,44, 6,22, 6,22, 6,22, 6,22
|
||||
hkrss-patterns,45, 12,23, 12,23, 12,23, 12,23
|
||||
hkrss-patterns,46, 4,14, 5,14, 4,14, 5,14
|
||||
hkrss-patterns,47, 4,14, 5,14, 4,14, 5,14
|
||||
hkrss-patterns,48, 2,36, 2,36, 2,36, 2,36
|
||||
hkrss-patterns,49, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,50, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,51, 2,2, 2,2, 2,2, 2,2
|
||||
hkrss-patterns,52, 4,25, 4,25, 5,29, 5,29
|
||||
hkrss-patterns,53, 3,22, 3,22, 3,22, 3,22
|
||||
hkrss-patterns,54, 3,22, 3,22, 3,22, 3,22
|
||||
hkrss-patterns,55, 5,8, 5,8, 5,8, 5,8
|
||||
p-patterns,2, 4,36, 4,36, 5,44, 5,44
|
||||
p-patterns,3, 2,20, 2,20, 2,20, 2,20
|
||||
p-patterns,4, 2,8, 2,8, 2,8, 2,8
|
||||
p-patterns,5, 1,4, 1,4, 2,8, 2,8
|
||||
p-patterns,6, 4,50, 4,50, 4,50, 4,50
|
||||
p-patterns,7, 4,27, 4,27, 4,27, 4,27
|
||||
p-patterns,8, 2,10, 2,10, 2,10, 2,10
|
||||
p-patterns,9, 1,2, 1,2, 2,4, 2,4
|
||||
p-patterns,10, 2,16, 2,16, 2,16, 2,16
|
||||
p-patterns,11, 2,20, 2,20, 2,20, 2,20
|
||||
p-patterns,12, 3,12, 3,12, 3,12, 3,12
|
||||
p-patterns,13, 3,20, 3,20, 3,20, 3,20
|
||||
p-patterns,14, 2,13, 2,13, 2,13, 2,13
|
||||
p-patterns,15, 2,7, 2,7, 2,7, 2,7
|
||||
p-patterns,16, 2,16, 2,16, 2,16, 2,16
|
||||
p-patterns,17, 3,20, 3,20, 3,20, 3,20
|
||||
p-patterns,18, 5,36, 5,36, 5,36, 5,36
|
||||
p-patterns,20, 1,8, 1,8, 3,24, 3,24
|
||||
and-fg,32, 2,4294967298, 2,4294967298, 2,4294967298, 2,4294967298
|
||||
!dac-patterns,1, 2,4, 2,4, 2,4, 2,4
|
||||
!dac-patterns,2, 3,10, 3,10, 3,10, 3,10
|
||||
!dac-patterns,3, 3,12, 3,12, 3,12, 3,12
|
||||
!dac-patterns,4, 4,32, 4,32, 4,32, 4,32
|
||||
!dac-patterns,5, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,6, 1,1, 1,1, 1,1, 1,1
|
||||
!dac-patterns,7, 2,7, 2,7, 2,7, 2,7
|
||||
!dac-patterns,8, 2,5, 2,5, 2,5, 2,5
|
||||
!dac-patterns,9, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,10, 3,23, 3,23, 3,23, 3,23
|
||||
!dac-patterns,11, 6,12, 6,12, 6,12, 6,12
|
||||
!dac-patterns,12, 7,18, 7,18, 7,18, 7,18
|
||||
!dac-patterns,13, 7,28, 7,28, 7,28, 7,28
|
||||
!dac-patterns,14, 8,64, 8,64, 8,64, 8,64
|
||||
!dac-patterns,15, 7,56, 7,56, 7,56, 7,56
|
||||
!dac-patterns,16, 2,4, 2,4, 2,4, 2,4
|
||||
!dac-patterns,17, 3,10, 3,10, 3,10, 3,10
|
||||
!dac-patterns,18, 3,12, 3,12, 3,12, 3,12
|
||||
!dac-patterns,19, 4,32, 4,32, 4,32, 4,32
|
||||
!dac-patterns,20, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,21, 2,6, 2,6, 2,6, 2,6
|
||||
!dac-patterns,22, 3,18, 3,18, 3,18, 3,18
|
||||
!dac-patterns,23, 3,16, 3,16, 3,16, 3,16
|
||||
!dac-patterns,24, 4,64, 4,64, 4,64, 4,64
|
||||
!dac-patterns,25, 3,48, 3,48, 3,48, 3,48
|
||||
!dac-patterns,26, 2,7, 2,7, 2,7, 2,7
|
||||
!dac-patterns,27, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,28, 3,23, 3,23, 3,23, 3,23
|
||||
!dac-patterns,29, 4,64, 4,64, 4,64, 4,64
|
||||
!dac-patterns,30, 4,54, 4,54, 4,54, 4,54
|
||||
!dac-patterns,31, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,32, 4,44, 4,44, 4,44, 4,44
|
||||
!dac-patterns,33, 4,48, 4,48, 4,48, 4,48
|
||||
!dac-patterns,34, 5,160, 5,160, 5,160, 5,160
|
||||
!dac-patterns,35, 4,128, 4,128, 4,128, 4,128
|
||||
!dac-patterns,36, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,37, 4,44, 4,44, 4,44, 4,44
|
||||
!dac-patterns,38, 4,52, 4,52, 4,52, 4,52
|
||||
!dac-patterns,39, 5,160, 5,160, 5,160, 5,160
|
||||
!dac-patterns,40, 4,128, 4,128, 4,128, 4,128
|
||||
!dac-patterns,41, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,42, 4,34, 5,50, 4,34, 5,50
|
||||
!dac-patterns,43, 4,60, 4,60, 4,60, 4,60
|
||||
!dac-patterns,44, 5,100, 5,100, 5,100, 5,100
|
||||
!dac-patterns,45, 4,84, 4,84, 4,84, 4,84
|
||||
!dac-patterns,46, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,47, 4,52, 4,52, 4,52, 4,52
|
||||
!dac-patterns,48, 4,62, 4,62, 4,62, 4,62
|
||||
!dac-patterns,49, 5,160, 5,160, 5,160, 5,160
|
||||
!dac-patterns,50, 8,224, 8,224, 9,252, 9,252
|
||||
!dac-patterns,51, 3,48, 3,48, 3,48, 3,48
|
||||
!dac-patterns,52, 4,104, 4,104, 4,104, 4,104
|
||||
!dac-patterns,53, 4,118, 4,118, 4,118, 4,118
|
||||
!dac-patterns,54, 5,320, 5,320, 5,320, 5,320
|
||||
!dac-patterns,55, 11,540, 11,540, 13,610, 13,610
|
||||
!eh-patterns,1, 4,32, 4,32, 4,32, 4,32
|
||||
!eh-patterns,2, 4,48, 4,48, 4,48, 4,48
|
||||
!eh-patterns,3, 8,960, 8,960, 8,960, 8,960
|
||||
!eh-patterns,4, 2,8, 2,8, 3,12, 3,12
|
||||
!eh-patterns,5, 3,20, 3,20, 3,20, 3,20
|
||||
!eh-patterns,6, 2,12, 2,12, 2,12, 2,12
|
||||
!eh-patterns,7, 2,7, 2,7, 3,9, 3,9
|
||||
!eh-patterns,8, 3,21, 3,21, 3,21, 3,21
|
||||
!eh-patterns,9, 5,68, 5,68, 5,68, 5,68
|
||||
!eh-patterns,10, 6,192, 6,192, 6,192, 6,192
|
||||
!eh-patterns,11, 2,9, 2,9, 2,9, 2,9
|
||||
!eh-patterns,12, 6,103, 6,103, 8,135, 8,135
|
||||
!sb-patterns,1, 2,6, 2,6, 2,6, 2,6
|
||||
!sb-patterns,5, 2,7, 2,7, 3,12, 3,12
|
||||
!sb-patterns,6, 3,11, 4,14, 3,11, 4,14
|
||||
!sb-patterns,7, 4,16, 4,16, 4,16, 4,16
|
||||
!sb-patterns,9, 3,13, 3,13, 5,21, 5,21
|
||||
!sb-patterns,10, 2,6, 2,6, 2,6, 2,6
|
||||
!sb-patterns,11, 1,0, 1,0, 1,0, 1,0
|
||||
!sb-patterns,12, 1,0, 1,0, 1,0, 1,0
|
||||
!sb-patterns,13, 2,7, 2,7, 2,7, 2,7
|
||||
!sb-patterns,14, 2,7, 2,7, 2,7, 2,7
|
||||
!sb-patterns,16, 2,12, 2,12, 2,12, 2,12
|
||||
!sb-patterns,17, 3,12, 3,12, 3,12, 3,12
|
||||
!sb-patterns,18, 3,12, 3,12, 3,12, 3,12
|
||||
!sb-patterns,19, 3,4, 3,4, 3,4, 3,4
|
||||
!sb-patterns,20, 4,37, 5,37, 4,37, 5,37
|
||||
!sb-patterns,25, 4,32, 4,32, 4,32, 4,32
|
||||
!sb-patterns,26, 2,4, 2,4, 2,4, 2,4
|
||||
!sb-patterns,27, 2,6, 2,6, 2,6, 2,6
|
||||
!hkrss-patterns,1, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,2, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,3, 5,12, 5,12, 5,12, 5,12
|
||||
!hkrss-patterns,4, 17,48, 17,48, 17,48, 17,48
|
||||
!hkrss-patterns,6, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,7, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,8, 1,0, 1,0, 1,0, 1,0
|
||||
!hkrss-patterns,9, 2,7, 2,7, 2,7, 2,7
|
||||
!hkrss-patterns,11, 2,11, 2,11, 2,11, 2,11
|
||||
!hkrss-patterns,12, 2,19, 2,19, 2,19, 2,19
|
||||
!hkrss-patterns,13, 5,1024, 5,1024, 5,1024, 5,1024
|
||||
!hkrss-patterns,14, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,15, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,16, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,17, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,18, 2,16, 2,16, 2,16, 2,16
|
||||
!hkrss-patterns,19, 2,64, 2,64, 2,64, 2,64
|
||||
!hkrss-patterns,20, 2,64, 2,64, 2,64, 2,64
|
||||
!hkrss-patterns,21, 2,1007, 2,1007, 2,1007, 2,1007
|
||||
!hkrss-patterns,22, 2,1007, 2,1007, 2,1007, 2,1007
|
||||
!hkrss-patterns,23, 2,128, 2,128, 2,128, 2,128
|
||||
!hkrss-patterns,24, 2,128, 2,128, 2,128, 2,128
|
||||
!hkrss-patterns,25, 2,128, 2,128, 2,128, 2,128
|
||||
!hkrss-patterns,26, 2,256, 2,256, 2,256, 2,256
|
||||
!hkrss-patterns,27, 2,256, 2,256, 2,256, 2,256
|
||||
!hkrss-patterns,28, 2,512, 2,512, 2,512, 2,512
|
||||
!hkrss-patterns,29, 4,64, 4,64, 4,64, 4,64
|
||||
!hkrss-patterns,30, 6,48, 6,48, 6,48, 6,48
|
||||
!hkrss-patterns,31, 1,0, 1,0, 1,0, 1,0
|
||||
!hkrss-patterns,32, 4,42, 4,42, 4,42, 4,42
|
||||
!hkrss-patterns,33, 4,42, 4,42, 4,42, 4,42
|
||||
!hkrss-patterns,34, 3,24, 3,24, 3,24, 3,24
|
||||
!hkrss-patterns,35, 3,12, 3,12, 3,12, 3,12
|
||||
!hkrss-patterns,36, 19,784, 19,784, 19,784, 19,784
|
||||
!hkrss-patterns,37, 3,48, 3,48, 3,48, 3,48
|
||||
!hkrss-patterns,38, 3,12, 3,12, 3,12, 3,12
|
||||
!hkrss-patterns,39, 4,16, 4,16, 4,16, 4,16
|
||||
!hkrss-patterns,40, 5,19, 5,19, 5,19, 5,19
|
||||
!hkrss-patterns,41, 7,27, 7,27, 7,27, 7,27
|
||||
!hkrss-patterns,42, 7,27, 7,27, 7,27, 7,27
|
||||
!hkrss-patterns,43, 9,35, 9,35, 9,35, 9,35
|
||||
!hkrss-patterns,44, 7,24, 7,24, 7,24, 7,24
|
||||
!hkrss-patterns,45, 13,26, 13,26, 13,26, 13,26
|
||||
!hkrss-patterns,46, 6,24, 6,24, 6,24, 6,24
|
||||
!hkrss-patterns,47, 6,24, 6,24, 6,24, 6,24
|
||||
!hkrss-patterns,48, 3,96, 3,96, 4,128, 4,128
|
||||
!hkrss-patterns,49, 2,6, 2,6, 2,6, 2,6
|
||||
!hkrss-patterns,50, 2,6, 2,6, 2,6, 2,6
|
||||
!hkrss-patterns,51, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,52, 5,37, 5,37, 5,37, 5,37
|
||||
!hkrss-patterns,53, 4,32, 4,32, 4,32, 4,32
|
||||
!hkrss-patterns,54, 4,32, 4,32, 4,32, 4,32
|
||||
!hkrss-patterns,55, 5,12, 6,12, 5,12, 6,12
|
||||
!p-patterns,2, 2,15, 2,15, 4,23, 4,23
|
||||
!p-patterns,3, 3,41, 3,41, 3,41, 3,41
|
||||
!p-patterns,4, 1,1, 1,1, 1,1, 1,1
|
||||
!p-patterns,5, 2,6, 2,6, 2,6, 2,6
|
||||
!p-patterns,6, 4,42, 4,42, 4,42, 4,42
|
||||
!p-patterns,7, 5,34, 5,34, 5,34, 5,34
|
||||
!p-patterns,8, 3,24, 3,24, 3,24, 3,24
|
||||
!p-patterns,9, 2,4, 2,4, 2,4, 2,4
|
||||
!p-patterns,10, 2,11, 2,11, 2,11, 2,11
|
||||
!p-patterns,11, 3,48, 3,48, 3,48, 3,48
|
||||
!p-patterns,12, 2,4, 2,4, 2,4, 2,4
|
||||
!p-patterns,13, 4,32, 4,32, 4,32, 4,32
|
||||
!p-patterns,14, 3,24, 3,24, 3,24, 3,24
|
||||
!p-patterns,15, 3,12, 3,12, 3,12, 3,12
|
||||
!p-patterns,16, 2,17, 2,17, 2,17, 2,17
|
||||
!p-patterns,17, 4,31, 4,31, 4,31, 4,31
|
||||
!p-patterns,18, 6,43, 6,43, 6,43, 6,43
|
||||
!p-patterns,20, 3,16, 3,16, 3,16, 3,16
|
||||
!and-fg,32, 1,4294967296, 1,4294967296, 2,8589934592, 2,8589934592
|
||||
dac-patterns,1, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
dac-patterns,2, 3,10, 3,10, 3,10, 3,10, 3,10, 3,10
|
||||
dac-patterns,3, 2,5, 2,5, 2,5, 2,5, 2,5, 2,5
|
||||
dac-patterns,4, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,5, 2,13, 2,13, 2,13, 2,13, 2,13, 2,13
|
||||
dac-patterns,6, 2,4, 2,4, 2,4, 2,4, 2,4, 2,4
|
||||
dac-patterns,7, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
dac-patterns,8, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
dac-patterns,9, 2,12, 2,12, 2,12, 2,12, 2,12, 2,12
|
||||
dac-patterns,10, 2,12, 2,12, 2,12, 2,12, 2,12, 2,12
|
||||
dac-patterns,11, 5,9, 5,9, 5,9, 5,9, 5,9, 5,9
|
||||
dac-patterns,12, 7,26, 7,26, 7,26, 7,26, 7,26, 7,26
|
||||
dac-patterns,13, 6,22, 6,22, 6,22, 6,22, 6,22, 6,22
|
||||
dac-patterns,14, 7,52, 7,52, 7,52, 7,52, 7,52, 7,52
|
||||
dac-patterns,15, 6,46, 6,46, 6,46, 6,46, 6,46, 6,46
|
||||
dac-patterns,16, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
dac-patterns,17, 3,10, 3,10, 3,10, 3,10, 3,10, 3,10
|
||||
dac-patterns,18, 2,5, 2,5, 2,5, 2,5, 2,5, 2,5
|
||||
dac-patterns,19, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,20, 2,13, 2,13, 2,13, 2,13, 2,13, 2,13
|
||||
dac-patterns,21, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
dac-patterns,22, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,23, 5,40, 5,40, 5,40, 5,40, 5,40, 5,40
|
||||
dac-patterns,24, 3,40, 3,40, 3,40, 3,40, 3,40, 3,40
|
||||
dac-patterns,25, 2,29, 2,29, 2,29, 2,29, 2,29, 2,29
|
||||
dac-patterns,26, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
dac-patterns,27, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,28, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
dac-patterns,29, 3,40, 3,40, 3,40, 3,40, 3,40, 3,40
|
||||
dac-patterns,30, 3,40, 3,40, 3,40, 3,40, 3,40, 3,40
|
||||
dac-patterns,31, 3,18, 3,18, 3,18, 3,18, 3,18, 3,18
|
||||
dac-patterns,32, 4,56, 4,56, 4,56, 4,56, 4,56, 4,56
|
||||
dac-patterns,33, 4,48, 4,48, 4,48, 4,48, 4,48, 4,48
|
||||
dac-patterns,34, 4,112, 4,112, 4,112, 4,112, 4,112, 4,112
|
||||
dac-patterns,35, 3,78, 3,78, 3,78, 3,78, 3,78, 3,78
|
||||
dac-patterns,36, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
dac-patterns,37, 4,56, 4,56, 4,56, 4,56, 4,56, 4,56
|
||||
dac-patterns,38, 4,56, 4,56, 4,56, 4,56, 4,56, 4,56
|
||||
dac-patterns,39, 4,112, 4,112, 4,112, 4,112, 4,112, 4,112
|
||||
dac-patterns,40, 3,88, 3,88, 3,88, 3,88, 3,88, 3,88
|
||||
dac-patterns,41, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
dac-patterns,42, 6,96, 6,96, 6,96, 6,96, 6,96, 6,96
|
||||
dac-patterns,43, 5,80, 5,80, 5,80, 5,80, 5,80, 5,80
|
||||
dac-patterns,44, 10,300, 10,300, 12,368, 12,368, 13,372, 13,372
|
||||
dac-patterns,45, 10,296, 10,296, 10,296, 10,296, 9,280, 9,280
|
||||
dac-patterns,46, 4,41, 4,41, 4,41, 4,41, 5,50, 5,50
|
||||
dac-patterns,47, 4,52, 4,52, 4,52, 4,52, 4,52, 4,52
|
||||
dac-patterns,48, 3,38, 3,38, 3,38, 3,38, 4,50, 4,50
|
||||
dac-patterns,49, 4,104, 4,104, 4,104, 4,104, 4,104, 4,104
|
||||
dac-patterns,50, 6,164, 6,164, 6,164, 6,164, 7,188, 7,188
|
||||
dac-patterns,51, 4,65, 4,65, 4,65, 4,65, 5,78, 5,78
|
||||
dac-patterns,52, 4,104, 4,104, 4,104, 4,104, 4,104, 4,104
|
||||
dac-patterns,53, 3,62, 3,62, 3,62, 3,62, 4,78, 4,78
|
||||
dac-patterns,54, 4,208, 4,208, 4,208, 4,208, 4,208, 4,208
|
||||
dac-patterns,55, 6,292, 6,292, 6,292, 6,292, 7,324, 7,324
|
||||
eh-patterns,1, 2,10, 2,10, 2,10, 2,10, 2,10, 2,10
|
||||
eh-patterns,2, 3,44, 4,55, 3,44, 4,55, 3,44, 4,55
|
||||
eh-patterns,3, 7,832, 8,912, 7,832, 8,912, 7,832, 8,912
|
||||
eh-patterns,4, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
eh-patterns,5, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
eh-patterns,6, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
eh-patterns,7, 3,14, 3,14, 3,14, 3,14, 4,18, 4,18
|
||||
eh-patterns,8, 2,13, 2,13, 2,13, 2,13, 2,13, 2,13
|
||||
eh-patterns,9, 1,8, 1,8, 3,24, 3,24, 4,32, 4,32
|
||||
eh-patterns,10, 1,32, 1,32, 5,160, 5,160, 6,192, 6,192
|
||||
eh-patterns,11, 2,15, 2,15, 2,15, 2,15, 2,15, 2,15
|
||||
eh-patterns,12, 4,60, 4,60, 4,60, 4,60, 4,60, 4,60
|
||||
sb-patterns,1, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
sb-patterns,2, 3,21, 3,21, 3,21, 3,21, 3,21, 3,21
|
||||
sb-patterns,3, 3,16, 3,16, 3,16, 3,16, 3,16, 3,16
|
||||
sb-patterns,4, 3,14, 3,14, 3,14, 3,14, 4,18, 4,18
|
||||
sb-patterns,5, 3,13, 3,13, 3,13, 3,13, 3,13, 3,13
|
||||
sb-patterns,6, 4,11, 4,11, 4,11, 4,11, 4,11, 4,11
|
||||
sb-patterns,7, 3,7, 3,7, 3,7, 3,7, 3,7, 3,7
|
||||
sb-patterns,8, 2,7, 2,7, 2,7, 2,7, 3,9, 3,9
|
||||
sb-patterns,9, 3,10, 3,10, 3,10, 3,10, 5,14, 5,14
|
||||
sb-patterns,10, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
sb-patterns,11, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
sb-patterns,12, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
sb-patterns,13, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
sb-patterns,14, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
sb-patterns,16, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
sb-patterns,17, 1,4, 1,4, 2,8, 2,8, 3,12, 3,12
|
||||
sb-patterns,18, 1,4, 1,4, 2,8, 2,8, 3,12, 3,12
|
||||
sb-patterns,19, 4,8, 4,8, 4,8, 4,8, 4,8, 4,8
|
||||
sb-patterns,20, 5,28, 5,28, 5,28, 5,28, 5,28, 5,28
|
||||
sb-patterns,21, 4,32, 4,32, 5,40, 5,40, 6,48, 6,48
|
||||
sb-patterns,22, 3,7, 3,7, 3,7, 3,7, 3,7, 3,7
|
||||
sb-patterns,23, 6,58, 6,58, 6,58, 6,58, 6,58, 6,58
|
||||
sb-patterns,24, 4,16, 4,16, 4,16, 4,16, 4,16, 4,16
|
||||
sb-patterns,25, 3,10, 3,10, 3,10, 3,10, 3,10, 3,10
|
||||
sb-patterns,26, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
sb-patterns,27, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,1, 1,2, 1,2, 2,4, 2,4, 3,6, 3,6
|
||||
hkrss-patterns,2, 1,2, 1,2, 2,4, 2,4, 3,6, 3,6
|
||||
hkrss-patterns,3, 4,16, 4,16, 4,16, 4,16, 5,20, 5,20
|
||||
hkrss-patterns,4, 9,400, 16,256, 9,400, 16,256, 9,400, 17,272
|
||||
hkrss-patterns,6, 1,2, 1,2, 2,4, 2,4, 3,6, 3,6
|
||||
hkrss-patterns,7, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
hkrss-patterns,8, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
hkrss-patterns,9, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
hkrss-patterns,11, 2,16, 2,16, 2,16, 2,16, 2,16, 2,16
|
||||
hkrss-patterns,12, 2,32, 2,32, 2,32, 2,32, 2,32, 2,32
|
||||
hkrss-patterns,13, 16,4096, 16,4096, 33,8448, 33,8448, 40,10240, 40,10240
|
||||
hkrss-patterns,14, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
hkrss-patterns,15, 1,3, 1,3, 1,3, 1,3, 1,3, 1,3
|
||||
hkrss-patterns,16, 1,3, 1,3, 1,3, 1,3, 1,3, 1,3
|
||||
hkrss-patterns,17, 1,3, 1,3, 1,3, 1,3, 1,3, 1,3
|
||||
hkrss-patterns,18, 1,6, 1,6, 1,6, 1,6, 1,6, 1,6
|
||||
hkrss-patterns,19, 1,25, 1,25, 1,25, 1,25, 1,25, 1,25
|
||||
hkrss-patterns,20, 1,31, 1,31, 1,31, 1,31, 1,31, 1,31
|
||||
hkrss-patterns,21, 2,1024, 2,1024, 2,1024, 2,1024, 2,1024, 2,1024
|
||||
hkrss-patterns,22, 2,1024, 2,1024, 2,1024, 2,1024, 2,1024, 2,1024
|
||||
hkrss-patterns,23, 1,63, 1,63, 1,63, 1,63, 1,63, 1,63
|
||||
hkrss-patterns,24, 1,63, 1,63, 1,63, 1,63, 1,63, 1,63
|
||||
hkrss-patterns,25, 1,63, 1,63, 1,63, 1,63, 1,63, 1,63
|
||||
hkrss-patterns,26, 1,98, 1,98, 1,98, 1,98, 1,98, 1,98
|
||||
hkrss-patterns,27, 1,127, 1,127, 1,127, 1,127, 1,127, 1,127
|
||||
hkrss-patterns,28, 1,255, 1,255, 1,255, 1,255, 1,255, 1,255
|
||||
hkrss-patterns,29, 3,44, 3,44, 3,44, 3,44, 3,44, 3,44
|
||||
hkrss-patterns,30, 5,78, 5,78, 5,78, 5,78, 5,78, 5,78
|
||||
hkrss-patterns,31, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
hkrss-patterns,32, 3,46, 3,46, 3,46, 3,46, 3,46, 3,46
|
||||
hkrss-patterns,33, 3,46, 3,46, 3,46, 3,46, 3,46, 3,46
|
||||
hkrss-patterns,34, 2,12, 2,12, 2,12, 2,12, 2,12, 2,12
|
||||
hkrss-patterns,35, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,36, 34,192, 34,192, 34,192, 34,192, 34,192, 34,192
|
||||
hkrss-patterns,37, 2,30, 2,30, 2,30, 2,30, 2,30, 2,30
|
||||
hkrss-patterns,38, 2,7, 2,7, 2,7, 2,7, 3,10, 3,10
|
||||
hkrss-patterns,39, 3,11, 3,11, 3,11, 3,11, 3,11, 3,11
|
||||
hkrss-patterns,40, 4,13, 4,13, 4,13, 4,13, 4,13, 4,13
|
||||
hkrss-patterns,41, 6,17, 6,17, 6,17, 6,17, 6,17, 6,17
|
||||
hkrss-patterns,42, 6,17, 6,17, 6,17, 6,17, 6,17, 6,17
|
||||
hkrss-patterns,43, 8,21, 8,21, 8,21, 8,21, 8,21, 8,21
|
||||
hkrss-patterns,44, 6,22, 6,22, 6,22, 6,22, 6,22, 6,22
|
||||
hkrss-patterns,45, 12,23, 12,23, 12,23, 12,23, 12,23, 12,23
|
||||
hkrss-patterns,46, 4,14, 5,14, 4,14, 5,14, 4,14, 5,14
|
||||
hkrss-patterns,47, 4,14, 5,14, 4,14, 5,14, 4,14, 5,14
|
||||
hkrss-patterns,48, 2,36, 2,36, 2,36, 2,36, 2,36, 2,36
|
||||
hkrss-patterns,49, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,50, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
hkrss-patterns,51, 2,2, 2,2, 2,2, 2,2, 2,2, 2,2
|
||||
hkrss-patterns,52, 4,25, 4,25, 4,25, 4,25, 5,29, 5,29
|
||||
hkrss-patterns,53, 3,22, 3,22, 3,22, 3,22, 3,22, 3,22
|
||||
hkrss-patterns,54, 3,22, 3,22, 3,22, 3,22, 3,22, 3,22
|
||||
hkrss-patterns,55, 5,8, 5,8, 5,8, 5,8, 5,8, 5,8
|
||||
p-patterns,2, 4,36, 4,36, 4,36, 4,36, 5,44, 5,44
|
||||
p-patterns,3, 2,20, 2,20, 2,20, 2,20, 2,20, 2,20
|
||||
p-patterns,4, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
p-patterns,5, 1,4, 1,4, 1,4, 1,4, 2,8, 2,8
|
||||
p-patterns,6, 4,50, 4,50, 4,50, 4,50, 4,50, 4,50
|
||||
p-patterns,7, 4,27, 4,27, 4,27, 4,27, 4,27, 4,27
|
||||
p-patterns,8, 2,10, 2,10, 2,10, 2,10, 2,10, 2,10
|
||||
p-patterns,9, 1,2, 1,2, 1,2, 1,2, 2,4, 2,4
|
||||
p-patterns,10, 2,16, 2,16, 2,16, 2,16, 2,16, 2,16
|
||||
p-patterns,11, 2,20, 2,20, 2,20, 2,20, 2,20, 2,20
|
||||
p-patterns,12, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
p-patterns,13, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
p-patterns,14, 2,13, 2,13, 2,13, 2,13, 2,13, 2,13
|
||||
p-patterns,15, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
p-patterns,16, 2,16, 2,16, 2,16, 2,16, 2,16, 2,16
|
||||
p-patterns,17, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
p-patterns,18, 5,36, 5,36, 5,36, 5,36, 5,36, 5,36
|
||||
p-patterns,20, 1,8, 1,8, 2,16, 2,16, 3,24, 3,24
|
||||
and-fg,32, $fg42, $fg42, $fg42, $fg42, $fg42, $fg42
|
||||
!dac-patterns,1, 2,4, 2,4, 2,4, 2,4, 2,4, 2,4
|
||||
!dac-patterns,2, 3,10, 3,10, 3,10, 3,10, 3,10, 3,10
|
||||
!dac-patterns,3, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
!dac-patterns,4, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
!dac-patterns,5, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,6, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
!dac-patterns,7, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
!dac-patterns,8, 2,5, 2,5, 2,5, 2,5, 2,5, 2,5
|
||||
!dac-patterns,9, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,10, 3,23, 3,23, 3,23, 3,23, 3,23, 3,23
|
||||
!dac-patterns,11, 6,12, 6,12, 6,12, 6,12, 6,12, 6,12
|
||||
!dac-patterns,12, 7,18, 7,18, 7,18, 7,18, 7,18, 7,18
|
||||
!dac-patterns,13, 7,28, 7,28, 7,28, 7,28, 7,28, 7,28
|
||||
!dac-patterns,14, 8,64, 8,64, 8,64, 8,64, 8,64, 8,64
|
||||
!dac-patterns,15, 7,56, 7,56, 7,56, 7,56, 7,56, 7,56
|
||||
!dac-patterns,16, 2,4, 2,4, 2,4, 2,4, 2,4, 2,4
|
||||
!dac-patterns,17, 3,10, 3,10, 3,10, 3,10, 3,10, 3,10
|
||||
!dac-patterns,18, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
!dac-patterns,19, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
!dac-patterns,20, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,21, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
!dac-patterns,22, 3,18, 3,18, 3,18, 3,18, 3,18, 3,18
|
||||
!dac-patterns,23, 3,16, 3,16, 3,16, 3,16, 3,16, 3,16
|
||||
!dac-patterns,24, 4,64, 4,64, 4,64, 4,64, 4,64, 4,64
|
||||
!dac-patterns,25, 3,48, 3,48, 3,48, 3,48, 3,48, 3,48
|
||||
!dac-patterns,26, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
!dac-patterns,27, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,28, 3,23, 3,23, 3,23, 3,23, 3,23, 3,23
|
||||
!dac-patterns,29, 4,64, 4,64, 4,64, 4,64, 4,64, 4,64
|
||||
!dac-patterns,30, 4,54, 4,54, 4,54, 4,54, 4,54, 4,54
|
||||
!dac-patterns,31, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,32, 4,44, 4,44, 4,44, 4,44, 4,44, 4,44
|
||||
!dac-patterns,33, 4,48, 4,48, 4,48, 4,48, 4,48, 4,48
|
||||
!dac-patterns,34, 5,160, 5,160, 5,160, 5,160, 5,160, 5,160
|
||||
!dac-patterns,35, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128
|
||||
!dac-patterns,36, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,37, 4,44, 4,44, 4,44, 4,44, 4,44, 4,44
|
||||
!dac-patterns,38, 4,52, 4,52, 4,52, 4,52, 4,52, 4,52
|
||||
!dac-patterns,39, 5,160, 5,160, 5,160, 5,160, 5,160, 5,160
|
||||
!dac-patterns,40, 4,128, 4,128, 4,128, 4,128, 4,128, 4,128
|
||||
!dac-patterns,41, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
!dac-patterns,42, 4,34, 5,50, 4,34, 5,50, 4,34, 5,50
|
||||
!dac-patterns,43, 4,60, 4,60, 4,60, 4,60, 4,60, 4,60
|
||||
!dac-patterns,44, 5,100, 5,100, 5,100, 5,100, 5,100, 5,100
|
||||
!dac-patterns,45, 4,84, 4,84, 4,84, 4,84, 4,84, 4,84
|
||||
!dac-patterns,46, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
!dac-patterns,47, 4,52, 4,52, 4,52, 4,52, 4,52, 4,52
|
||||
!dac-patterns,48, 4,62, 4,62, 4,62, 4,62, 4,62, 4,62
|
||||
!dac-patterns,49, 5,160, 5,160, 5,160, 5,160, 5,160, 5,160
|
||||
!dac-patterns,50, 8,224, 8,224, 8,224, 8,224, 9,252, 9,252
|
||||
!dac-patterns,51, 3,48, 3,48, 3,48, 3,48, 3,48, 3,48
|
||||
!dac-patterns,52, 4,104, 4,104, 4,104, 4,104, 4,104, 4,104
|
||||
!dac-patterns,53, 4,118, 4,118, 4,118, 4,118, 4,118, 4,118
|
||||
!dac-patterns,54, 5,320, 5,320, 5,320, 5,320, 5,320, 5,320
|
||||
!dac-patterns,55, 11,540, 11,540, 11,540, 11,540, 13,610, 13,610
|
||||
!eh-patterns,1, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
!eh-patterns,2, 4,48, 4,48, 4,48, 4,48, 4,48, 4,48
|
||||
!eh-patterns,3, 8,960, 8,960, 8,960, 8,960, 8,960, 8,960
|
||||
!eh-patterns,4, 2,8, 2,8, 2,8, 2,8, 3,12, 3,12
|
||||
!eh-patterns,5, 3,20, 3,20, 3,20, 3,20, 3,20, 3,20
|
||||
!eh-patterns,6, 2,12, 2,12, 2,12, 2,12, 2,12, 2,12
|
||||
!eh-patterns,7, 2,7, 2,7, 2,7, 2,7, 3,9, 3,9
|
||||
!eh-patterns,8, 3,21, 3,21, 3,21, 3,21, 3,21, 3,21
|
||||
!eh-patterns,9, 5,68, 5,68, 5,68, 5,68, 5,68, 5,68
|
||||
!eh-patterns,10, 6,192, 6,192, 6,192, 6,192, 6,192, 6,192
|
||||
!eh-patterns,11, 2,9, 2,9, 2,9, 2,9, 2,9, 2,9
|
||||
!eh-patterns,12, 6,103, 6,103, 7,119, 7,119, 8,135, 8,135
|
||||
!sb-patterns,1, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
!sb-patterns,5, 2,7, 2,7, 2,7, 2,7, 3,12, 3,12
|
||||
!sb-patterns,6, 3,11, 4,14, 3,11, 4,14, 3,11, 4,14
|
||||
!sb-patterns,7, 4,16, 4,16, 4,16, 4,16, 4,16, 4,16
|
||||
!sb-patterns,9, 3,13, 3,13, 4,17, 4,17, 5,21, 5,21
|
||||
!sb-patterns,10, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
!sb-patterns,11, 1,0, 1,0, 1,0, 1,0, 1,0, 1,0
|
||||
!sb-patterns,12, 1,0, 1,0, 1,0, 1,0, 1,0, 1,0
|
||||
!sb-patterns,13, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
!sb-patterns,14, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
!sb-patterns,16, 2,12, 2,12, 2,12, 2,12, 2,12, 2,12
|
||||
!sb-patterns,17, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
!sb-patterns,18, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
!sb-patterns,19, 3,4, 3,4, 3,4, 3,4, 3,4, 3,4
|
||||
!sb-patterns,20, 4,37, 5,37, 4,37, 5,37, 4,37, 5,37
|
||||
!sb-patterns,25, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
!sb-patterns,26, 2,4, 2,4, 2,4, 2,4, 2,4, 2,4
|
||||
!sb-patterns,27, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
!hkrss-patterns,1, 3,6, 3,6, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,2, 3,6, 3,6, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,3, 5,12, 5,12, 5,12, 5,12, 5,12, 5,12
|
||||
!hkrss-patterns,4, 17,48, 17,48, 17,48, 17,48, 17,48, 17,48
|
||||
!hkrss-patterns,6, 3,6, 3,6, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,7, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,8, 1,0, 1,0, 1,0, 1,0, 1,0, 1,0
|
||||
!hkrss-patterns,9, 2,7, 2,7, 2,7, 2,7, 2,7, 2,7
|
||||
!hkrss-patterns,11, 2,11, 2,11, 2,11, 2,11, 2,11, 2,11
|
||||
!hkrss-patterns,12, 2,19, 2,19, 2,19, 2,19, 2,19, 2,19
|
||||
!hkrss-patterns,13, 5,1024, 5,1024, 5,1024, 5,1024, 5,1024, 5,1024
|
||||
!hkrss-patterns,14, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,15, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,16, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,17, 2,8, 2,8, 2,8, 2,8, 2,8, 2,8
|
||||
!hkrss-patterns,18, 2,16, 2,16, 2,16, 2,16, 2,16, 2,16
|
||||
!hkrss-patterns,19, 2,64, 2,64, 2,64, 2,64, 2,64, 2,64
|
||||
!hkrss-patterns,20, 2,64, 2,64, 2,64, 2,64, 2,64, 2,64
|
||||
!hkrss-patterns,21, 2,1007, 2,1007, 2,1007, 2,1007, 2,1007, 2,1007
|
||||
!hkrss-patterns,22, 2,1007, 2,1007, 2,1007, 2,1007, 2,1007, 2,1007
|
||||
!hkrss-patterns,23, 2,128, 2,128, 2,128, 2,128, 2,128, 2,128
|
||||
!hkrss-patterns,24, 2,128, 2,128, 2,128, 2,128, 2,128, 2,128
|
||||
!hkrss-patterns,25, 2,128, 2,128, 2,128, 2,128, 2,128, 2,128
|
||||
!hkrss-patterns,26, 2,256, 2,256, 2,256, 2,256, 2,256, 2,256
|
||||
!hkrss-patterns,27, 2,256, 2,256, 2,256, 2,256, 2,256, 2,256
|
||||
!hkrss-patterns,28, 2,512, 2,512, 2,512, 2,512, 2,512, 2,512
|
||||
!hkrss-patterns,29, 4,64, 4,64, 4,64, 4,64, 4,64, 4,64
|
||||
!hkrss-patterns,30, 6,48, 6,48, 6,48, 6,48, 6,48, 6,48
|
||||
!hkrss-patterns,31, 1,0, 1,0, 1,0, 1,0, 1,0, 1,0
|
||||
!hkrss-patterns,32, 4,42, 4,42, 4,42, 4,42, 4,42, 4,42
|
||||
!hkrss-patterns,33, 4,42, 4,42, 4,42, 4,42, 4,42, 4,42
|
||||
!hkrss-patterns,34, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
!hkrss-patterns,35, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
!hkrss-patterns,36, 19,784, 19,784, 19,784, 19,784, 19,784, 19,784
|
||||
!hkrss-patterns,37, 3,48, 3,48, 3,48, 3,48, 3,48, 3,48
|
||||
!hkrss-patterns,38, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
!hkrss-patterns,39, 4,16, 4,16, 4,16, 4,16, 4,16, 4,16
|
||||
!hkrss-patterns,40, 5,19, 5,19, 5,19, 5,19, 5,19, 5,19
|
||||
!hkrss-patterns,41, 7,27, 7,27, 7,27, 7,27, 7,27, 7,27
|
||||
!hkrss-patterns,42, 7,27, 7,27, 7,27, 7,27, 7,27, 7,27
|
||||
!hkrss-patterns,43, 9,35, 9,35, 9,35, 9,35, 9,35, 9,35
|
||||
!hkrss-patterns,44, 7,24, 7,24, 7,24, 7,24, 7,24, 7,24
|
||||
!hkrss-patterns,45, 13,26, 13,26, 13,26, 13,26, 13,26, 13,26
|
||||
!hkrss-patterns,46, 6,24, 6,24, 6,24, 6,24, 6,24, 6,24
|
||||
!hkrss-patterns,47, 6,24, 6,24, 6,24, 6,24, 6,24, 6,24
|
||||
!hkrss-patterns,48, 3,96, 3,96, 3,96, 3,96, 4,128, 4,128
|
||||
!hkrss-patterns,49, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
!hkrss-patterns,50, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
!hkrss-patterns,51, 3,6, 3,6, 3,6, 3,6, 3,6, 3,6
|
||||
!hkrss-patterns,52, 5,37, 5,37, 5,37, 5,37, 5,37, 5,37
|
||||
!hkrss-patterns,53, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
!hkrss-patterns,54, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
!hkrss-patterns,55, 5,12, 6,12, 5,12, 6,12, 5,12, 6,12
|
||||
!p-patterns,2, 2,15, 2,15, 3,19, 3,19, 4,23, 4,23
|
||||
!p-patterns,3, 3,41, 3,41, 3,41, 3,41, 3,41, 3,41
|
||||
!p-patterns,4, 1,1, 1,1, 1,1, 1,1, 1,1, 1,1
|
||||
!p-patterns,5, 2,6, 2,6, 2,6, 2,6, 2,6, 2,6
|
||||
!p-patterns,6, 4,42, 4,42, 4,42, 4,42, 4,42, 4,42
|
||||
!p-patterns,7, 5,34, 5,34, 5,34, 5,34, 5,34, 5,34
|
||||
!p-patterns,8, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
!p-patterns,9, 2,4, 2,4, 2,4, 2,4, 2,4, 2,4
|
||||
!p-patterns,10, 2,11, 2,11, 2,11, 2,11, 2,11, 2,11
|
||||
!p-patterns,11, 3,48, 3,48, 3,48, 3,48, 3,48, 3,48
|
||||
!p-patterns,12, 2,4, 2,4, 2,4, 2,4, 2,4, 2,4
|
||||
!p-patterns,13, 4,32, 4,32, 4,32, 4,32, 4,32, 4,32
|
||||
!p-patterns,14, 3,24, 3,24, 3,24, 3,24, 3,24, 3,24
|
||||
!p-patterns,15, 3,12, 3,12, 3,12, 3,12, 3,12, 3,12
|
||||
!p-patterns,16, 2,17, 2,17, 2,17, 2,17, 2,17, 2,17
|
||||
!p-patterns,17, 4,31, 4,31, 4,31, 4,31, 4,31, 4,31
|
||||
!p-patterns,18, 6,43, 6,43, 6,43, 6,43, 6,43, 6,43
|
||||
!p-patterns,20, 3,16, 3,16, 3,16, 3,16, 3,16, 3,16
|
||||
!and-fg,32, $gf42, $gf42, $gf42, $gf42, 2,8589934592, 2,8589934592
|
||||
EOF
|
||||
|
||||
diff output expected
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/sh
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (C) 2012-2017 Laboratoire de Recherche et Développement de
|
||||
# l'Epita (LRDE).
|
||||
# Copyright (C) 2012-2017, 2020 Laboratoire de Recherche et
|
||||
# Développement de l'Epita (LRDE).
|
||||
#
|
||||
# This file is part of Spot, a model checking library.
|
||||
#
|
||||
|
|
@ -37,10 +37,11 @@ ltlcross --products=3 --timeout=60 \
|
|||
"ltl2tgba --lbtt -x comp-susp,early-susp --small %f >%T" \
|
||||
"ltl2tgba --lbtt -x comp-susp,!skel-wdba,!skel-simul --small %f >%T" \
|
||||
"ltl2tgba --spin --ba -x degen-lskip=0 %f >%N" \
|
||||
"ltl2tgba --lbtt --ba --high %f > %T" \
|
||||
"ltl2tgba --lbtt --sba --high %f > %T" \
|
||||
"ltl2tgba --buchi %f > %T" \
|
||||
"ltl2tgba --spin=6 --ba -x degen-order,degen-lcache=2 --medium %f > %N" \
|
||||
"ltl2tgba --hoa -x degen-lcache=3 -BDC %f > %H" \
|
||||
"ltl2tgba --lbtt -BC %f > %T" \
|
||||
"ltl2tgba --lbtt --unambiguous --low %f > %T" \
|
||||
"ltl2tgba --lbtt --unambiguous -x exprop=0 --low %f > %T" \
|
||||
"ltl2tgba --lbtt --unambiguous --high %f > %T" \
|
||||
--json=output.json --csv=output.csv
|
||||
|
|
|
|||
|
|
@ -52,6 +52,12 @@ grep 'ba.*incompatible' stderr
|
|||
randaut --ba -A0 3 2>stderr && exit 1
|
||||
grep 'ba.*incompatible' stderr
|
||||
|
||||
randaut --buchi -A2 3 2>stderr && exit 1
|
||||
grep 'buchi.*incompatible' stderr
|
||||
|
||||
randaut -b 2 | autfilt --acceptance-is=Buchi | grep trans-acc
|
||||
randaut -B 2 | autfilt --acceptance-is=Buchi | grep state-acc
|
||||
|
||||
randaut --states 10..20 2 -n 100 -H > aut.hoa
|
||||
a=`autfilt --states=..14 -c <aut.hoa`
|
||||
b=`autfilt aut.hoa --states=15.. -c`
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#! /bin/sh
|
||||
# -*- coding: utf-8 -*-
|
||||
# Copyright (C) 2015, 2016, 2017 Laboratoire de Recherche et
|
||||
# Copyright (C) 2015-2017, 2020 Laboratoire de Recherche et
|
||||
# Développement de l'Epita (LRDE).
|
||||
#
|
||||
# This file is part of Spot, a model checking library.
|
||||
|
|
@ -127,7 +127,7 @@ EOF
|
|||
|
||||
diff out.hoa expected
|
||||
|
||||
autfilt --sba -H expected > out.hoa
|
||||
autfilt --sbacc -H expected > out.hoa
|
||||
diff out.hoa expected
|
||||
|
||||
autfilt --strip-acc -H expected -n1 > out.hoa
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue