Many aspects of the internal and external workings of computers can be viewed as a series of communication processes. Communication complexity is the mathematical theory of such communication processes. It is also often used as an abstract model of other aspects of computation. This book surveys thi[...]