man: more doc about TGBA and monitors
This was prompted by an exchange of emails with Caroline Lemieux. * src/bin/man/ltl2tgba.x: Add notes and references. * NEWS, THANKS: Update.
This commit is contained in:
parent
d4e3a9521b
commit
e5124faa13
3 changed files with 76 additions and 1 deletions
5
NEWS
5
NEWS
|
|
@ -1,5 +1,10 @@
|
||||||
New in spot 1.2.4a (not yet released)
|
New in spot 1.2.4a (not yet released)
|
||||||
|
|
||||||
|
* Documentation
|
||||||
|
|
||||||
|
- The man page for ltl2tgba has some new notes and references
|
||||||
|
about TGBA and about monitors.
|
||||||
|
|
||||||
* Bug fixes:
|
* Bug fixes:
|
||||||
|
|
||||||
- Fix simplification of bounded repetition in SERE formulas.
|
- Fix simplification of bounded repetition in SERE formulas.
|
||||||
|
|
|
||||||
1
THANKS
1
THANKS
|
|
@ -2,6 +2,7 @@ We are grateful to these people for their comments, help, or
|
||||||
suggestions.
|
suggestions.
|
||||||
|
|
||||||
Akim Demaille
|
Akim Demaille
|
||||||
|
Caroline Lemieux
|
||||||
Christian Dax
|
Christian Dax
|
||||||
Ernesto Posse
|
Ernesto Posse
|
||||||
Étienne Renault
|
Étienne Renault
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,42 @@
|
||||||
[NAME]
|
[NAME]
|
||||||
ltl2tgba \- translate LTL/PSL formulas into Büchi automata
|
ltl2tgba \- translate LTL/PSL formulas into Büchi automata
|
||||||
|
[NOTE ON TGBA]
|
||||||
|
|
||||||
|
TGBA stands for Transition-based Generalized Büchi Automaton. The
|
||||||
|
name was coined by Dimitra Giannakopoulou and Flavio Lerda in their
|
||||||
|
FORTE'02 paper (From States to Transitions: Improving Translation of
|
||||||
|
LTL Formulae to Büchi Automata), although similar automata have been
|
||||||
|
used under different names long before that.
|
||||||
|
|
||||||
|
As its name implies a TGBA uses a generalized Büchi acceptance
|
||||||
|
condition, meanings that a run of the automaton is accepted iff it
|
||||||
|
visits ininitely often multiple acceptance sets, and it also uses
|
||||||
|
transition-based acceptance, i.e., those acceptance sets are sets of
|
||||||
|
transitions. TGBA are often more consise than traditional Büchi
|
||||||
|
automata. For instance the LTL formula \f(CWGFa & GFb\fR can be
|
||||||
|
translated into a single-state TGBA while a traditional Büchi
|
||||||
|
automaton would need 3 states. Compare
|
||||||
|
|
||||||
|
% ltl2tgba 'GFa & GFb'
|
||||||
|
|
||||||
|
with
|
||||||
|
|
||||||
|
% ltl2tgba --ba 'GFa & GFb'
|
||||||
|
|
||||||
|
In the dot output produced by the above commands, the membership of
|
||||||
|
the transitions to the various acceptance sets is denoted using names
|
||||||
|
in braces. The actuall names do not really matter as they may be
|
||||||
|
produced by the translation algorithm or altered by any latter
|
||||||
|
postprocessing.
|
||||||
|
|
||||||
|
When the \fB\--ba\fR option is used to request a Büchi automaton, Spot
|
||||||
|
builds a TGBA with a single acceptance set, and in which for any state
|
||||||
|
either all outgoing transitions are accepting (this is equivalent to
|
||||||
|
the state being accepting) or none of them are. Double circles are
|
||||||
|
used to highlight accepting states in the output, but the braces
|
||||||
|
denoting the accepting transitions are still shown because the
|
||||||
|
underling structure really is a TGBA.
|
||||||
|
|
||||||
[NOTE ON LBTT'S FORMAT]
|
[NOTE ON LBTT'S FORMAT]
|
||||||
The format, described at
|
The format, described at
|
||||||
http://www.tcs.hut.fi/Software/lbtt/doc/html/Format-for-automata.html,
|
http://www.tcs.hut.fi/Software/lbtt/doc/html/Format-for-automata.html,
|
||||||
|
|
@ -10,7 +47,7 @@ internally, it will normally use the transition-based flavor of that
|
||||||
format, indicated with a 't' flag after the number of acceptance sets.
|
format, indicated with a 't' flag after the number of acceptance sets.
|
||||||
For instance:
|
For instance:
|
||||||
|
|
||||||
% bin/ltl2tgba --lbtt 'GFp0 & GFp1 & FGp2'
|
% ltl2tgba --lbtt 'GFp0 & GFp1 & FGp2'
|
||||||
2 2t // 2 states, 2 transition-based acceptance sets
|
2 2t // 2 states, 2 transition-based acceptance sets
|
||||||
0 1 // state 0: initial
|
0 1 // state 0: initial
|
||||||
0 -1 t // trans. to state 0, no acc., label: true
|
0 -1 t // trans. to state 0, no acc., label: true
|
||||||
|
|
@ -80,6 +117,38 @@ p[0-9]+ as double-quoted strings.
|
||||||
0 -1 & ! "b" ! "a"
|
0 -1 & ! "b" ! "a"
|
||||||
-1
|
-1
|
||||||
|
|
||||||
|
[NOTE ON GENERATING MONITORS]
|
||||||
|
|
||||||
|
The monitors generated with option \fB\-M\fR are finite state automata
|
||||||
|
used to reject finite words that cannot be extended to infinite words
|
||||||
|
compatible with the supplied formula. The idea is that the monitor
|
||||||
|
should progress alongside the system, and can only make decisions
|
||||||
|
based on the finite prefix read so far.
|
||||||
|
|
||||||
|
Monitors can be seen as Büchi automata in which all recognized runs are
|
||||||
|
accepting. As such, the only infinite words they can reject are those
|
||||||
|
are not recognized, i.e., infinite words that start with a bad prefix.
|
||||||
|
|
||||||
|
Because of this limited expressiveness, a monitor for some given LTL
|
||||||
|
or PSL formula may accept a larger language than the one specified by
|
||||||
|
the formula. For instance a monitor for the LTL formula \f(CWa U b\fR
|
||||||
|
will reject (for instance) any word starting with \f(CW!a&!b\fR as
|
||||||
|
there is no way such a word can validate the formula, but it will not
|
||||||
|
reject a finite prefix repeating only \f(CWa&!b\fR as such a prefix
|
||||||
|
could be extented in a way that is comptible with \f(CWa U b\fR.
|
||||||
|
|
||||||
|
For more information about monitors, we refer the readers to the
|
||||||
|
following two papers (the first paper describes the construction of
|
||||||
|
the second paper in a more concise way):
|
||||||
|
.TP
|
||||||
|
\(bu
|
||||||
|
Deian Tabakov and Moshe Y. Vardi: Optimized Temporal Monitors for SystemC.
|
||||||
|
Proceedings of RV'10. LNCS 6418.
|
||||||
|
.TP
|
||||||
|
\(bu
|
||||||
|
Marcelo d’Amorim and Grigoire Roşu: Efficient monitoring of
|
||||||
|
ω-languages. Proceedings of CAV'05. LNCS 3576.
|
||||||
|
|
||||||
[BIBLIOGRAPHY]
|
[BIBLIOGRAPHY]
|
||||||
If you would like to give a reference to this tool in an article,
|
If you would like to give a reference to this tool in an article,
|
||||||
we suggest you cite one of the following papers:
|
we suggest you cite one of the following papers:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue