\documentclass[11pt]{article}

\usepackage[right=0.8in, top=1in, bottom=1.2in, left=0.8in]{geometry}
\usepackage{amsmath,amsfonts,amssymb,amsthm}
\usepackage{mathtools}
\usepackage{graphicx}
\usepackage[colorlinks,linkcolor=black]{hyperref}
\usepackage{cleveref}
\usepackage{tikz}
\usepackage{url}
\usepackage{fixme}
\usepackage[roman]{complexity}
\usepackage{setspace}
\spacing{1.06}
\usetikzlibrary{arrows.meta}

\newtheorem{theorem}{Theorem}
\newtheorem{example}[theorem]{Example}
\newtheorem{lemma}[theorem]{Lemma}
\newtheorem{question}[theorem]{Question}
\theoremstyle{definition}
\newtheorem{definition}[theorem]{Definition}
\theoremstyle{remark}
\newtheorem{remark}[theorem]{Remark}

\newcommand{\handout}[5]{
    \noindent
    \begin{center}
        \framebox{
            \vbox{\vspace{0.25cm}
                \hbox to 5.78in { {CS Theory (Spring '25)} \hfill #2 }
                \vspace{0.48cm}
                \hbox to 5.78in { {\Large \hfill #5  \hfill} }
                \vspace{0.42cm}
                \hbox to 5.78in { {#3 \hfill #4} }\vspace{0.25cm}
            }
        }
    \end{center}
    \vspace*{4mm}
}

\newcommand{\lecture}[4]{\handout{#1}{#2}{#3}{#4}{#1}}

\begin{document}

\lecture{Lecture Note: Communication Lower Bounds}{March 4, 2025}{Instructor:\hspace{0.08cm}\emph{Josh Alman }}{}

\sloppy

In class last time, we defined communication and we gave communication protocol for a few interesting problems, including the following:

\begin{example}
    $\mathrm{EQUALITY}(x, y) = \begin{cases}
        1 & x = y\\
        0 & x \ne y
    \end{cases}$. We showed an $O(n)$-communication protocol for $\mathrm{EQUALITY}$ last time.
\end{example}

\begin{example}
    $\mathrm{MAJORITY}(x, y) = \begin{cases}
        1 & \text{if $xy$ contains more 1's than 0's}\\
        0 & \text{otherwise}
    \end{cases}$. We showed an $O(\log n)$-communication protocol for $\mathrm{MAJORITY}$ last time.
\end{example}

\begin{example}
    $\mathrm{PARITY}(x, y) = \begin{cases}
        1 & \text{if $xy$ contains an odd number of $1$'s}\\
        0 & \text{otherwise}
    \end{cases}$. We showed an $O(1)$-communication protocol for $\mathrm{PARITY}$ last time.
\end{example}

Our goal today is to give lower bounds, showing that these protocols are the best possible, in terms of amount of communication. We have showed last time we cannot do better than $2$ bits of communication for $\mathrm{PARITY}$, so our main goals are showing lower bounds for $\mathrm{EQUALITY}$ and $\mathrm{PARITY}$.

The proof approach we will use is actually very similar to the the proof approach for streaming lower bounds. Recall that when we were proving streaming lower bounds, we gave two key definitions: distinguishable inputs and length-$n$ distinguishing set (see the lecture note of February 25). The key argument was that if you have a length-$n$ distinguishing set, then any streaming algorithm must assign different elements in it to different memory configurations. This means the size of the length-$n$ distinguishing set is a lower bound on the number of possible memory configurations on length-$n$ inputs, so the memory usage of the streaming algorithm is lower-bounded by the logarithm of the size of the distinguishing set.

We will give some analogous definitions for communication protocols: fooling pairs of inputs and length-$n$ fooling set.

\section{Communication Lower Bounds}
We fix a function $f: \{0, 1\}^* \times \{0, 1\}^* \to \{0, 1\}$.

\begin{definition}[Fooling pairs]
    For strings $a, b, c, d \in \{0, 1\}^*$, the pairs $(a, b)$ and $(c, d)$ are called \emph{fooling pairs} for $f$ if the two conditions hold:
    \begin{itemize}
        \item $f(a, b) = f(c, d)$.
        \item $f(a, d) \ne f(a, b)$ or $f(c, b) \ne f(a, b)$ (or both).
    \end{itemize}
\end{definition}

For example, one possible situation for fooling pairs $(a, b)$ and $(c, d)$ are illustrated in \Cref{fig: 1}. When the inputs to Alice and Bob are $(a, b)$ or $(c, d)$, they accept, but when the input is $(a, d)$ they reject.
%$a, c$ are inputs of Alice, and $b, d$ are inputs of Bob. A line between two inputs and an ``accept'' or a ``reject'' over it means whether Alice and Bob accept or reject the pairs of inputs connected by the line.

\begin{figure}[ht]\centering
\begin{tikzpicture}
    \draw (0, 0) node {Alice};
    \draw (0, -1) node {$a$};
    \draw (0, -3) node {$c$};
    \draw (4, 0) node {Bob};
    \draw (4, -1) node {$b$};
    \draw (4, -3) node {$d$};
    \draw (0.2, -1) -- (3.8, -1);
    \draw (2, -0.7) node {accept};
    \draw (0.2, -1.1) -- (3.8, -2.9);
    \draw (2.4, -1.8) node {reject};
    \draw (0.2, -3) -- (3.8, -3);
    \draw (2, -2.7) node {accept};
\end{tikzpicture}
\caption{An illustration of fooling pairs}\label{fig: 1}
\end{figure}

\begin{definition}
    A \emph{length-$n$ fooling set} for $f$ is a set of $S_n \subset \{0, 1\}^* \times \{0, 1\}^*$ such that the following two conditions hold:
    \begin{itemize}
        \item If $(a, b) \in S_n$, then $|a| \le n/2$ and $|b| \le n/2$.
        \item Any two distinct $(a, b), (c, d) \in S_n$ are fooling pairs for $f$.
    \end{itemize}
    
\end{definition}

We have the following theorem, which says that we will have a communication lower bound for input size $n$ if we have a length-$n$ fooling set. Note the similarity between this and the theorem we proved for streaming lower bounds (which says we have a streaming lower bound if we have a length-$n$ distinguishable set).

\begin{theorem}\label{thm: 6}
    If $f$ has a length-$n$ fooling set $S_n$, then any protocol $P$ for $f$ must use at least $(1/100)\log_2|S_n|$ bits of communication for inputs of total length\footnote{the sum of the lengths of Alice's and Bob's inputs} at most $n$.
\end{theorem}

To prove \Cref{thm: 6}, we need the following definition of transcripts.

\begin{definition}[Transcripts]
    A \emph{transcript} of a protocol $P$ on input $(a, b)$ is the entire message history of the protocol $P$ running on input $(a, b)$. Formally, it is of a sequence of pairs (sender, content), where each pair corresponds to a bit in the communication, the sender can be Alice or Bob, and the content can be $0$ or $1$.
\end{definition}

The idea to prove \Cref{thm: 6} is to consider the map from input pairs to the transcript of the protocol $P$ running on this input. If the number of transcripts on length-$n$ input pairs is less than the size of a length-$n$ fooling set, then by pigeonhole principle, there will be two fooling pairs that are mapped to the same transcript: but we will show this cannot happen. Therefore, the number of possible transcripts on length-$n$ input pairs is at least the size of a length-$n$ fooling set. We thus need to prove an upper bound on the number of transcripts based on the amount of communication, which is the following lemma.

\begin{lemma}\label{lem: 8}
    For a protocol that uses $k$ bits of communication, there are at most $4^k$ possible transcripts.
\end{lemma}

\begin{proof}
    For each of the $k$ bits in the communication, it can be sent by Alice or Bob, and it can be either $0$ or $1$. Thus, for each bit, there are $4$ possibilities. Therefore, for the $k$-bit communication, there are at most $4^k$ possible transcripts.
\end{proof}

We have the next lemma to show that a fooling pair of inputs must correspond to different transcripts for a given protocol.

\begin{lemma}\label{lem: 9}
    If $(a, b)$ and $(c, d)$ are a fooling pair of $f$, then for any protocol $P$ for $f$, the transcripts of $P$ running on $(a, b)$ and $(c, d)$ must be different.
\end{lemma}

\begin{proof}
    Since $(a, b)$ and $(c, d)$ are a fooling pair, we have $f(a, b) = f(c, d)$ and without loss of generality $f(a, d) \ne f(a, b)$. Assume to the contrary that $P$ has the same transcript when running on $(a, b)$ and $(c, d)$.
    
    Consider the transcript of $P$ running on input $(a, d)$. We will show that the transcripts are the same for the inputs $(a, d)$, $(a, b)$ and $(c, d)$. We show this by induction.
    
    Suppose the part of transcripts corresponding to the first $k$ bits of communication are the same for the inputs $(a, d)$, $(a, b)$ and $(c, d)$. Then, when Alice's input is $a$, Alice could not tell whether Bob's input is $b$ or $d$ within the first $k$ bits of communication. %Similarly, when Bob's input is $b$, Bob could not tell whether Alice's input is $a$ or $c$ within the first $k$ bits of communication. 
    Therefore, if the $(k + 1)$-th bit of communication is sent by Alice when the protocol runs on input $(a, d)$, Alice will also send the $(k + 1)$-th bit when the input is $(a, b)$, and the bit Alice sends will be the same no matter whether the input is $(a, b)$ or $(a, d)$. Similarly, when Bob's input is $d$, Bob could not tell whether Alice's input is $a$ or $c$ within the first $k$ bits of communication, so if the $(k + 1)$-th bit of communication is sent by Bob when the protocol runs on input $(a, d)$, Bob will also send the $(k + 1)$-th bit when the input is $(c, d)$, and the bit Bob sends will be the same no matter whether the input is $(a, d)$ or $(c, d)$. To summarize, the part of the transcript corresponding to the first $k + 1$ bits are the same for the inputs $(a, d)$, $(a, b)$ and $(c, d)$.
    
    As the transcripts are the same for the inputs $(a, d)$, $(a, b)$ and $(c, d)$, whether Alice accepts will be the same for the inputs $(a, d)$ and $(a, b)$, contradicting $f(a, d) \ne f(a, b)$. It follows that our assumption is wrong, so the transcript must be different for the inputs $(a, b)$ and $(c, d)$.
\end{proof}

Now we are ready to prove \Cref{thm: 6}.

\begin{proof}[Proof of \Cref{thm: 6}]
    If $P$ uses less than $(1/100)\log_2|S_n|$ bits of communication for every input of total length at most $n$, by \Cref{lem: 8}, the total number of possible transcripts for those inputs is at most
    \[\sum_{i = 0}^{(1/100)\log_2|S_n|}4^i \le 2 \cdot 4^{(1/100)\log_2|S_n|} = 2 \cdot |S_n|^{1/50} < |S_n|.\]
    Thus, by pigeonhole principle, there are two pairs in $S_n$ that have the same transcript under the protocol $P$. This contradicts \Cref{lem: 9}
\end{proof}

Below we use \Cref{thm: 6} to prove communication lower bounds for $\mathrm{EQUALITY}$ and $\mathrm{MAJORITY}$.

\begin{theorem}
    Any protocol for $\mathrm{EQUALITY}$ must use at least $n/1000$ bits of communication.
\end{theorem}

\begin{proof}
    Let $S_n \coloneq \{(a, a) \mid a \in \{0, 1\}^*\text{ and }|a| = \lfloor n/2\rfloor\}$. This is a length-$n$ fooling set, as for any two pairs $(a, a)$, $(b, b)$ in $S_n$, $\mathrm{EQUALITY}(a, a) = \mathrm{EQUALITY}(b, b) = 1$ but $\mathrm{EQUALITY}(a, b) = 0$. Therefore, by \Cref{thm: 6}, any protocol for $\mathrm{EQUALITY}$ needs at least 
    \[\frac1{100}\log_2|S_n| = \frac1{100}\log_2(2^{\lfloor n/2\rfloor}) \ge \frac n{1000}\]
    bits of communication.
\end{proof}

\begin{theorem}
    Any protocol for $\mathrm{MAJORITY}$ must use at least $(1/1000)\log_2n$ bits of communication.
\end{theorem}

\begin{proof}
    Let $m \coloneq \lfloor n/2\rfloor$, and let $S_n \coloneq \{(a, b) \mid a = 1^k0^{m - k}, b = 1^{m - k + 1}0^{k - 1}, 1 \le k \le m\}$. This is a length-$n$ fooling set, as for any two pairs $(1^k0^{m - k}, 1^{m - k + 1}0^{k - 1})$, $(1^\ell0^{m - \ell}, 1^{m - \ell + 1}0^{\ell - 1})$ in $S_n$, supposing $k < \ell$ without loss of generality, we have $\mathrm{MAJORITY}(1^k0^{m - k}, 1^{m - k + 1}0^{k - 1}) = \mathrm{MAJORITY}(1^\ell0^{m - \ell}, 1^{m - \ell + 1}0^{\ell - 1}) = 1$ but $\mathrm{MAJORITY}(1^k0^{m - k}, 1^{m - \ell + 1}0^{\ell - 1}) = 0$. Therefore, by \Cref{thm: 6}, any protocol for $\mathrm{MAJORITY}$ needs at least
    \[\frac1{100}\log_2|S_n| = \frac1{100}\log_2m \ge \frac1{1000}\log_2n\]
    bits of communication.
\end{proof}

\end{document}
