Lably
Skip to content

Communication complexity

Complexity of sending information in a distributed algorithm

  • 18 min read
  • 8 chapters

Related on Lably

Through Distributed computing, Communication and Function (mathematics)

While Alice and Bob can always succeed by having Bob send his whole n-bit string to Alice (who then computes the function f), the idea here is to find clever ways of calculating f with fewer than n bits of communication. Note that, unlike in computational complexity theory, communication complexity is not concerned with the amount of computation performed by Alice or Bob, or the size of the memory used, as we generally assume nothing about the computational power of either Alice or Bob.

This abstract problem with two parties (called two-party communication complexity), and its general form with more than two parties, is relevant in many contexts. In VLSI circuit design, for example, one seeks to minimize energy used by decreasing the amount of electric signals passed between the different components during a distributed computation. The problem is also relevant in the study of data structures and in the optimization of computer networks. For surveys of the field, see the textbooks by Rao & Yehudayoff (2020) and Kushilevitz & Nisan (2006).

Formal definition

Let f:X×Y→Z where we assume in the typical case that X=Y={0,1}n and Z={0,1}. Alice holds an n-bit string x∈X while Bob holds an n-bit string y∈Y. By communicating to each other one bit at a time (adopting some communication protocol that is agreed upon in advance), Alice and Bob wish to compute the value of f(x,y) such that at least one party knows the value at the end of the communication. At this point the answer can be communicated back so that at the cost of one extra bit, both parties will know the answer. The worst case communication complexity of this communication problem of computing f, denoted as D(f), is then defined to be

D(f)= minimum number of bits exchanged between Alice and Bob in the worst case.

As observed above, for any function f:{0,1}n×{0,1}n→{0,1}, we have D(f)≤n. Using the above definition, it is useful to think of the function f as a matrix A (called the input matrix or communication matrix) where the rows are indexed by x∈X and columns by y∈Y. The entries of the matrix are Ax,y=f(x,y). Initially both Alice and Bob have a copy of the entire matrix A (assuming the function f is known to both parties). Then the problem of computing the function value can be rephrased as "zeroing-in" on the corresponding matrix entry. This problem can be solved if either Alice or Bob knows both x and y. At the start of communication, the number of choices for the matrix position corresponding to the inputs is the size of matrix, i.e. 22n. Then, as and when each party communicates a bit to the other, the number of choices for the position reduces, as this eliminates a set of rows/columns, resulting in a submatrix of A.

More formally, a set R⊆X×Y is called a (combinatorial) rectangle if whenever (x1,y1)∈R and (x2,y2)∈R then (x1,y2)∈R. Equivalently, R is a combinatorial rectangle if it can be expressed as R=M×N for some M⊆X and N⊆Y. Consider the case when k bits are already exchanged between the parties. Now, for a particular h∈{0,1}k, let us define a matrix

Th={(x,y): the k-bits exchanged on input (x,y) is h}

Then Th⊆X×Y, and it is not hard to show that Th is a combinatorial rectangle in A.

Example: EQ

We consider the case where Alice and Bob try to determine whether or not their input strings are equal. Formally, define the Equality function, denoted EQ:{0,1}n×{0,1}n→{0,1}, by EQ(x,y)=1 if x=y. As we demonstrate below, any deterministic communication protocol solving EQ requires n bits of communication in the worst case. As a warm-up example, consider the simple case of x,y∈{0,1}3. The equality function in this case can be represented by the matrix below. The rows represent all the possibilities of x, the columns those of y.

In this table, the function only evaluates to 1 when x equals y (i.e., on the diagonal). It is also fairly easy to see how communicating a single bit divides someone's possibilities in half. When the first bit of y is 1, consider only half of the columns (where y can equal 100, 101, 110, or 111).

Theorem: D(EQ) = n

Proof. Assume that D(EQ)≤n−1. This means that there exists x≠x′ such that (x,x) and (x′,x′) have the same communication transcript h. Since this transcript defines a rectangle, f(x,x′) must also be 1. By definition x≠x′ and we know that equality is only true for (a,b) when a=b. This yields a contradiction.

This technique of proving deterministic communication lower bounds is called the fooling set technique.

Sign in to keep reading

7 more chapters are free with a Lably account.

More in Topics in mathematics