Chapter 38 Game theoretic aspects of computing This chapter discusses the game theoretic aspects of computing. Game theorists would probably favor stochastic models of failure. There is a great need for interesting theories on fault tolerant computing where failures occur at random. A distributed system consists of a large number of loosely coupled computing devices (processors) which together perform some computation. One of the earliest general problems in the theory of distributed processing was how to establish consensus in a network of processors where faults may occur. The basic question of this type came to be known as the Byzantine Agreement problem. An overall description of the Byzantine Agreement problem that game theorists may find natural is how to establish common knowledge in the absence of a mechanism that can guarantee reliable information passing. In known examples where a problem is solved by turning some fact into common knowledge (e.g. in the betraying wives puzzle) there is an instance where all parties involved are situated in one location and the pertinent fact is being announced thus becoming common knowledge. Interesting and largely unexplored connections with game theory arise in complexity theory. Various measures for the computational complexity of functions are considered in this area some of which are defined in terms of certain cooperative games.