TCSLib

65 Communication Complexity — Public Coin Basic

65.1 Overview

This module introduces public-coin communication protocols, where both Alice and Bob have access to a shared source of randomness \(\Omega \). It defines the core type CommunicationComplexity.PublicCoin.Protocol, the execution function CommunicationComplexity.PublicCoin.Protocol.rrun, and two notions of approximate correctness: \(\varepsilon \)-satisfying a predicate and \(\varepsilon \)-computing a function.

65.2 Declarations

Definition 65.1 Public-coin protocol
✓

A public-coin protocol over shared randomness \(\Omega \), with Alice’s private input in \(X\) and Bob’s in \(Y\) producing an output in \(\alpha \), is a deterministic protocol whose combined input types are \(\Omega \times X\) (for Alice) and \(\Omega \times Y\) (for Bob). In other words, both players observe the same random string \(\omega \in \Omega \) alongside their private inputs.

Definition 65.2 Output node
✓

The leaf node of a public-coin protocol that returns the constant value \(a \in \alpha \), constructed by lifting the corresponding deterministic output node.

Definition 65.3 Alice’s move
✓

Constructs a public-coin protocol node at which Alice sends a single bit: given a function \(f : X \to \Omega \to \mathrm{Bool}\), Alice transmits \(f\, x\, \omega \) and the protocol continues according to \(P : \mathrm{Bool} \to \mathrm{Protocol}\).

Definition 65.4 Bob’s move
✓

Constructs a public-coin protocol node at which Bob sends a single bit: given a function \(f : Y \to \Omega \to \mathrm{Bool}\), Bob transmits \(f\, y\, \omega \) and the protocol continues according to \(P : \mathrm{Bool} \to \mathrm{Protocol}\).

Definition 65.5 Randomized execution
✓

Given a public-coin protocol \(p\), private inputs \(x \in X\), \(y \in Y\), and a shared random string \(\omega \in \Omega \), \(\texttt{rrun}\, p\, x\, y\, \omega \) executes the underlying deterministic protocol on the paired inputs \((\omega , x)\) and \((\omega , y)\) and returns the resulting output.

Theorem 65.6 Randomized execution as deterministic execution on paired inputs
✓

Let \(p\) be a public-coin protocol with shared randomness in \(\Omega \), Alice’s private input in \(X\), and Bob’s in \(Y\), producing an output in \(\alpha \). Then for every \(x \in X\), \(y \in Y\), and \(\omega \in \Omega \), the randomized execution of \(p\) on \(x\), \(y\) with random string \(\omega \) equals the execution of the underlying deterministic protocol on the paired inputs \((\omega , x)\) and \((\omega , y)\).

Definition 65.7 \(\varepsilon \)-satisfies a predicate
✓

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

\[ \mathrm{vol}\bigl\{ \omega \in \Omega \mid \neg \, Q\, x\, y\, (p.\texttt{rrun}\, x\, y\, \omega )\bigr\} \; \le \; \varepsilon . \]
Definition 65.8 \(\varepsilon \)-computes a function
✓

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

\[ \mathrm{vol}\bigl\{ \omega \in \Omega \mid p.\texttt{rrun}\, x\, y\, \omega \ne f\, x\, y\bigr\} \; \le \; \varepsilon . \]

Here the volume is taken with respect to the measure on \(\Omega \) given by the MeasureSpace instance.

Theorem 65.9 Approximate computation as satisfying pointwise equality
✓

Let \(p\) be a public-coin protocol over a shared-randomness space \(\Omega \) carrying a measure, with Alice’s inputs in \(X\), Bob’s in \(Y\), and outputs in \(\alpha \), let \(f : X \to Y \to \alpha \) be a function, and let \(\varepsilon \in \mathbb {R}\). Then the assertion that \(p\) \(\varepsilon \)-computes \(f\) coincides with the assertion that \(p\) \(\varepsilon \)-satisfies the predicate \(Q(x, y, a)\) given by \(a = f(x, y)\); that is, the two propositions are equal.