Randomized communication protocols #
In a public-coin protocol the players share random bits, which they use to draw a deterministic
protocol from a distribution and run it; so a public-coin protocol is a distribution over
deterministic protocols (PublicCoin). In a private-coin protocol Alice and Bob hold separate
uniformly random bit strings of a and b bits, and a deterministic protocol computes the bits
sent from each player's input and random bits (PrivateCoin)
Kushilevitz and Nisan, Chapter 3.
A randomized protocol solves a relation R on A × B with error ε when, on every pair of inputs
from A × B, its output is not related to the inputs with probability at most ε
(PublicCoin.Solves, PrivateCoin.Solves). Its cost is the number of bits sent in the worst case
over the inputs and the random bits (PublicCoin.depth, Protocol.depth). The public- and
private-coin communication complexities are the least costs (PublicCoin.ecomplexity,
PrivateCoin.ecomplexity).
Deterministic protocols are both (PublicCoin.ecomplexity_le_protocol,
PrivateCoin.ecomplexity_le_protocol), and the players of a private-coin protocol can draw their
random bits from public coins (PrivateCoin.toPublicCoin,
PublicCoin.ecomplexity_le_privateCoin). Newman's theorem bounds the converse
(PrivateCoin.ecomplexity_le_add).
If a public-coin protocol has error at most ε on every pair of inputs from A × B, then for every
distribution ν on A × B some protocol it can draw has error at most ε on inputs drawn from ν
(PublicCoin.Solves.exists_distributionalError_le). This averaging argument
(Probability.PMF.exists_mem_support_toOuterMeasure_le) is the easy direction of Yao's principle
[Yao77], and turns lower bounds on deterministic protocols over a distribution into lower bounds
on randomized ones.
Main definitions #
Cslib.Communication.PublicCoin: public-coin protocols, as distributions over deterministic protocols, withPublicCoin.depth,PublicCoin.errorProb,PublicCoin.SolvesandPublicCoin.ecomplexity.Cslib.Communication.PrivateCoin: private-coin protocols, withPrivateCoin.errorProb,PrivateCoin.SolvesandPrivateCoin.ecomplexity.Cslib.Communication.PrivateCoin.toPublicCoin: drawing the private random bits publicly.Cslib.Communication.Protocol.distributionalError: the error of a deterministic protocol on inputs drawn from a distribution.
Main results #
Cslib.Communication.PublicCoin.ecomplexity_le_protocol,Cslib.Communication.PrivateCoin.ecomplexity_le_protocol: randomness does not hurt.Cslib.Communication.PublicCoin.ecomplexity_le_privateCoin: public coins can replace private coins.Cslib.Communication.PublicCoin.Solves.exists_distributionalError_le: the averaging argument.
References #
A public-coin protocol between Alice, holding x : X, and Bob, holding y : Y: the players
use shared random bits to draw a deterministic protocol from this distribution, and run it.
Instances For
The error of a deterministic protocol on inputs drawn from ν: the probability that its output
on a pair of inputs drawn from ν is not related to them by R.
Instances For
The number of bits sent in the worst case over the inputs and the random bits: the largest depth of a protocol that can be drawn.
Instances For
The probability that the protocol drawn from μ gives an output on x and y that is not
related to them by R.
Instances For
A public-coin protocol μ solves R on A × B with error ε when on every pair of inputs
from A × B its output is not related to them with probability at most ε.
Instances For
The public-coin communication complexity of R on A × B with error ε: the least cost of
a public-coin protocol solving it with error ε, or ⊤ if there is none.
Instances For
The public-coin communication complexity of computing f with error ε: ecomplexity of the
relation f x y = z on all inputs.
Instances For
A deterministic protocol solving R is a public-coin protocol solving it with any
nonnegative error.
The averaging argument, the easy direction of Yao's principle: if μ solves R on
A × B with error ε, then for every distribution ν on A × B some protocol that μ can draw
errs with probability at most ε on inputs drawn from ν.
Precomposing the inputs does not make a function harder: the players apply a and b to
their inputs and run a protocol for f.
A private-coin protocol in which Alice, holding x : X, also holds a and Bob, holding
y : Y, also holds b private uniformly random bits: a deterministic protocol whose inputs are
each player's input together with their random bits.
Instances For
The probability, over both players' random bits, that the output of P on x and y is not
related to them by R.
Instances For
A private-coin protocol P solves R on A × B with error ε when on every pair of inputs
from A × B its output is not related to them with probability at most ε.
Instances For
The private-coin communication complexity of R on A × B with error ε: the least depth
of a private-coin protocol solving it with error ε, with any numbers of random bits, or ⊤ if
there is none.
Instances For
The private-coin communication complexity of computing f with error ε: ecomplexity of
the relation f x y = z on all inputs.
Instances For
The public-coin protocol in which the players draw the random bits of P from shared coins:
it draws P.fix r for uniformly random r.
Instances For
A deterministic protocol solving R, run while ignoring the random bits, solves it with any
nonnegative error.