InformationTheory

InformationTheory.Shannon.AWGN.ConverseMutualInfoFiniteness

source

AWGN channel-coding converse — mutual-information finiteness and chain #

Builds the mutual-information layer of the AWGN channel-coding converse (Cover–Thomas): the canonical joint law of (W, Yⁿ), Fano's inequality dispatch, the block-mixture output density used to bound I(W; Yⁿ), the finiteness of I(W; Yⁿ) and I(Xⁿ; Yⁿ) via the discrete-input compProd chain rule, the data-processing inequality, and the mutual-information chain rule I(Xⁿ; Yⁿ) ≤ ∑ᵢ I(Xᵢ; Yᵢ).

Main definitions #

  • awgnConverseJoint — the canonical joint law of (W, Yⁿ) under a uniform message W and the memoryless AWGN channel, as the mixture (1/M) ∑ₘ δ_m ⊗ ∏ᵢ AWGN_{encoder m i}.
  • perLetterYLaw — the per-coordinate output marginal of Yᵢ, a mixture of Gaussians.
  • perLetterMI / jointMIWYn / jointMIXnYn — the per-letter and joint mutual informations I(Xᵢ; Yᵢ), I(W; Yⁿ), I(Xⁿ; Yⁿ) on the canonical joint.

Main statements #

Implementation notes #

  • The mutual informations are stated through the single canonical joint awgnConverseJoint so that data-processing and chain-rule lemmas apply directly. Finiteness of I(W; Yⁿ) and I(Xⁿ; Yⁿ) is obtained from klDiv_ne_top (absolute continuity plus integrable log-likelihood ratio), constructed directly to avoid the circularity of a Real-form chain rule, since W is discrete and Xⁿ is finite-valued.

Local quantities: joint law, output marginals, mutual informations #

noncomputable def

InformationTheory.Shannon.AWGN.awgnConverseJoint

source
{P : } {N : NNReal} (h_meas : IsAwgnChannelMeasurable N) {M n : } (c : AwgnCode M n P) :

Canonical joint law of (W, Yⁿ) under a uniform message and the AWGN channel.

On the sample space Ω := Fin M × (Fin n → ℝ) with W = Prod.fst and Yⁿ = Prod.snd, under uniform W ∼ Uniform(Fin M) and conditional Yⁿ | W = m ∼ ∏ᵢ N(c.encoder m i, N), the joint law is the mixture (1/M) ∑ₘ δ_m ⊗ ∏ᵢ AWGN_{c.encoder m i}.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    Used by
      instance

      InformationTheory.Shannon.AWGN.awgnConverseJoint.instIsProbabilityMeasure

      source
      {P : } {N : NNReal} (h_meas : IsAwgnChannelMeasurable N) {M n : } [NeZero M] (c : AwgnCode M n P) :

      awgnConverseJoint is a probability measure when M ≥ 1 ([NeZero M]): the mixture has weights (1/M) summing to 1.

      Used by
        noncomputable def

        InformationTheory.Shannon.AWGN.perLetterYLaw

        source
        {P : } {N : NNReal} (h_meas : IsAwgnChannelMeasurable N) {M n : } (c : AwgnCode M n P) (i : Fin n) :

        Per-letter output marginal of Yᵢ under a uniform message: the closed form (1/M) ∑ₘ AWGN_{c.encoder m i}, a mixture of Gaussians.

        Equations
        Instances For
          Used by
            noncomputable def

            InformationTheory.Shannon.AWGN.perLetterMI

            source
            {P : } {N : NNReal} (h_meas : IsAwgnChannelMeasurable N) {M n : } (c : AwgnCode M n P) (i : Fin n) :

            per-letter mutual information I(X_i; Y_i) on the canonical joint awgnConverseJoint c h_meas, with X_i ω := c.encoder ω.1 i and Y_i ω := ω.2 i.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              Used by
                noncomputable def

                InformationTheory.Shannon.AWGN.jointMIWYn

                source
                {P : } {N : NNReal} (h_meas : IsAwgnChannelMeasurable N) {M n : } (c : AwgnCode M n P) :

                Joint MI I(W; Y^n) (message vs. channel output block).

                Equations
                Instances For
                  Used by
                    noncomputable def

                    InformationTheory.Shannon.AWGN.jointMIXnYn

                    source
                    {P : } {N : NNReal} (h_meas : IsAwgnChannelMeasurable N) {M n : } (c : AwgnCode M n P) :

                    Joint MI I(X^n; Y^n) (channel input block vs. channel output block).

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      Used by

                        Sub-bound lemmas #

                        The three analytic sub-bounds (per-letter log-density integrability, the continuous mutual-information chain rule, and the Markov-chain factorization) live as lemmas in InformationTheory/Shannon/AWGN/ConverseMIChainRule.lean and are invoked here as ordinary lemma calls.

                        Fano dispatch #

                        awgn_converse_single_shot_call invokes shannon_converse_single_shot with X := Fin M, Y := Fin n → ℝ, decoder := c.decoder, μ := awgnConverseJoint c h_meas, assembling Fano's inequality, the data-processing postprocessing step, the entropy chain, and H(W uniform) = log M.

                        Block-mixture output density #

                        The n-dimensional output density needed for finiteness of I(W; Yⁿ) and I(Xⁿ; Yⁿ). The block output blockYLaw is a mixture of n-dimensional product Gaussians over the finitely many codewords, so |log density| is dominated by a quadratic envelope centred at component m via a supremum upper bound together with a same-component lower bound (blockDensity ≥ M⁻¹ · (density of component m)).

                        Finiteness of I(W; Yⁿ) via the discrete-input compProd chain rule #

                        Since W = Fin M is discrete, the joint is (M⁻¹ • count) ⊗ₘ K with K m the n-dimensional block component, and the product of marginals is (M⁻¹ • count) ⊗ₘ const blockY. Finiteness follows from klDiv_ne_top (absolute continuity plus integrable log-likelihood ratio), reduced per-fibre to the output log-density integrability of each component (integrable_log_blockYLaw_on_component) and the Gaussian fibre log-density integrability.

                        theorem

                        InformationTheory.Shannon.AWGN.awgnConverseJoint_mutualInfo_ne_top

                        source
                        {P : } {N : NNReal} (hN : N 0) (h_meas : IsAwgnChannelMeasurable N) {M n : } [NeZero M] (c : AwgnCode M n P) :

                        AWGN converse mutual-information finiteness: mutualInfo (awgnConverseJoint c) Prod.fst Prod.snd ≠ ∞.

                        @audit:ok

                        Used by
                          theorem

                          InformationTheory.Shannon.AWGN.awgn_converse_single_shot_call

                          source
                          (P : ) (N : NNReal) (hN : N 0) (h_meas : IsAwgnChannelMeasurable N) {M n : } (hM : 2 M) (c : AwgnCode M n P) (Pe : ) (hPe : Pe = 1 / M * m : Fin M, (c.toCode.errorProbAt (awgnChannel N h_meas) m).toReal) :
                          Real.log M (jointMIWYn h_meas c).toReal + Real.binEntropy Pe + Pe * Real.log (M - 1)

                          Fano dispatch: assembling Fano's inequality, the data-processing postprocessing step, the entropy chain, and H(W) = log M through shannon_converse_single_shot gives log M ≤ I(W; Yⁿ).toReal + binEntropy(Pe) + Pe · log(M − 1).

                          Used by

                            Data-processing and chain rule #

                            The data-processing side derives I(W; Yⁿ) ≤ I(Xⁿ; Yⁿ) from mutualInfo_le_of_markov, with the Markov factorization supplied by awgnConverseMarkov_holds (AWGN/ConverseMIChainRule/Markov.lean). The chain-rule side connects to awgnContinuousMIChainRule_holds (AWGN/ConverseMIChainRule/PerLetterMI.lean) by definitional equality.

                            theorem

                            InformationTheory.Shannon.AWGN.awgn_dpi

                            source
                            (P : ) (N : NNReal) (hN : N 0) (h_meas : IsAwgnChannelMeasurable N) {M n : } [NeZero M] (c : AwgnCode M n P) :
                            (jointMIWYn h_meas c).toReal (jointMIXnYn h_meas c).toReal

                            Data-processing inequality: the Markov chain W → encoder ∘ W → Yⁿ yields I(W; Yⁿ) ≤ I(Xⁿ; Yⁿ) via mutualInfo_le_of_markov, with the Markov factorization supplied by awgnConverseMarkov_holds.

                            Used by
                              theorem

                              InformationTheory.Shannon.AWGN.awgn_chain_rule

                              source
                              (P : ) (N : NNReal) (hN : N 0) (h_meas : IsAwgnChannelMeasurable N) {M n : } [NeZero M] (c : AwgnCode M n P) :
                              (jointMIXnYn h_meas c).toReal i : Fin n, (perLetterMI h_meas c i).toReal

                              Mutual-information chain rule for the memoryless AWGN channel: I(Xⁿ; Yⁿ) ≤ ∑ᵢ I(Xᵢ; Yᵢ), supplied by awgnContinuousMIChainRule_holds. hN and [NeZero M] are regularity preconditions of that lemma's density route.

                              Used by
                                theorem

                                InformationTheory.Shannon.AWGN.awgnConverseJoint_mutualInfo_ne_top_via_chain

                                source
                                (P : ) (hP : 0 < P) (N : NNReal) (hN : N 0) (h_meas : IsAwgnChannelMeasurable N) {M n : } [NeZero M] (hn_pos : 0 < n) (c : AwgnCode M n P) :

                                Joint mutual-information finiteness on the AWGN converse joint: I(W; Yⁿ) ≠ ∞ ∧ I(Xⁿ; Yⁿ) ≠ ∞, since I(W; Yⁿ) ≤ I(Xⁿ; Yⁿ) ≤ ∑ᵢ I(Xᵢ; Yᵢ) ≤ n · (1/2) log(1 + P/N) < ∞.

                                @audit:ok

                                Used by