<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Timed Trace Expressions</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Luca Ciccone</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Angelo Ferrando</string-name>
          <email>angelo.ferrando@liverpool.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Davide Ancona</string-name>
          <email>davide.ancona@unige.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Viviana Mascardi</string-name>
          <email>viviana.mascardi@unige.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Liverpool University</institution>
          ,
          <addr-line>Liverpool</addr-line>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Genova</institution>
          ,
          <addr-line>Genova</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Trace expressions are a compact and expressive formalism initially devised for runtime verication of multiagent systems, and then adopted for runtime verication of object oriented systems and of Internet of Things applications. In this paper we survey dierent logics to cope with time intervals, and we exploit the ideas underlying these logics to extend the trace expressions formalism with the explicit management of time.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Alice and Bob will attend CILC 2019: they agree to meet in front of the CILC
venue between 9.00 AM and 9.20 AM, and enter the building together. Bob is
always on time. He knows that Alice tends to be late, so he points out that if she
will not be there between 9.00 AM and 9.20 AM, he will enter, without waiting
for her. Entering the venue makes sense only before 11.00. So if Alice is late, but
not too late, she enters as soon as she reaches the venue. If she is too late, she
gives up attending that session.</p>
      <p>We may formally specify the agreement between Alice and Bob in the
following way:
Agreement = (bob_on_time : ) j
(Alice_on_time _ Alice_standard_delay _ Alice_except_delay)
where
? Work supported by EPSRC as part of the ORCA [EP/R026173] and RAIN
[EP/R026084] Robotics and AI Hubs.</p>
      <p>We use italic to denote expressions and sub-expressions that represent the
agreement, and that are dened by equations that could be recursive 3; we use
lowercase strings to denote the types of events that are expected to take place.</p>
      <p>To grasp the intuition behind the above formalization, we need to gently
introduce the operators appearing therein, and to better clarify the notion of
types of events that are expected to take place.</p>
      <p>ev_type:Expr means that an event whose type is ev_type takes place before
the events modelled by Expr. The empty expression is represented by , hence
ev_type: means that after an event with type ev_type took place, nothing more
should happen. The operator shue j applies to two expressions, and means that
the events taking place in the left expression can be interleaved in whatever way
with those in the right expression (but the event order within the two expressions
must be preserved). The operator _ denotes mutually exclusive choice between
two expressions, and Expr1 Expr2 means that after the events modelled by
Expr1 took place, then those in Expr2 will start to take place (concatenation).</p>
      <p>Now let us move to better shaping the meaning of bob_on_time. Bob is
on time if he reaches the CILC venue between 9.00 AM and 9.20 AM; many
real events match this type, where the interval of validity must be explicitly
specied. We can state that bob_on_time is characterized by the actual events
to be observed and the time interval when they should be observed:
bob_on_time = h {bob in front of CILC venue}, [9.00 AM, 9.20 AM] i.</p>
      <p>In the same way we can dene alice_on_time = h {alice in front of CILC
venue}, [9.00 AM, 9.20 AM] i, alice_late = h {alice in front of CILC venue},
(9.20 AM, 11.00 AM] i, and alice_too_late = h {alice in front of CILC venue},
(11.00 AM, 12.00 PM] i.</p>
      <p>We might want to model the event of being in the right place in a more
detailed way. So, for example, the events B1 = bob in front of the main door of
the CILC venue, B2 = bob on the external stairs of the CILC venue, B3 = bob
in the main entrance of the CILC venue, might all be considered valid to state
that Bob reached the CILC venue. In this case, we might dene bob_on_time
= h {B1, B2, B3}, [9.00 AM, 9.20 AM] i.</p>
      <p>The event of entering together should be associated with the interval [9.00
AM, 9.20 AM], while entering alone can take place the interval (9.20 AM, 11.00
AM] for both Alice and Bob; giving up takes place when Alice realizes she is too
late; it holds in (11.00 AM, 12.00 PM].</p>
      <p>Let us suppose the following events are observed, each associated with the
time it was observed: h bob is in front of the CILC venue, 9.00 AM i, h alice
is in front of the CILC venue, 9.09 AM i, h alice and bob enter together, 9.12
AM i. If a runtime monitor were in charge of verifying the Agreement, it should
output yes after observing the events above.</p>
      <p>The sequence h bob is in front of the CILC venue, 9.00 AM i, h bob enters
the CILC venue alone, 9.05 AM i, h alice is in front of the CILC venue, 9.15
3 They are not in these examples, but Cheers = alice_says_hello : Cheers would
be a perfectly legal expression.</p>
      <p>AM i does not meet the Agreement, as Bob should not enter alone before 9.20
AM. The monitor should output no, or raise some alarm, in this case.</p>
      <p>Finally, we observe that the Agreement does not even consider the possibility
for Bob to be late. If Bob does not reach the venue in time, the monitor should
output no as well.</p>
      <p>
        In this paper we present Timed Trace Expressions, an extension of Trace
Expressions [
        <xref ref-type="bibr" rid="ref3 ref4 ref5">3,4,5</xref>
        ] with time constraints. Timed Trace Expressions can be used
to formalize the above Agreement between Bob and Alice. Given that the
theoretical underpinning of this extension is given by Interval Temporal Logic and
Metric Interval Temporal Logic, we present a survey of Temporal Logics
formalisms in Section 2. Section 3 introduces Timed Trace Expressions, and Section
4 concludes and outlines the future directions of our work.
2
      </p>
      <p>
        Background on (Interval) Temporal Logics
Many surveys on Temporal Logics exist, starting from [
        <xref ref-type="bibr" rid="ref10 ref16">10,16</xref>
        ] and moving to
more recent works like [
        <xref ref-type="bibr" rid="ref14 ref18 ref8">8,14,18</xref>
        ], which take time and intervals into account.
      </p>
      <p>
        In this section we summarize the works more relevant to ours; the survey is
driven by our goal, namely runtime verication [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] of distributed systems in
general, and of multiagent systems [
        <xref ref-type="bibr" rid="ref11 ref19 ref20">11,19,20</xref>
        ] in particular.
2.1
      </p>
      <p>
        Linear Temporal Logic, LTL
Linear Temporal Logic (LTL, [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]) does not deal with discrete time intervals,
but introducing its syntax and semantics is a step forward introducing Timed
Temporal Logic and Metric Temporal Logic in the sequel. LTL nds it main
application in model checking [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. In order to use LTL for runtime verication,
it was extended to LTL 3 [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>LTL Syntax. Let AP be a set of atomic propositions:
Where:
a 2 AP</p>
      <p>is for next</p>
      <p>S is for until
LTL formulae are evaluated on a sequence of states. Additional operators can be
obtained by combining the ones above, like the necessity and possibility modal
operators that can be expressed from a temporal point of view as:
LTL Semantics. Let be an alphabet such that = 2AP . We consider an
innite trace w = a0a1a2... 2 !. Let i be an LTL formula. By w[j...] we
identify the sux of w starting in position j, namely aj aj+1...</p>
      <p>w j= true
w j= a
w j=
w j= :
w j=
w j= 1 S
i &lt; j
1 ^ 2
i a 2 a0</p>
      <p>i w j=
i w 2
i w[1...] j=
2 i 9j
1 and w j=</p>
      <p>2
0 such that w[j...] j=
2 and w[i...] j=
1 for all 0
Paths can also satisfy the necessity and possibility operators.</p>
      <p>w j= F i 9j
w j= G i 8j
0 such that w[j...] j=
0, w[j...] j=
LTL Models. Each LTL formula provides a set of models. Given a formula
set of models can be dened as:
, its
L( ) = { w 2
! | w j=
}
This leads to the notion of equivalence between two LTL-formulae. Let
be two LTL-formulae, they are equivalent i L( ) = L( ) and we write:
and</p>
    </sec>
    <sec id="sec-2">
      <title>Limitations of LTL for Runtime Verication.</title>
      <p>quence of states observed so far, where and</p>
    </sec>
    <sec id="sec-3">
      <title>Let us consider the following seare dierent formulae:</title>
      <p>!
!
!
Does the sequence satisfy ? Given that the sequence is nite, an answer based
on Pnueli’s semantics, which takes innite sequences or paths into account, is
hard to provide: is in fact satised if, from some time point j 0 on,
becomes true. If the sequence is only a prex of a (possibly) longer sequence,
where the next states are unknown so far just because they must still be observed,
then it might be the case that , if in some successive observed state became
true. Given that runtime verication aims monitoring the behaviour of a system,
and raising errors only when these errors actually took place, the correct answer
to the question above in a runtime verication setting would be it might, or it
might not.... In other words, the verdict is inconclusive.</p>
      <p>
        LTL3 has been proposed by Bauer, Leucker, Schallhart [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] in order to make
LTL suitable for runtime verication. As discussed in the sequel, LTL 3 is dened
on nite traces and its semantics is dierent from the LTL one since three truth
values are used: true, f alse and inconclusive.
2.2
      </p>
      <p>Three-Valued LTL
Three-Valued Semantics Introduction. Let w be a nite word and a property.
We can distinguish three situations according to what we can prove from w:
holds always, even if we do not know the behaviour of the system in the
future. We can evaluate on the nite word w to true (&gt;).</p>
      <p>will not hold in any scenario. We can evaluate on the nite word
f alse (?).</p>
      <p>Neither true nor f alse values can be determined for . We say that
nite word w is inconclusive (?)
on the
w to
Monitors. Given the LTL3 logics, we can dene runtime monitors that evaluate
nite portions ( prexes ) of innite traces. The next elements of a given prex are
called continuations ; the three-valued semantics can be formally dened in terms
of prexes and continuations. A monitor able to evaluate a given LTL 3 formula
on a nite prex can be implemented as a Finite State Machine with only three
output symbols that correspond to the three truth values. The prexes will be
evaluated as good or bad leading respectively to true and f alse, in the other
cases they will be considered inconclusive.
2.3</p>
      <p>
        Real-Time Setting
Runtime verication can be applied to systems that emit events at specic time
points. These event-triggered systems are characterized by time-stamps
associated with the events. A run of such a system leads to a timed word where each
element belongs to x IR 0. In order to cope with timed words, we need a
logic whose semantics is able to express their properties. We will consider
Metric Temporal Logic as an example of Timed Linear Temporal Logic [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] which
is a variant of LTL.
      </p>
      <p>
        Timed Words. We can write a formal denition for timed words following from
[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. A timed word w over the alphabet is a sequence ( a0, t0)(a1, t1)... where
each (ai, ti) is a timed event 2 x IR 0 such that:
8i 2 N we have that ti &lt; ti+1 (strict monotonicity )
if w is innite, 8t 2 IR 0 9i 2 N with ti &gt; t (progress )
Starting from the considerations we made in the previous sections, we need to
deal with innite words. In case of a nite timed word w = (a0, t0)(a1, t1)...(ai,
ti), its continuations are the timed words that start with ( ai+1, ti+1) such that
ti+1 &gt; ti
Where. Timed logics are useful every time the crucial point of the analysis is the
time. For example we can consider a distributed, asynchronous system in which
we want to model not only the single elements but also the whole system.
2.4
      </p>
      <p>Metric Temporal Logic
In this section we introduce Metric Temporal Logic (MTL) and Metric Interval
Temporal Logic (MITL) as examples of timed logics. Many logics of this kind
exist but we selected these since they are the simplest timed counterparts of
LTL. As we will see, LTL and MTL share many underlying notions.
MTL Syntax. Let AP be a set of atomic propositions, MTL formulae are built
as:
Where a 2 AP and S is the until operator we saw before.</p>
      <p>We can see that MTL syntax is very similar to the LTL one. The big
dierence lies inside I which is a an interval that can be open, closed or half open.
We have that I R 0 whose left and right arguments belong to N [ {1}. If
we consider:
::=
we assume that I = [0, 1) which is the case of LTL formulae. Also in this case
we can derive the usual next, always and eventually operators constrained by
the intervals:</p>
      <p>I
F I
G I
=
=
? SI
I
I
&gt; SI
: I :
MTL Semantics. MTL semantics can be point-based or continuous. The rst
one is applied when we deal with timed events (which is our case of study) while
the other is applied considering signals.</p>
      <p>We have to recall LTL Semantics and Timed Words. We report only the
semantics for the until operator for the sake of simplicity since the semantics is
very similar to the LTL one.</p>
      <p>Let = ( , ) be a timed word (where = 1 2::: is a non-empty nite or
innite word and = 1 2::: is a time sequence of the same length such that
each couple ( i; i) is a timed event) and a MTL formula. The satisfaction
relation j= is dened as (for until operator):</p>
      <p>j= 1 SI 2 i 9j such that 0 &lt; j &lt; | |, [j...] j=
that 0 &lt; k &lt; j and ( j - 0) 2 I
2, [k...] j=
1 8k such
MTL Models. Each MTL formula denes a set of models that can be classied
according to their length. Let be a MTL formula. The set of nite models is
dened as:</p>
      <p>Lf ( ) = {
The set of innite models is dened in the same way and is denoted by L!( ).</p>
      <p>
        Recalling the properties stated in Section 2.3, the dierence between the two
sets is that all the innite words satisfy both monotonicity and progress while
the nite ones only monotonicity.
Metric Interval Temporal Logic shares both the syntax and the semantics with
MTL so we can say that it is a sort of restricted MTL. The dierence is that we
add the constraint on time intervals, in particular to what is called punctuality.
Let SI be the until operator and I = [a, b] with a, b 2 R 0. We impose that b
&gt; a so we cannot have I = [a, a]. MITL [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] was introduced since MTL models
cannot be translated into automata, as we did for LTL. In this case we can
introduce Timed Bchi Automata in which we have to add time constraints.
Timed Bchi Automaton. A Timed Bchi Automaton, TBA, in an extension of
[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] in which we add clock constraints .
      </p>
    </sec>
    <sec id="sec-4">
      <title>Denition (Clock Constraints)</title>
    </sec>
    <sec id="sec-5">
      <title>A clock constraint is a conjunctive formula</title>
      <p>x ./ a</p>
    </sec>
    <sec id="sec-6">
      <title>Where:</title>
      <p>x is a clock
a is a constant
./ 2 {&lt;, &gt;, ,</p>
      <p>}
More formally, a TBA is a tuple ( S, S0, X, I, E, F , AP , L) where:</p>
    </sec>
    <sec id="sec-7">
      <title>S is a set of states</title>
      <p>S0 is a set of initial states such that S0 S
X is a set of clocks
I: S ! X is a map that labels states into sets of clock constraints
E S x X x 2X x S is a set of transitions
F S is the set of nal states
AP is the set of atomic propositions</p>
      <p>L is a function that labels each state with a subset of AP
So a state is a pair (s, v) with s 2 S and v is a clock valuation that satises the
constraints I(s). In order to change state a timed event has to satisfy at least
one clock constraint dened in the set of transitions E; the transition leads to
a new state that satises its set of constraints specied by I. We can recall the
concept of accepting run we saw before.</p>
      <p>
        Where. MITL is used for model checking. Given a multi-agent system, we can
model each agent with timed runs. We can also model the whole system through
a collective run [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
In this section we discuss how to extend Trace Expressions with time intervals.
We rst summarize the Trace Expressions formalism, and then we present its
extension, along with examples.
3.1
      </p>
      <p>
        Trace Expressions
Trace expressions [
        <xref ref-type="bibr" rid="ref3 ref4 ref5">3,4,5</xref>
        ] are based on the notions of event and event type. We
denote by E the xed universe of events subject to monitoring. An event trace
over E is a possibly innite sequence of events in E , and a trace expression over
E denotes a set of event traces over E . Trace expressions are built on top of event
types (chosen from a set E T ), each specifying a subset of events in E . A trace
expression 2 T represents a set of possibly innite event traces, and is dened
on top of the following operators, some of which have already been introduced
in Section 1:
      </p>
      <p>(empty trace), denoting the singleton set f g containing the empty event
trace .</p>
      <p>#: (prex ), denoting the set of all traces whose rst event ev matches the
event type #, and the remaining part is a trace of .</p>
      <p>1 2 (concatenation ), denoting the set of all traces obtained by concatenating
the traces of 1 with those of 2.</p>
      <p>1^ 2 (intersection ), denoting the intersection of the traces of 1 and 2.
1_ 2 (union ), denoting the union of the traces of 1 and 2.</p>
      <p>1j 2 (shue ), denoting the set obtained by shuing the traces of 1 with the
traces of 2.</p>
      <p>Trace expressions support recursion through cyclic terms expressed by nite
sets of recursive syntactic equations, as supported by modern Prolog systems.</p>
      <p>The semantics of trace expressions is specied by a transition relation
rTespeEctiveTly,. WwheewreriTte an1de!Ev de2ntootemtehaen s(et1;oefv;tra2c)e2ex;ptrhesesitornanssaitnidonof 1evee!vnts,2
expresses the property that the system under monitoring can safely move from
the state specied by 1 into the state specied by 2 when event ev is observed. A
trace expression models the current state of a protocol. Protocol state transitions
are ruled by the transition system shown in Figure 1, which dene .
3.2</p>
      <p>Timed Trace Expressions
In order to constrain the set of event traces denoted by a trace expression we
need a set of time constraints .</p>
      <p>Timed Events. In Timed Trace Expressions, events are associated with the time
when they have been observed. A timed event is represented by a couple hev; ti,
where ev is the observed event, and t is the time stamp associated with it.
(and) 1
#:
ev
!
1_ 2
ev 0
! 1
ev
! 10
1 e!v 10
ev
! 10 j 2
1_ 2
(shue-r)
( 1)</p>
      <p>2</p>
      <p>Example 1. Let us assume that we have an event a and we intend to model the
situation where a should take place two times, the rst one in the interval [0; 5)
and the second one in the interval [10; 20]. If we write a timed trace expression
in this way:</p>
      <p>A = hfag; [0; 5) [ [10; 20]i</p>
      <p>= A : A :
does not correctly model the scenario we have in mind, as the sequence ha; 1i
ha; 2i respects the formal specication, but not our intuition. We point out that
an event can belong to dierent timed event types; this leads to the following
solution:</p>
      <p>A = hfag; [0; 5)i
B = hfag; [10; 20]i</p>
      <p>= A : B :
Example 2. We consider a more sophisticated example, where the monitor can
accept an event a in dierent time intervals, and according to the timestamp of
the event the execution proceeds on a dierent branch, for example by moving
to 1 in one case, and by waiting for an event b in the second case, and then
moving to 2. The resulting timed trace expression might look like:
But this denition of is nondeterministic, as ha; 4i, as well as ha; 17i might
both be accepted to move either in 1 or in B : 2. We must rewrite the trace
expressions as follows, by creating a new timed event type:</p>
      <p>A = hfag; [2; 7) [ (15; 20]i</p>
      <p>B = hfbg; [0; 1)i
= A : 1 _ A : B : 2
1 = ...something...
2 = ...something...</p>
      <p>A = hfag; [2; 7)i
B = hfbg; [0; 1)i
C = hfag; (15; 20]i
= A : 1 _ C : B : 2
1 = ...something...</p>
      <p>2 = ...something...</p>
      <p>In this case, if the monitor observes the event a with timestamp t
rightmost branch must be selected to continue the monitoring.
16, the
Example 3. Finally, we can note that a trace expression might be
unsatisable, in the sense that no actual trace of timed events can meet the specication
given by . The following simple trace exemplies this situation.</p>
      <p>A = hfag; [5; 9)i
B = hfbg; [0; 3)i</p>
      <p>= A : B :
In this trace, the temporal constraints are not consistent with respect to the
properties of timed words such as monotonicity ; the : operator forces a to take
place before b, but the intervals associated with A and B make this structural
property of not satisable.</p>
      <p>
        Discussion: limitations of Timed Trace Expressions. Examples 1 and 2 show
that the simple formalization that may come to the mind of the trace expression
designer to meet some informal specication, may easily turn out to be the
wrong one. The burden of ensuring that dierent instances of the same event
that must take place in dierent intervals are modelled by distinct event types,
insists entirely on the designer’s shoulders. When timed trace expressions are
more complex than those shown in this paper, and when they are dened in a
recursive way, the correct formalization may be dicult to specify. One possible
solution to overcome this problem, could be to associate intervals with sub-traces,
rather that with event types. In fact, intervals associated with event types have
a global scope, but in some cases it might be more convenient to have intervals
with a local scope. This extension, however, would require to change the syntax
of trace expressions (while so far we only changed the syntax of events and event
types), by introducing an explicit notion of scope of an interval, as we did with
parametric trace expressions [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] for the notion of scope of a parameter. This
would also require a change in the semantics.
      </p>
      <p>The other feature that we point out, is the ability to write timed trace
expressions which are useless, as their structure is non compliant with the temporal
constraints therein. Given that the monitoring engine for timed trace
expressions is implemented in SWI Prolog 4, we are exploring the possibility to exploit
the support that SWI Prolog oers to constraint logic programming 5, to detect
these design errors at compile time.
4</p>
      <p>
        Conclusions and Future Work
Dierent techniques exist for denition, model checking and runtime verication
of complex, distributed systems where time plays a crucial role, such as
Temporal Logics. Interval Temporal Logic is one of the rst formalisms that had an
impact in the Multiagent System research eld even if it was born for hardware
reasoning. As the name suggests, the time is specied in terms of intervals. On
the other hand, Linear Temporal Logic is a kind of modal logic that can be used
for specifying temporal properties of the systems. It was proposed for formal
verication by Amir Pnueli [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and it was extended to LTL 3 by Bauer, Leucker,
Schallhart [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] for runtime verication.
      </p>
      <p>
        In real-time systems it is likely that time bounded properties must be
specied: Timed Linear Temporal Logic was proposed by Raskin [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] and it is the
counterpart of LTL for timed words. As for LTL, Timed LTL can be extended for
runtime verication (TLTL 3, [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]). Metric Temporal Logic is another example of
Timed Logic: a subset of MTL, which is called Metric Interval Temporal Logic,
is usually considered due to its good decidability properties.
      </p>
      <p>In this paper we have applied the ideas supported by the logics above to the
Trace Expressions formalism, resulting into Timed Trace Expressions.
4 http://www.swi-prolog.org/, accessed on March 25, 2019.
5 http://www.swi-prolog.org/pldoc/man?section=clp, accessed on March 25, 2019.</p>
      <p>
        Our future directions of research are related with overcoming the limitations
discussed in Section 3. Besides this, in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] we demonstrated that an LTL formula
(with LTL3 semantics) can be translated into an equivalent Trace Expression
passing through the concept of Bchi Automaton. We aim at investigating if the
same procedure can be applied to TLTL 3 and Timed Trace Expressions through
Timed Bchi Automata.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>R.</given-names>
            <surname>Alur</surname>
          </string-name>
          and
          <string-name>
            <given-names>D. L.</given-names>
            <surname>Dill</surname>
          </string-name>
          .
          <article-title>A theory of timed automata</article-title>
          .
          <source>Theor. Comput. Sci.</source>
          ,
          <volume>126</volume>
          (
          <issue>2</issue>
          ):
          <fpage>183235</fpage>
          ,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>R.</given-names>
            <surname>Alur</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Feder</surname>
          </string-name>
          , and
          <string-name>
            <given-names>T. A.</given-names>
            <surname>Henzinger</surname>
          </string-name>
          .
          <article-title>The benets of relaxing punctuality</article-title>
          . In L. Logrippo, editor,
          <source>Proceedings of the Tenth Annual ACM Symposium on Principles of Distributed Computing</source>
          , Montreal, Quebec, Canada,
          <source>August 19-21</source>
          ,
          <year>1991</year>
          , pages
          <fpage>139152</fpage>
          . ACM,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>D.</given-names>
            <surname>Ancona</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrando</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Franceschini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>V.</given-names>
            <surname>Mascardi</surname>
          </string-name>
          .
          <article-title>Parametric trace expressions for runtime verication of Java-like programs</article-title>
          .
          <source>In FTfJP@ECOOP</source>
          , pages
          <volume>10</volume>
          :
          <article-title>110:6</article-title>
          . ACM,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>D.</given-names>
            <surname>Ancona</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrando</surname>
          </string-name>
          , and
          <string-name>
            <given-names>V.</given-names>
            <surname>Mascardi</surname>
          </string-name>
          .
          <article-title>Comparing trace expressions and linear temporal logic for runtime verication</article-title>
          .
          <source>In Theory and Practice of Formal Methods</source>
          , volume
          <volume>9660</volume>
          <source>of LNCS</source>
          , pages
          <fpage>4764</fpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>D.</given-names>
            <surname>Ancona</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrando</surname>
          </string-name>
          , and
          <string-name>
            <given-names>V.</given-names>
            <surname>Mascardi</surname>
          </string-name>
          .
          <article-title>Parametric runtime verication of multiagent systems</article-title>
          . In K. Larson,
          <string-name>
            <given-names>M.</given-names>
            <surname>Winiko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Das</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and E. H.</given-names>
            <surname>Durfee</surname>
          </string-name>
          , editors,
          <source>Proceedings of the 16th Conference on Autonomous Agents and MultiAgent Systems</source>
          , AAMAS 2017,
          <string-name>
            <given-names>Sªo</given-names>
            <surname>Paulo</surname>
          </string-name>
          , Brazil, May 8-
          <issue>12</issue>
          ,
          <year>2017</year>
          , pages
          <fpage>14571459</fpage>
          . ACM,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>C.</given-names>
            <surname>Baier</surname>
          </string-name>
          and
          <string-name>
            <given-names>J.-P.</given-names>
            <surname>Katoen</surname>
          </string-name>
          .
          <article-title>Principles of model checking</article-title>
          . MIT press,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>A.</given-names>
            <surname>Bauer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Leucker</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Schallhart</surname>
          </string-name>
          .
          <article-title>Runtime verication for LTL and TLTL</article-title>
          .
          <source>ACM Trans. Softw</source>
          . Eng. Methodol. ,
          <volume>20</volume>
          (
          <issue>4</issue>
          ):
          <volume>14</volume>
          :
          <fpage>114</fpage>
          :
          <fpage>64</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>P.</given-names>
            <surname>Bellini</surname>
          </string-name>
          .
          <article-title>Interval temporal logic for real-time systems: Specication, execution and verication processes</article-title>
          .
          <source>PhD. Thesis</source>
          , University of Florence, Italy,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>J. R.</given-names>
            <surname>Bchi</surname>
          </string-name>
          .
          <article-title>On a decision method in restricted second order arithmetic</article-title>
          .
          <source>In Proceedings of the International Congress on Logic, Methodology and Philosophy of Science</source>
          . Stanford University Press,
          <year>1962</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. T. A.
          <string-name>
            <surname>Henzinger</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          <string-name>
            <surname>Manna</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Pnueli</surname>
          </string-name>
          .
          <article-title>Timed transition systems</article-title>
          . In J. W. de Bakker,
          <string-name>
            <given-names>C.</given-names>
            <surname>Huizing</surname>
          </string-name>
          , W. P. de Roever, and G. Rozenberg, editors,
          <source>Real-Time: Theory in Practice</source>
          , REX Workshop, Mook, The Netherlands, June 3-7,
          <year>1991</year>
          , Proceedings, volume
          <volume>600</volume>
          of Lecture Notes in Computer Science , pages
          <fpage>226251</fpage>
          . Springer,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>N. R.</given-names>
            <surname>Jennings</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. P.</given-names>
            <surname>Sycara</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Wooldridge</surname>
          </string-name>
          .
          <article-title>A roadmap of agent research and development</article-title>
          .
          <source>Autonomous Agents and Multi-Agent Systems</source>
          ,
          <volume>1</volume>
          (
          <issue>1</issue>
          ):
          <fpage>738</fpage>
          ,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>M.</given-names>
            <surname>Leucker</surname>
          </string-name>
          and
          <string-name>
            <given-names>C.</given-names>
            <surname>Schallhart</surname>
          </string-name>
          .
          <article-title>A brief account of runtime verication</article-title>
          .
          <source>The Journal of Logic and Algebraic Programming</source>
          ,
          <volume>78</volume>
          (
          <issue>5</issue>
          ):
          <fpage>293303</fpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>A.</given-names>
            <surname>Nikou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Tumova</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. V.</given-names>
            <surname>Dimarogonas</surname>
          </string-name>
          .
          <article-title>Cooperative task planning of multiagent systems under timed temporal specications</article-title>
          .
          <source>In 2016 American Control Conference, ACC 2016</source>
          , Boston, MA, USA, July 6-
          <issue>8</issue>
          ,
          <year>2016</year>
          , pages
          <fpage>71047109</fpage>
          . IEEE,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>J.</given-names>
            <surname>Ouaknine</surname>
          </string-name>
          and
          <string-name>
            <surname>J. Worrell.</surname>
          </string-name>
          <article-title>Some recent results in metric temporal logic</article-title>
          . In F. Cassez and C. Jard, editors,
          <source>Formal Modeling and Analysis of Timed Systems</source>
          , 6th International Conference, FORMATS 2008,
          <string-name>
            <surname>Saint</surname>
            <given-names>Malo</given-names>
          </string-name>
          , France,
          <source>September 15- 17</source>
          ,
          <year>2008</year>
          . Proceedings, volume
          <volume>5215</volume>
          of Lecture Notes in Computer Science , pages
          <fpage>113</fpage>
          . Springer,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>A.</given-names>
            <surname>Pnueli</surname>
          </string-name>
          .
          <article-title>The temporal logic of programs</article-title>
          .
          <source>In Proceedings of the 18th Annual Symposium on Foundations of Computer Science (FOCS'77)</source>
          , pages
          <fpage>4657</fpage>
          . IEEE Comp. Soc. Press,
          <year>1977</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>A.</given-names>
            <surname>Pnueli</surname>
          </string-name>
          .
          <article-title>Applications of temporal logic to the specication and verication of reactive systems: A survey of current trends</article-title>
          . In J. W. de Bakker, W. P. de Roever, and G. Rozenberg, editors,
          <source>Current Trends in Concurrency, Overviews and Tutorials</source>
          , volume
          <volume>224</volume>
          of Lecture Notes in Computer Science , pages
          <fpage>510584</fpage>
          . Springer,
          <year>1986</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>J.-F. Raskin</surname>
          </string-name>
          .
          <article-title>Logics, automata and classical theories for deciding real-time</article-title>
          .
          <source>PhD. Thesis</source>
          , FacultØs universitaires Notre-Dame de la Paix, Namur,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <given-names>F.</given-names>
            <surname>Wang</surname>
          </string-name>
          .
          <article-title>Formal verication of timed systems: A survey and perspective</article-title>
          .
          <source>Proceedings of the IEEE</source>
          ,
          <volume>92</volume>
          (
          <issue>8</issue>
          ):
          <fpage>12831305</fpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <given-names>M.</given-names>
            <surname>Wooldridge</surname>
          </string-name>
          and
          <string-name>
            <surname>N. R</surname>
          </string-name>
          . Jennings, editors.
          <source>Intelligent Agents, ECAI-94 Workshop on Agent Theories</source>
          , Architectures, and
          <string-name>
            <surname>Languages</surname>
          </string-name>
          , Amsterdam, The Netherlands,
          <year>August</year>
          8-
          <issue>9</issue>
          ,
          <year>1994</year>
          , Proceedings, volume
          <volume>890</volume>
          of Lecture Notes in Computer Science . Springer,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <given-names>M.</given-names>
            <surname>Wooldridge</surname>
          </string-name>
          and
          <string-name>
            <given-names>N. R.</given-names>
            <surname>Jennings</surname>
          </string-name>
          .
          <article-title>Intelligent agents: theory and practice</article-title>
          .
          <source>Knowledge Eng. Review</source>
          ,
          <volume>10</volume>
          (
          <issue>2</issue>
          ):
          <fpage>115152</fpage>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>