Concurrency and Computation (John Wiley & Sons, 2005)