Errata for Distributed Algorithms: An Intuitive Approach (1st edition) • p2: S1 \S1 → S1 \S2 • p45: integer color and value → integer value and color • p60: hrequest, xi → hrequest, si (Reported by Jacco van Splunter, September 2016) • p63: Then q sends hreverse, k, truei to p. → Then q sends hreverse, k, bi to p, where b = true if and only if q received a message hreverse, k + 1, truei. before sending hreverse, k 0 , truei to its new parent. → before sending hreverse, k 0 , bi to its new parent, where b = true if and only if q received a message hreverse, k 0 + 1, truei. • p84: channels pr and ps are tested (in this order) → channels ps and pr are tested (in this order) • p91: returns to p with Boolean true → returns to p with Boolean false • p118: p2 sends nack to p0 , and moves to round 2. → p2 sends nack to p1 , and moves to round 2. (Reported by Floris Kroon, December 2015) • p125: The arrow heads in the three pictures should be omitted. • p140: asking permission from p → asking permission from r • p195: if recorded p = true then → counter p [c0 ] ← counter p [c0 ] − 1; if recorded p = true then counter p [c0 ] ← `; → counter p [c0 ] ← counter p [c0 ] + `; (Reported by Tobias Kappé, December 2014) • p205: if Ack p = ∅ then send hreverse, k, truei to q; → if Ack p = ∅ then send hreverse, k, falsei to q; 1 • p205: else if k mod ` 6= 0 → else if k > dist p or k mod ` 6= 0 • p208: At the end of the procedure FindMinimalOutgoing p , add if counter p = |{r ∈ Neighbors p | state p [r] = branch}| then perform procedure SendReport p (Reported by Tobias Kappé, December 2014) • p213: The four lines below “send hpermissioni to pj ;” should be placed within an if statement: if pj ∈ / Requests i ; 2

© Copyright 2021 Paperzz