InformationTheory.Shannon.MultipleAccess.Basic
Multiple access channel — primitive definitions #
Two-user multiple access channel (MAC) primitives, following the single-user
InformationTheory.Shannon.ChannelCoding.Basic conventions (Cover–Thomas).
Main definitions #
MACChannel α₁ α₂ β := Kernel (α₁ × α₂) β— a discrete MAC with two inputs and one output.MACCode M₁ M₂ n α₁ α₂ β— a two-user block code: two encoders and a joint pair decoder.MACCode.errorProbAt/MACCode.averageErrorProb— the pointwise and uniform-average block-decoding error probabilities.InMACCapacityRegion R₁ R₂ I₁ I₂ Iboth— the corner-point capacity-region predicate:R₁ ≤ I₁,R₂ ≤ I₂,R₁ + R₂ ≤ Iboth.
InformationTheory.Shannon.MAC.MACChannel
sourceA discrete memoryless multiple access channel: a Markov kernel from the joint input
α₁ × α₂ to the output β.
Equations
- InformationTheory.Shannon.MAC.MACChannel α₁ α₂ β = ProbabilityTheory.Kernel (α₁ × α₂) β
Instances For
Used by
InformationTheory.Shannon.MAC.MACCode
sourceA two-user MAC block code of length n: an encoder for each user and a joint pair
decoder. As in the single-user Code, no measurability fields are bundled (all functions
on finite alphabets are automatically measurable).
Encoder for user 1.
Encoder for user 2.
Joint pair decoder.
Instances For
Used by
InformationTheory.Shannon.MAC.MACCode.decodingRegion
sourceDecoding region for the message pair m: outputs y decoded as m.
Instances For
Used by
InformationTheory.Shannon.MAC.MACCode.errorEvent
sourceThe joint error event for the pair m: outputs decoded as anything other than m.
A single event captures all three MAC error types (user 1 wrong, user 2 wrong, both
wrong).
Equations
- c.errorEvent m = (c.decodingRegion m)ᶜ
Instances For
Used by
InformationTheory.Shannon.MAC.MACCode.mem_errorEvent
sourceUsed by
InformationTheory.Shannon.MAC.MACCode.errorProbAt
sourcePointwise error probability when the pair m = (m₁, m₂) is sent: the memoryless block
output law is Measure.pi (i ↦ W (encoder₁ m₁ i, encoder₂ m₂ i)).
Equations
- c.errorProbAt W m = (MeasureTheory.Measure.pi fun (i : Fin n) => W (c.encoder₁ m.1 i, c.encoder₂ m.2 i)) (c.errorEvent m)
Instances For
Used by
InformationTheory.Shannon.MAC.MACCode.averageErrorProb
sourceAverage error probability under a uniform message pair: (1/(M₁·M₂)) ∑ m, errorProbAt.
For M₁·M₂ = 0 we set this to 0.
Equations
Instances For
Used by
InformationTheory.Shannon.MAC.MACCode.errorProbAt_le_one
sourceEach pointwise error probability is at most 1 (the block output law is a probability
measure for a Markov kernel).
Used by
InformationTheory.Shannon.MAC.MACCode.averageErrorProb_le_one
sourceThe average error probability is at most 1.
Used by
InformationTheory.Shannon.MAC.MACCode.averageErrorProb_ne_top
sourceThe average error probability is finite.
Used by
Corner-point capacity region #
InformationTheory.Shannon.MAC.InMACCapacityRegion
sourceThe corner-point capacity-region predicate: a generic bundle of the three
inequalities R₁ ≤ I₁, R₂ ≤ I₂, R₁ + R₂ ≤ Iboth on five real numbers. The slots
I₁, I₂, Iboth are abstract information bounds — the predicate does not fix their
meaning. Two distinct instantiations are intended:
- message level (proven,
mac_converse_message_level):I₁, I₂, Ibothare the n-letter message–output mutual informations plus Fano terms. - single letter (not yet done — the standard Cover–Thomas form): after
single-letterization,
I₁ = I(X₁; Y | X₂),I₂ = I(X₂; Y | X₁),Iboth = I(X₁, X₂; Y).
InMACCapacityRegion.mono (enlarging the information bounds keeps the rate pair inside)
is the bridge from the message-level form to the single-letter form.
User-1 rate bound.
User-2 rate bound.
Sum-rate bound.
Instances For
Used by
InformationTheory.Shannon.MAC.InMACCapacityRegion.mono
sourceMonotonicity of the region in the information bounds: enlarging I₁, I₂, Iboth
keeps the rate pair inside.