This is a list of the known errors, and their corrections, for the second edition of Distributed Computing: Fundamentals, Simulations, and Advanced Topics.
Page and line numbers are used to identify the location of the error; a negative line number means counting from the bottom up. The first person to report the error is credited.
Send corrections to hagit@cs.technion.ac.il or welch@cs.tamu.edu .
Page 18, line 5: (Panagiota Fatourou)
Change
in round t
to
by time t
Page 81, Figure 4.8:
The label p_j-only applies to pi (twice), and not to tau,
as stated.
Page 121, Exercise 5.9:
Construct the execution for n = 8 and f = 2.
Page 98, Figure 5.3: (Christian Walter)
In the second extension, alpha_k^j, p_j fails to send to q_1, ... , q_j
(and not q_1, ... , q_i, as shown).
Page 371, line 2 (signature of procedure safe-phase): (Michel Raynal)
Reverse the order of the parameters to procedure safe-phase. I.e., change
value x, integer r
to
integer r, value x
Page 371, Algorithm 59:
The five references to R_j in lines 5-9 do not
need to be five separate reads of R_j: it is sufficient to
read R_j once during this for loop and save the value in
a local variable. However, the read of R_j in line 12 must
be a separate read.
Page 371, line 5 of Algorithm 59:
Change
R_j.phase-tag
to
R_j.phase
Page 373, line -2:
Change
according to R_i.phase
to
according to the local r variable
Page 374, line 7 of Algorithm 60:
Change
R_c.phase >= r
to
R_c.phase > r
Page 374, line -7: (Michel Raynal)
Change
n <= n/2
to
n <= 2f