InformationTheory.Shannon.ChannelCoding.ConverseMemorylessChainRule
Channel coding converse (general input) — memoryless per-summand bound #
A memoryless predicate for a discrete memoryless channel together with the conditional mutual-information chain-rule lemmas it needs, used to derive the per-summand inequality of the general-input channel coding converse (Cover–Thomas) from memorylessness alone.
Main definitions #
IsMemorylessChannel μ Xs Ys— a memoryless DMC (without feedback), formalized by the per-time-step Markov chain(X^{≠i}, Y^{≠i}) → X_i → Y_i, i.e. givenX_i, the outputY_iis independent of all other inputs and outputs. No explicit channel kernelWis referenced.
Main statements #
condMutualInfo_le_of_markov_joint— under the joint Markov chain(Wc, Xs) → (Wc, Zc) → Yo,I(Xs; Yo | Wc) ≤ I(Zc; Yo | Wc).condMutualInfo_chain_rule_X_2var/condMutualInfo_chain_rule_Y_2var— two-variable conditional chain rules forcondMutualInfoalong each axis.
Implementation notes #
The conditional chain-rule lemmas are kept here in local sections rather than in
CondMutualInfo.lean, which they leave unmodified; they live in
namespace InformationTheory.Shannon, so promoting them to the general API later is easy.
condMutualInfo_le_of_markov_joint does not follow from the bare Markov chain
Xs → Zc → Yo alone, since Wc may break that Markov structure; the augmented chain
(Wc, Xs) → (Wc, Zc) → Yo is assumed instead, and the common term I(Wc; Yo) is cancelled
via the chain rule, which requires I(Wc; Yo) ≠ ∞ (an ENNReal subtraction).
The memoryless-channel predicate #
InformationTheory.Shannon.ChannelCodingConverseGeneral.IsMemorylessChannel
sourceA memoryless DMC (without feedback) is formalized by the per-time-step Markov
chain property: for each i : Fin n, the random variables form a Markov chain
(X^{≠i}, Y^{≠i}) → X_i → Y_i
That is, given X_i, the output Y_i is independent of all other inputs X^{≠i} and
all other outputs Y^{≠i}. This captures the textbook memoryless DMC property without
referring to an explicit channel kernel W. This is the feedback-free counterpart of
IsMemorylessFeedback (no message argument).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Used by
InformationTheory.Shannon.ChannelCodingConverseGeneral.IsMemorylessChannel.markovChain
sourceAccessor: extract the i-th Markov chain from IsMemorylessChannel.
Used by
Conditional mutual-information chain-rule lemmas #
InformationTheory.Shannon.ChannelCodingConverseGeneral.condMutualInfo_le_of_markov_joint
sourceConditional version of mutualInfo_le_of_markov (augmented form).
Under the joint Markov chain (Wc, Xs) → (Wc, Zc) → Yo (i.e., Markov holds with
Wc carried on both sides), and assuming I(Wc; Yo) ≠ ∞, we have
I(Xs; Yo | Wc) ≤ I(Zc; Yo | Wc).
This is the natural conditional generalization of mutualInfo_le_of_markov. The single
Markov chain Xs → Zc → Yo alone is not sufficient — Wc may break the Markov property
unless it is also conditionally compatible, hence the augmented form. The finiteness
I(Wc; Yo) ≠ ∞ is needed to cancel the common term after the chain rule.
Used by
InformationTheory.Shannon.ChannelCodingConverseGeneral.condMutualInfo_chain_rule_X_2var
source2-variable X-axis conditional chain rule for condMutualInfo.
I((X, X'); Y | Wc) = I(X; Y | Wc) + I(X'; Y | (Wc, X))
The cancellation of the common term I(Wc; Y) requires I(Wc; Y) ≠ ∞.
Used by
InformationTheory.Shannon.ChannelCodingConverseGeneral.condMutualInfo_chain_rule_Y_2var
source2-variable Y-axis conditional chain rule for condMutualInfo.
I(X; (A, B) | Wc) = I(X; A | Wc) + I(X; B | (Wc, A))
Requires I(Wc; X) ≠ ∞.