
P1: IML
MOBK015-05 MOBK015-Lynch.cls April 1, 2006 17:2
58 THEORY OF TIMED I/O AUTOMATA
Invariant 5: In any reachable state x of C, at any time t ∈ T, for any i ∈{1, 2, 3},
|x(
CS
i
.logclock) − t|≤t ×r.
Finally, we state a property about the agreement of logical clocks in C. It says that the
difference between two logical clocks is always bounded by a constant (which depends on the
message-sending interval and the bounds on clock drift and message delay).
Invariant 6: In any reachable state x of C, for all i, j ∈{1, 2, 3},
|x(
CS
i
.logclock) − x(CS
j
.logclock)|≤u + (b × (1 +r)).
To see why Invariant 6 holds, fix j to be a process with the largest physical clock in x,
and fix i to be any other process. Let v
j
, v
i
be the logical clock values of j and i respectively
in state x. Note that v
j
is also the physical clock value of j in x. By Invariant 3, we know that
v
i
≤ v
j
. To show Invariant 6, it suffices to show that v
j
− v
i
≤ u + (b × (1 + r)).
Let α be a finite execution that leads to state x. There are two cases to consider.
1. Some message sent by j arrives at i in α. Consider the last such message and let v
1
be the
value that it contains. Let v
2
be the newly adjusted logical clock value of i immediately
after the message arrives. We know that v
i
≥ v
2
≥ v
1
.
If j sends a later message to i in α, then it sends the next later message when
its physical clock has value v
1
+ u. By assumption, this message does not arrive at i.
Therefore, the real time that elapses after sending it must be at most
b. It follows that
the physical clock increase of j since sending this message is at most
b × (1 + r) and
so v
j
≤ v
1
+ u + b × (1 + r). On the other hand, if j does not send a later message
to i in α, then v
j
≤ v
1
+ u. In either case, we have v
j
≤ v
1
+ u + b × (1 + r). Since
v
i
≥ v
1
, we have v
j
− v
i
≤ u + b × (1 + r), as needed for Invariant 6.
2. No message sent by j arrives at i in α. Since the first send occurs at time 0 and
b
is the largest possible communication delay, the fact that i has not received the first
message sent by j at time 0 implies that t ≤
b. Since both clocks start at 0, we have
v
j
≤ b × (1 + r) and v
i
≥ 0. Therefore, v
j
− v
i
≤ u + b × (1 + r), which suffices for
Invariant 6.
5.1.2 Substitutivity Results
Theorem 5.4, which relates the set of traces of a composed automaton to the set of traces of
component automata, is fundamental for compositional reasoning. We now introduce another
important class of results, substitutivity results, that are useful for decomposing verification of
composite automata. These results are best understood by viewing one of the components of a
composition as the system and the other as the environment with which the system interacts.