An introduction to distributed algorithms - Barbosa, Valmir C. (MIT Press, 1996)