InformationTheory.Shannon.MultipleAccess.Achievability.Codebook
Multiple access channel — codebook, decoder, and Bonferroni decomposition #
The two-user codebook plumbing for MAC achievability (Cover–Thomas): the codebook
type, the joint-typical pair decoder, the MACCode bundle, the four-event Bonferroni
decomposition of the per-pair error probability, the corner-point information quantities,
and the block-law / channel-fold helpers feeding the two-codebook random-coding average.
Codebook + joint-typical pair decoder #
InformationTheory.Shannon.MAC.MACCodebook
sourceA length-n codebook for one MAC user: a function from message indices to
length-n words. Two codebooks (one per user) make up a MACCode.
Equations
- InformationTheory.Shannon.MAC.MACCodebook M n α = (Fin M → Fin n → α)
Instances For
Used by
InformationTheory.Shannon.MAC.macJointTypicalDecoder
sourceJoint-typical pair decoder. Given a received word y, returns the unique message
pair (m₁, m₂) such that (c₁ m₁, c₂ m₂, y) ∈ macJointlyTypicalSet …, falling back to
(⟨0, hM₁⟩, ⟨0, hM₂⟩) if either no such pair exists or it is not unique.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Used by
InformationTheory.Shannon.MAC.macCodebookToCode
sourceBundle two codebooks + the joint-typical pair decoder into a MACCode.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Four-event Bonferroni decomposition #
InformationTheory.Shannon.MAC.mac_errorProbAt_le_bonferroni4
sourceFour-event Bonferroni bound for the joint-typical pair decoder: when the pair
(m₁, m₂) is sent, the per-pair error probability is bounded by the four error events:
E0— the correct codeword triple(c₁ m₁, c₂ m₂, y)is not jointly typical;E1— some user-1 aliasm₁' ≠ m₁(with user 2 correct) is jointly typical;E2— some user-2 aliasm₂' ≠ m₂(with user 1 correct) is jointly typical;E3— some pair(m₁', m₂')with both indices wrong is jointly typical.
The block output law is ν = Measure.pi (i ↦ W (c₁ m₁ i, c₂ m₂ i)). This is the
two-codebook / four-event generalization of the single-user
errorProbAt_le_E1_plus_E2; the two-codebook averaging consumes the four terms term by
term.
Used by
Corner-point information quantities #
The three rate corners returned in the entropy-exponent form handed back by the
independent-pair bounds macJTS_indep_prob_le_X1/_X2/_both: macInfo₁ = I(X₁; (X₂, Y)),
macInfo₂ = I(X₂; (X₁, Y)), macInfoBoth = I((X₁, X₂); Y), each expressed as a
difference of entropies of marginals of the per-coordinate joint law
macJointDistribution p₁ p₂ W. Under the independent product input p₁ ⊗ p₂ these
equal the textbook conditional informations I(X₁; Y | X₂) / I(X₂; Y | X₁) /
I(X₁, X₂; Y).
InformationTheory.Shannon.MAC.macInfo₁
sourceI(X₁; (X₂, Y)) = H(X₁) + H(X₂, Y) − H(X₁, X₂, Y) for the per-coordinate joint.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Used by
InformationTheory.Shannon.MAC.macInfo₂
sourceI(X₂; (X₁, Y)) = H(X₂) + H(X₁, Y) − H(X₁, X₂, Y).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Used by
InformationTheory.Shannon.MAC.macInfoBoth
sourceI((X₁, X₂); Y) = H(X₁, X₂) + H(Y) − H(X₁, X₂, Y).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Used by
Two-codebook averaging: block-law / channel-fold helpers #
InformationTheory.Shannon.MAC.mac_prodReal_eq_slice_sum
sourceProduct-measure slice expansion over the first factor (finite alphabets).
Used by
InformationTheory.Shannon.MAC.measureReal_eq_sum_ite
sourceA finite-alphabet measure of a set equals the indicator sum over singletons.
Used by
InformationTheory.Shannon.MAC.macJointDistribution_map_fst
sourceThe first-input marginal of the per-coordinate MAC joint law is p₁.
Used by
InformationTheory.Shannon.MAC.macJointDistribution_triple_singleton
sourceThe per-coordinate MAC joint law singleton mass:
ν{(a₁, a₂, b)} = p₁{a₁} · p₂{a₂} · W(a₁, a₂){b}.
Used by
InformationTheory.Shannon.MAC.macJointDistribution_X2Y_singleton
sourceThe per-coordinate (X₂, Y) marginal singleton mass:
ν_{X₂Y}{(a₂, b)} = p₂{a₂} · ∑_{a₁} p₁{a₁} W(a₁, a₂){b}.
Used by
InformationTheory.Shannon.MAC.mac_block_law_X1
sourceThe X₁-block law under the MAC ambient measure equals Measure.pi p₁.
Used by
InformationTheory.Shannon.MAC.mac_block_law_X2Y_singleton
sourceThe (X₂, Y)-joint-block law singleton mass factorizes over coordinates as a
product of the per-coordinate (X₂, Y) marginal masses.
Used by
InformationTheory.Shannon.MAC.mac_chan_fold_one
sourcePair-channel conditional-output fold-in, in singleton form: the (X₂, Y)-joint
block-law mass at (x₂, y) equals the average over the true user-1 codeword x₁ ~ p₁ⁿ
of the paired-channel output mass at y, weighted by the user-2 codeword mass. This is
where the two-codebook averaging does its work: the true user-1 input is marginalized
out of the pair channel W(·, x₂ i) to recover the conditional (X₂, Y) output law.
Used by
InformationTheory.Shannon.MAC.mac_chan_fold_set
sourceSet-level version of the conditional-output fold-in: the (X₂, Y)-joint block law of
a finite set T equals the user-2-weighted average over the true user-1 codeword of the
paired-channel mass of the x₂-slice of T.
Used by
InformationTheory.Shannon.MAC.macJointDistribution_map_X2
sourceThe second-input marginal of the per-coordinate MAC joint law is p₂.
Used by
InformationTheory.Shannon.MAC.mac_block_law_X2
sourceThe X₂-block law under the MAC ambient measure equals Measure.pi p₂.
Used by
InformationTheory.Shannon.MAC.mac_block_law_triple_singleton
sourceFull-triple split block-law singleton mass factorizes over coordinates as a product of the per-coordinate MAC joint masses.
Used by
InformationTheory.Shannon.MAC.mac_chan_fold_triple_set
sourceMaster pair-channel fold on the full triple: the full-triple split block law of a finite
set T equals the average over the true codeword pair (x₁, x₂) ~ p₁ⁿ ⊗ p₂ⁿ of the
paired-channel mass of the corresponding slice of T.
Used by
InformationTheory.Shannon.MAC.mac_chan_fold_X1Y_set
sourceThe (X₁, Y)-split joint block-law fold, derived from the master triple fold by
projecting out X₂.
Used by
InformationTheory.Shannon.MAC.mac_chan_fold_Y_set
sourceThe Y-block-law fold, derived from the master triple fold by projecting out both
inputs.
Used by
InformationTheory.Shannon.MAC.mac_block_law_X1X2_singleton
sourceThe (X₁, X₂)-split joint block-law singleton mass equals p₁ⁿ{x₁} · p₂ⁿ{x₂}, derived
from the master triple fold by projecting out the output.
Used by
InformationTheory.Shannon.MAC.macJTS_indep_prob_le_X2_split
sourceThe user-2 independent-pair bound macJTS_indep_prob_le_X2, restated over the split
product X₂-block ⊗ (X₁, Y)-joint-block: the jointly typical set is described as a preimage
under the reshaping (x₂, (x₁, y)) ↦ (x₁, x₂, y) instead of a reshaped product.
Used by
InformationTheory.Shannon.MAC.macJTS_indep_prob_le_both_split
sourceThe both-users independent-pair bound macJTS_indep_prob_le_both, restated over the
split product (X₁, X₂)-joint-block ⊗ Y-block: the jointly typical set is described as a
preimage under the reshaping ((x₁, x₂), y) ↦ (x₁, x₂, y) instead of a reshaped product.