InformationTheory.Shannon.BroadcastChannel.ConverseGateway
Degraded broadcast channel — converse single-letterization #
Chain-rule material for the converse of the degraded broadcast channel (BC) coding theorem
(Cover–Thomas). The single-letterization introduces auxiliary variables
Uᵢ = (W₂, Y₂^{i-1}) and splits into two bounds:
- the
R₂-side boundI(W₂; Y₂ⁿ) ≤ ∑ᵢ I(Uᵢ; Y_{2,i})— chain-rule plumbing on a prefix conditioner. - the
R₁-side boundI(W₁; Y₁ⁿ | W₂) = ∑ᵢ I(Xᵢ; Y_{1,i} | Uᵢ)— this one requires the Csiszár sum identity to swap the prefix conditionerY₁^{i-1}↔Y₂^{i-1}under degradednessX → Y₁ → Y₂.
Implementation notes #
The Csiszár sum identity is a rearrangement of the mutual-information chain rule, but it is
stated over suffix sequences B_{i+1}ⁿ whereas the rest of the chain-rule API here is
prefix-based (Y^{<i}); its proof therefore goes through the reflection-based
condMutualInfo_suffix_chain_rule.
InformationTheory.Shannon.BroadcastChannel.mutualInfo_chain_rule_Y_fin'
sourceUsed by
InformationTheory.Shannon.BroadcastChannel.mutualInfo_chain_rule_Y_fin
sourceChain rule for mutual information expanded along the sequence argument:
I(W; Bⁿ) = ∑ᵢ I(W; Bᵢ | B^{<i}).
Derived from the left-axis mutualInfo_chain_rule_fin by mutualInfo_comm +
condMutualInfo_comm. The conditioner is the prefix B^{<i} only.
@audit:ok
Used by
InformationTheory.Shannon.BroadcastChannel.bc_converse_bound_a
sourceReceiver-2 single-letterization for the BC converse: with Uᵢ = (W₂, Y₂^{i-1}), the
message–output mutual information obeys I(W₂; Y₂ⁿ) ≤ ∑ᵢ I(Uᵢ; Y_{2,i}).
Chain-rule plumbing: expand I(W₂; Y₂ⁿ) along the sequence argument into
∑ᵢ I(W₂; Y_{2,i} | Y₂^{i-1}), then bound each summand by I((W₂, Y₂^{i-1}); Y_{2,i})
(adding the prefix to the data variable can only increase mutual information).
@audit:ok
Used by
InformationTheory.Shannon.BroadcastChannel.csiszar_sum_identity
sourceCsiszár sum identity (the key ingredient of the R₁-side bound): for any two
finite-alphabet sequences As, Bs over Fin n,
∑ᵢ I(A^{i-1}; Bᵢ | B_{i+1}ⁿ) = ∑ᵢ I(B_{i+1}ⁿ; Aᵢ | A^{i-1}).
Here A^{i-1} is the prefix fun j : Fin i.val ↦ Aⱼ and B_{i+1}ⁿ is the suffix
fun j : {j : Fin n // i.val < j.val} ↦ Bⱼ. Both sides expand (via the prefix chain rule
condMutualInfo_prefix_chain_rule for the left, the reflection-based suffix chain rule
condMutualInfo_suffix_chain_rule for the right) to the common triangular double sum
∑_{k<i} I(Aₖ; Bᵢ | A^{k-1}, B_{i+1}ⁿ), matched termwise by condMutualInfo_comm plus a
prodComm relabel of the conditioner (El Gamal–Kim).
@audit:ok