TCSLib

63 Communication Complexity — Private Coin Basic

63.1 Overview

This module introduces the private-coin protocol model for two-party communication complexity. A private-coin protocol is a deterministic protocol in which Alice and Bob each hold independent private randomness; correctness is measured by the probability (over the private coins) of producing an incorrect answer on every input pair \((x, y)\).

63.2 Declarations

Definition 63.1 Private-coin protocol

A private-coin protocol with randomness spaces \(\Omega _X\) and \(\Omega _Y\), input spaces \(X\) and \(Y\), and output type \(\alpha \) is defined as a deterministic protocol \(\texttt{Deterministic.Protocol}\; (\Omega _X \times X)\; (\Omega _Y \times Y)\; \alpha \). Alice’s message function receives the pair \((\omega _x, x)\) and Bob’s receives \((\omega _y, y)\), so each player’s coin flip is invisible to the other.

Definition 63.2 Output node

The constant output node of a private-coin protocol that immediately returns the value \(a : \alpha \), without any further communication.

Definition 63.3 Alice’s message node

Given a function \(f : X \to \Omega _X \to \mathrm{Bool}\) and a continuation \(P : \mathrm{Bool} \to \mathrm{Protocol}\; \Omega _X\; \Omega _Y\; X\; Y\; \alpha \), constructs the protocol node at which Alice sends the bit \(f\, x\, \omega _x\) and execution continues with \(P(\text{bit})\).

Definition 63.4 Bob’s message node

Given a function \(f : Y \to \Omega _Y \to \mathrm{Bool}\) and a continuation \(P : \mathrm{Bool} \to \mathrm{Protocol}\; \Omega _X\; \Omega _Y\; X\; Y\; \alpha \), constructs the protocol node at which Bob sends the bit \(f\, y\, \omega _y\) and execution continues with \(P(\text{bit})\).

Definition 63.5 Randomized execution

\(\texttt{rrun}\; p\; x\; y\; \omega _x\; \omega _y\) executes the private-coin protocol \(p\) on inputs \(x \in X\) and \(y \in Y\) with Alice’s private coin \(\omega _x \in \Omega _X\) and Bob’s private coin \(\omega _y \in \Omega _Y\), returning the output \(\alpha \). It is defined by \(p.\mathrm{run}\, (\omega _x, x)\, (\omega _y, y)\).

Theorem 63.6 Randomized execution unfolding

For any private-coin protocol \(p\) and any inputs \(x\), \(y\), \(\omega _x\), \(\omega _y\), we have \(p.\mathrm{rrun}\; x\; y\; \omega _x\; \omega _y = p.\mathrm{run}\, (\omega _x, x)\, (\omega _y, y)\). This is a definitional equality used as a simp lemma to unfold the randomized execution to the underlying deterministic run.

Definition 63.7 Approximate satisfaction

A private-coin protocol \(p\) \(\varepsilon \)-satisfies a predicate \(Q : X \to Y \to \alpha \to \mathrm{Prop}\) if for every input pair \((x, y)\),

\[ \mu \! \left\{ \, \omega \in \Omega _X \times \Omega _Y \; \middle |\; \neg Q\, x\, y\, (p.\mathrm{rrun}\; x\; y\; \omega _1\; \omega _2)\, \right\} \; \le \; \varepsilon , \]

where \(\mu \) is the product measure on \(\Omega _X \times \Omega _Y\).

Definition 63.8 Approximate computation

A private-coin protocol \(p\) \(\varepsilon \)-computes a function \(f : X \to Y \to \alpha \) if for every input pair \((x, y)\),

\[ \mu \! \left\{ \, \omega \in \Omega _X \times \Omega _Y \; \middle |\; p.\mathrm{rrun}\; x\; y\; \omega _1\; \omega _2 \ne f\, x\, y\, \right\} \; \le \; \varepsilon . \]

This formalises the standard notion of bounded-error private-coin randomized communication complexity.

Theorem 63.9 Approximate computation equals approximate satisfaction

For any private-coin protocol \(p\), function \(f : X \to Y \to \alpha \), and error bound \(\varepsilon \in \mathbb {R}\),

\[ p.\mathrm{ApproxComputes}\; f\; \varepsilon \; =\; p.\mathrm{ApproxSatisfies}\! \left(\lambda \, x\, y\, a,\; a = f\, x\, y\right)\varepsilon . \]

In other words, \(\varepsilon \)-computing \(f\) is the same as \(\varepsilon \)-satisfying the equality predicate \(a = f\, x\, y\).