The communication complexity of two-party protocols is an only 15 years old complexity measure, but it is already considered to be one of the fundamen- tal complexity measures of recent complexity theory. Similarly to Kolmogorov complexity in the theory of sequential computations, communication complex- ity is used as a method for the study of the complexity of concrete computing problems in parallel information processing. Especially, it is applied to prove lower bounds that say what computer resources (time, hardware, memory size) are necessary to compute the given task. Besides the estimation of the compu- tational difficulty of computing problems the proved lower bounds are useful for proving the optimality of algorithms that are already designed. In some cases the knowledge about the communication complexity of a given problem may be even helpful in searching for efficient algorithms to this problem.
The study of communication complexity becomes a well-defined indepen- dent area of complexity theory. In addition to a strong relation to several funda- mental complexity measures (and so to several fundamental problems of com- plexity theory) communication complexity has contributed to the study and to the understanding of the nature of determinism, nondeterminism, and random- ness in algorithmics. There already exists a non-trivial mathematical machinery to handle the communication complexity of concrete computing problems, which gives a hope that the approach based on communication complexity will be in- strumental in the study of several central open problems of recent complexity theory.
1 Introduction
1.1 Motivation and Aims
1.2 Concept and Organization
1.3 How to Read the Book
2 Communication Protocol Models
2.1 Basic Notions
2.1.1 Introduction
2.1.2 Alphabets, Words, and Languages
2.1.3 Boolean Functions and Boolean Matrices
2.1.4 Representation of Computing Problems
2.1.5 Exercises
2.2 Communication Complexity According to a Fixed Partition
2.2.1 Definitions
2.2.2 Methods for Proving Lower Bounds
2.2.3 Theoretical Properties of Communication Complexity According to a Fixed Partition
2.2.4 Exercises
2.2.5 Research Problems
2.3 Communication Complexity
2.3.1 Introduction
2.3.2 Definitions
.2.3.3 Lower Bound Methods
2.3.4 Theoretical Properties of Communication Complexity
2.3.5 Communication Complexity and Chomsky Hierarchy
2.3.6 Exercises
2.3.7 Research Problems
2.4 One-Way Communication Complexity
2.4.1 Introduction
2.4.2 Definitions
2.4.3 Methods for Proving Lower Bounds
2.4.4 Communication Complexity Versus One-way Communication Complexity
2.4.5 Exercises
2.4.6 Research Problems
2.5 Nondeterministic Communication Complexity and Randomized Protocols
2.5.1 Introduction
2.5.2 Nondeterministic Protocols
2.5.3 Lower Bounds on Nondeterministic Communication Complexity
2.5.4 Deterministic Protocols Versus Nondeterministic Protocols
2.5.5 Randomized Protocols
2.5.6 Randomness Versus Nondeterminism and Determinism
2.5.7 Exercises
2.5.8 Research problems
2.6 An Improved Model of Communication Protocols
2.6.1 Introduction
2.6.2 Definitions
2.6.3 Lower Bound Methods
2.6.4 Communication Complexity Versus s-communication Complexity
2.6.5 Some Properties of s-communication Complexity
2.6.6 Exercises
2.6.7 Problems
2.7 Bibliographical Remarks
3 Boolean Circuits
3.1 Introduction
3.2 Definitions and Fundamental Properties
3.2.1 Introduction
3.2.2 Boolean Circuit Models
3.2.3 Fundamental Observations
3.2.4 Exercises
3.3 Lower Bounds on the Area of Boolean Circuits
3.3.1 Introduction
3.3.2 Definitions
3.3.3 Lower Bounds on the Area Complexity Measures
3.3.4 A Comparison of two Area Complexity Measures
3.3.5 Three-Dimensional Layout
3.3.6 Exercises
3.3.7 Problems
3.4 Topology of Circuits and Lower Bounds
3.4.1 Introduction
3.4.2 Separators
3.4.3 Lower Bounds on Boolean Circuits with a Sublinear Separator
3.4.4 Circuit Structures for Which Communication Complexity Does Not Help
3.4.5 Planar Boolean Circuits
3.4.6 Exercises
3.4.7 Problems
3.5 Lower Bounds on the Size of Unbounded Fan-in Circuits
3.5.1 Introduction
3.5.2 Method of Communication Complexity of Infinite Bases
3.5.3 Unbounded Fan-in Circuits with Sublinear Vertex-Separators
3.5.4 Exercises
3.5.5 Problems
3.6 Lower Bounds on the Depth of Boolean Circuits
3.6.1 Introduction
3.6.2 Monotone Boolean Circuits
3.6.3 Communication Complexity of Relations
3.6.4 Characterizations of Circuit Depth by the Communication Complexity of Relations
3.6.5 Exercises
3.6.6 Research Problems
3.7 Bibliographical Remarks
4 VLSI Circuits and Interconnection Networks
4.1 Introduction
4.2 Definitions
4.2.1 Introduction
4.2.2 A VLSI circuit Model
4.2.3 Complexity Measures
4.2.4 Probabilistic Models
4.2.5 Exercises
4.3 Lower Bounds on VLSI Complexity Measures
4.3.1 Introduction
4.3.2 Lower Bounds on Area Complexity
4.3.3 Lower Bounds on Tradeoffs of Area and Time
4.3.4 VLSI circuits with Special Communication Structures
4.3.5 Exercises
4.3.6 Problems
4.4 Interconnection Networks
4.4.1 Introduction
4.4.2 A Model of Interconnection Networks
4.4.3 Separators arid Lower Bounds
4.4.4 Exercises
4.4.5 Problems
4.5 Multilective VLSI circuits
4.5.1 Introduction and Definitions
4.5.2 Multilectivity Versus Semilectivity
4.5.3 Lower Bounds on Multilective VLSI programs
4.5.4 Exercises
4.5.5 Problems
4.6 Bibliographical Remarks
5 Sequential Computations
5.1 Introduction
5.2 Finite Automata
5.2.1 Introduction
5.2.2 Definitions
5.2.3 One-Way Communication Complexity and Lower Bounds on the Size of Finite Automata
5.2.4 Uniform Protocols
5.2.5 Exercises
5.2.6 Research Problems
5.3 Turing Machines
5.3.1 Introduction
5.3.2 Time Complexity of Classical Turing Machines
5.3.3 Sequential Space and Time-Space Complexity
5.3.4 Exercises
5.3.5 Research Problems
5.4 Decision Trees and Branching Programs
5.4.1 Introduction
5.4.2 Definitions
5.4.3 Capacity of Branching Programs
5.4.4 Lower Bounds on the Depth of Decision Trees
5.4.5 Exercises
5.4.6 Research Problems
5.5 Bibliographical Remarks
References
Index
The communication complexity of two-party protocols is an only 15 years old complexity measure, but it is already considered to be one of the fundamen- tal complexity measures of recent complexity theory. Similarly to Kolmogorov complexity in the theory of sequential computations, communication complex- ity is used as a method for the study of the complexity of concrete computing problems in parallel information processing. Especially, it is applied to prove lower bounds that say what computer resources (time, hardware, memory size) are necessary to compute the given task. Besides the estimation of the compu- tational difficulty of computing problems the proved lower bounds are useful for proving the optimality of algorithms that are already designed. In some cases the knowledge about the communication complexity of a given problem may be even helpful in searching for efficient algorithms to this problem.
The study of communication complexity becomes a well-defined indepen- dent area of complexity theory. In addition to a strong relation to several funda- mental complexity measures (and so to several fundamental problems of com- plexity theory) communication complexity has contributed to the study and to the understanding of the nature of determinism, nondeterminism, and random- ness in algorithmics. There already exists a non-trivial mathematical machinery to handle the communication complexity of concrete computing problems, which gives a hope that the approach based on communication complexity will be in- strumental in the study of several central open problems of recent complexity theory.
This book presents the basic concepts in the study of communication com-plexity and in its application in proving lower bounds on distinct fundamental complexity measures. In the applications we focus on the complexity measures of realistic, parallel computing models like combinational (Boolean) circuits, VLSI circuits and interconnection networks. The book is written at a level ac- cessible to advanced undergraduates and to graduate students. Since it gives a survey on the study of communication complexity and formulates a lot of research problems we expect it will also prove to be a reference for researchers in this area.
First of all I would like to thank Grzegorz Rozenberg and Atto Salomaa, who encouraged me to write this book, and to Burkhard Monien and Wolfgang Thomas for the good working atmosphere in Paderborn and Kiel during the work on the book. I am indebted to Ingeborg Mayer, Andrew Ross and Hans Wossner of Springer-Verlag for their editorial help, comments and suggestions which essentially contributed to the quality of the presentation of the book.
I am grateful for the comments and materials received from several people, including Ivana Cerna, Josef Gruska, Ivana HSltring, Oliver Matz, Dana Par- dubska, Anna Slobodova, Ondrej Sykora, Imrich Vrto, Juraj Waczulik, and Avi Wigderson. Special thanks go to Martin Dietzfelbinger and Georg Schnitger for an intensive research cooperation, which during the work on the book led to the solutions of some open problems enabling to present a complete picture of some research directions on communication complexity in this book. I would like to thank Sebastian Seibert for carefully reading of the whole manuscript. I am indebted to Heidi Luca-Gottschalk, Oliver Matz, Walter Unger, and Thomas Wilke for the help with LaTeX and to Marion Kiipper and Gerti Rosenfeld for typing some parts of the manuscript.
My deepest thanks go to Tanja, not only for carefully typing of several parts of this book.
Kiel, January 1997 Juraj Hromkovic