InformationTheory

InformationTheory.Shannon.BroadcastChannel.Marton.Covering

source

Marton's mutual covering lemma #

The second-moment core of Marton.MutualCovering bounds the probability that none of the M₁ * M₂ codeword pairs lands in an abstract measurable set S, given a uniform bound qbar on the conditional slices of S. This file instantiates that core at the jointly typical set of a pair of i.i.d. sequences and turns the resulting estimate into the covering statement used by Marton's inner bound: as soon as the two subcodebook rates add up to more than I(V₁; V₂), a jointly typical pair exists with probability tending to one.

The same estimate is available at the jointly strongly typical set, whose radius has to be amplified by coveringBandConst to reach the weak bands the slice estimates are stated at. That reading is the one the encoder's selection rule consumes, because only a strongly typical selected pair pins the empirical type of the transmitted words.

Main definitions #

  • codebookEmbed — a pair of codebooks read as one padded family of codewords, exhibiting the product of two codebook ensembles as the canonical ambient of Marton.MutualCovering.
  • coveringBandConst and martonCoveringBandConst — the Lipschitz factor converting the type radius of a jointly strongly typical pair into the weak bands of the two blocks and of their joint sequence.

Main statements #

Symmetry of the jointly typical set #

theorem

InformationTheory.Shannon.BroadcastChannel.Marton.measureReal_map_jointSequence_swap

source
{Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) (a : A) (b : B) :
Used by
    theorem

    InformationTheory.Shannon.BroadcastChannel.Marton.entropy_jointSequence_swap

    source
    {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) :
    Used by
      theorem

      InformationTheory.Shannon.BroadcastChannel.Marton.mem_jointlyTypicalSet_swap

      source
      {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) (n : ) (ε : ) (x : Fin nA) (y : Fin nB) :

      The jointly typical set is symmetric in its two blocks: a pair (x, y) is jointly typical for (Xs, Ys) exactly when the swapped pair (y, x) is jointly typical for (Ys, Xs). Both the per-letter log-likelihood and the joint entropy are invariant under the swap, so the three bands defining membership are exchanged rather than changed.

      Used by

        Mass of the conditional slices #

        theorem

        InformationTheory.Shannon.BroadcastChannel.Marton.measureReal_jointlyTypicalFiber_le

        source
        {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) [MeasureTheory.IsProbabilityMeasure μ] (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) (hindepX : ProbabilityTheory.iIndepFun (fun (i : ) => Xs i) μ) (hidentX : ∀ (i : ), ProbabilityTheory.IdentDistrib (Xs i) (Xs 0) μ μ) (hindepY : ProbabilityTheory.iIndepFun (fun (i : ) => Ys i) μ) (hidentY : ∀ (i : ), ProbabilityTheory.IdentDistrib (Ys i) (Ys 0) μ μ) (hindepZ : ProbabilityTheory.iIndepFun (fun (i : ) => ChannelCoding.jointSequence Xs Ys i) μ) (hidentZ : ∀ (i : ), ProbabilityTheory.IdentDistrib (ChannelCoding.jointSequence Xs Ys i) (ChannelCoding.jointSequence Xs Ys 0) μ μ) (hposX : ∀ (x : A), 0 < (MeasureTheory.Measure.map (Xs 0) μ).real {x}) (hposY : ∀ (y : B), 0 < (MeasureTheory.Measure.map (Ys 0) μ).real {y}) (hposZ : ∀ (p : A × B), 0 < (MeasureTheory.Measure.map (ChannelCoding.jointSequence Xs Ys 0) μ).real {p}) (n : ) {ε : } (y : Fin nB) :
        (MeasureTheory.Measure.map (jointRV Xs n) μ).real ((fun (x : Fin nA) => (x, y)) ⁻¹' ChannelCoding.jointlyTypicalSet μ Xs Ys n ε) Real.exp (n * (entropy μ (ChannelCoding.jointSequence Xs Ys 0) - entropy μ (Xs 0) - entropy μ (Ys 0) + 3 * ε))

        Uniform bound on the conditional slices of the jointly typical set taken along the first block: whatever the second word y, the i.i.d. law of the first sequence gives the set of words jointly typical with y mass at most exp(-n (I(X; Y) - 3ε)), where I(X; Y) is read as H(X) + H(Y) - H(X, Y).

        Used by
          theorem

          InformationTheory.Shannon.BroadcastChannel.Marton.measureReal_jointlyTypicalFiberSnd_le

          source
          {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) [MeasureTheory.IsProbabilityMeasure μ] (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) (hindepX : ProbabilityTheory.iIndepFun (fun (i : ) => Xs i) μ) (hidentX : ∀ (i : ), ProbabilityTheory.IdentDistrib (Xs i) (Xs 0) μ μ) (hindepY : ProbabilityTheory.iIndepFun (fun (i : ) => Ys i) μ) (hidentY : ∀ (i : ), ProbabilityTheory.IdentDistrib (Ys i) (Ys 0) μ μ) (hindepZ : ProbabilityTheory.iIndepFun (fun (i : ) => ChannelCoding.jointSequence Xs Ys i) μ) (hidentZ : ∀ (i : ), ProbabilityTheory.IdentDistrib (ChannelCoding.jointSequence Xs Ys i) (ChannelCoding.jointSequence Xs Ys 0) μ μ) (hposX : ∀ (x : A), 0 < (MeasureTheory.Measure.map (Xs 0) μ).real {x}) (hposY : ∀ (y : B), 0 < (MeasureTheory.Measure.map (Ys 0) μ).real {y}) (hposZ : ∀ (p : A × B), 0 < (MeasureTheory.Measure.map (ChannelCoding.jointSequence Xs Ys 0) μ).real {p}) (n : ) {ε : } (x : Fin nA) :

          The mirror image of measureReal_jointlyTypicalFiber_le, slicing along the second block: the same exponential bound holds for the mass the i.i.d. law of the second sequence gives to the words jointly typical with a prescribed first word x. The covering estimate needs both families, since the second-moment argument controls the two directions of the pair count separately.

          Used by

            A pair of codebooks as the covering ambient #

            theorem

            InformationTheory.Shannon.BroadcastChannel.Marton.pairCount_eq_zero_iff

            source
            {Ω : Type u_1} {A : Type u_2} {B : Type u_3} [MeasurableSpace Ω] {M₁ M₂ : } (X : Fin M₁ΩA) (Y : Fin M₂ΩB) (S : Set (A × B)) (ω : Ω) :
            pairCount X Y S ω = 0 ∀ (i : Fin M₁) (j : Fin M₂), (X i ω, Y j ω)S
            Used by
              noncomputable def

              InformationTheory.Shannon.BroadcastChannel.Marton.codebookEmbed

              source
              {A : Type u_2} {B : Type u_3} [Nonempty A] [Nonempty B] (M₁ M₂ : ) :
              (Fin M₁A) × (Fin M₂B)Fin M₁ Fin M₂A × B

              A pair of codebooks read as the single padded family of codewords carried by the canonical ambient of the second-moment estimate: the i-th codeword of the first codebook is padded by a constant in the second alphabet and vice versa.

              Equations
              Instances For
                Used by
                  theorem

                  InformationTheory.Shannon.BroadcastChannel.Marton.measurePreserving_codebookEmbed

                  source
                  Used by
                    theorem

                    InformationTheory.Shannon.BroadcastChannel.Marton.meas_codebook_no_pair_le

                    source
                    {A : Type u_2} {B : Type u_3} [MeasurableSpace A] [MeasurableSpace B] [Nonempty A] [Nonempty B] {M₁ M₂ : } (μX : MeasureTheory.Measure A) (μY : MeasureTheory.Measure B) [MeasureTheory.IsProbabilityMeasure μX] [MeasureTheory.IsProbabilityMeasure μY] {S : Set (A × B)} (hS : MeasurableSet S) {qbar : } (hsliceY : ∀ (x : A), (μY (Prod.mk x ⁻¹' S)).toReal qbar) (hsliceX : ∀ (y : B), (μX ((fun (x : A) => (x, y)) ⁻¹' S)).toReal qbar) (hM₁ : M₁ 0) (hM₂ : M₂ 0) (hp : 0 < pairProb μX μY S) :
                    ((MeasureTheory.Measure.pi fun (x : Fin M₁) => μX).prod (MeasureTheory.Measure.pi fun (x : Fin M₂) => μY)) {c : (Fin M₁A) × (Fin M₂B) | ∀ (i : Fin M₁) (j : Fin M₂), (c.1 i, c.2 j)S} ENNReal.ofReal (1 / (M₁ * M₂ * pairProb μX μY S) + qbar / (M₁ * pairProb μX μY S) + qbar / (M₂ * pairProb μX μY S))

                    The sharpened mutual covering estimate, read on a product of two independent codebook ensembles.

                    Used by

                      The block law of an i.i.d. sequence #

                      theorem

                      InformationTheory.Shannon.BroadcastChannel.Marton.map_jointRV_eq_pi

                      source
                      {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] (μ : MeasureTheory.Measure Ω) [MeasureTheory.IsProbabilityMeasure μ] (Xs : ΩA) (hXs : ∀ (i : ), Measurable (Xs i)) (hindep : ProbabilityTheory.iIndepFun (fun (i : ) => Xs i) μ) (hident : ∀ (i : ), ProbabilityTheory.IdentDistrib (Xs i) (Xs 0) μ μ) (n : ) :
                      Used by

                        Tail estimates for the three Chebyshev terms #

                        The band constant of the strong radius #

                        noncomputable def

                        InformationTheory.Shannon.BroadcastChannel.Marton.coveringBandConst

                        source
                        {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [MeasurableSpace A] {B : Type u_3} [Fintype B] [MeasurableSpace B] (μ : MeasureTheory.Measure Ω) (Xs : ΩA) (Ys : ΩB) :

                        The Lipschitz factor by which the type radius of a jointly strongly typical pair has to be amplified to reach the weak bands of the two blocks and of their joint sequence. It is the single constant governing both directions the covering estimate needs: the exponential lower bound on the mass of the strongly typical set, and the slice bound obtained by reading that set inside a weakly typical set of the widened radius.

                        @audit:ok

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

                            InformationTheory.Shannon.BroadcastChannel.Marton.coveringBandConst_nonneg

                            source
                            {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) (Xs : ΩA) (Ys : ΩB) :
                            Used by
                              theorem

                              InformationTheory.Shannon.BroadcastChannel.Marton.coveringBandConst_mul

                              source
                              {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) (Xs : ΩA) (Ys : ΩB) (ε : ) :
                              (Fintype.card B) * ε * logSumAbs μ Xs + (Fintype.card A) * ε * logSumAbs μ Ys + ε * logSumAbs μ (ChannelCoding.jointSequence Xs Ys) = ε * coveringBandConst μ Xs Ys
                              Used by
                                theorem

                                InformationTheory.Shannon.BroadcastChannel.Marton.measurableSet_jointStronglyTypicalSet

                                source
                                {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) (Xs : ΩA) (Ys : ΩB) (n : ) (ε : ) :
                                Used by
                                  theorem

                                  InformationTheory.Shannon.BroadcastChannel.Marton.jointStronglyTypicalSet_subset_jointlyTypicalSet_bandConst

                                  source
                                  {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) [MeasureTheory.IsProbabilityMeasure μ] (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) (hmarg_X : MeasureTheory.Measure.map Prod.fst (MeasureTheory.Measure.map (ChannelCoding.jointSequence Xs Ys 0) μ) = MeasureTheory.Measure.map (Xs 0) μ) (hmarg_Y : MeasureTheory.Measure.map Prod.snd (MeasureTheory.Measure.map (ChannelCoding.jointSequence Xs Ys 0) μ) = MeasureTheory.Measure.map (Ys 0) μ) {n : } (hn : 0 < n) {ε : } ( : 0 < ε) :
                                  Used by

                                    Mutual covering over abstract alphabets #

                                    theorem

                                    InformationTheory.Shannon.BroadcastChannel.Marton.meas_codebook_no_jointlyTypicalPair_lt

                                    source
                                    {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) [MeasureTheory.IsProbabilityMeasure μ] (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) (hindepX : ProbabilityTheory.iIndepFun (fun (i : ) => Xs i) μ) (hidentX : ∀ (i : ), ProbabilityTheory.IdentDistrib (Xs i) (Xs 0) μ μ) (hindepY : ProbabilityTheory.iIndepFun (fun (i : ) => Ys i) μ) (hidentY : ∀ (i : ), ProbabilityTheory.IdentDistrib (Ys i) (Ys 0) μ μ) (hindepZ : ProbabilityTheory.iIndepFun (fun (i : ) => ChannelCoding.jointSequence Xs Ys i) μ) (hidentZ : ∀ (i : ), ProbabilityTheory.IdentDistrib (ChannelCoding.jointSequence Xs Ys i) (ChannelCoding.jointSequence Xs Ys 0) μ μ) (hposX : ∀ (x : A), 0 < (MeasureTheory.Measure.map (Xs 0) μ).real {x}) (hposY : ∀ (y : B), 0 < (MeasureTheory.Measure.map (Ys 0) μ).real {y}) (hposZ : ∀ (p : A × B), 0 < (MeasureTheory.Measure.map (ChannelCoding.jointSequence Xs Ys 0) μ).real {p}) {R₁' R₂' ε η : } ( : 0 < ε) ( : 0 < η) (hcov : entropy μ (Xs 0) + entropy μ (Ys 0) - entropy μ (ChannelCoding.jointSequence Xs Ys 0) + 3 * ε < R₁' + R₂') (hε₁ : 6 * ε < R₁') (hε₂ : 6 * ε < R₂') :
                                    ∃ (N : ), ∀ (n : ), N n((ChannelCoding.codebookMeasure (MeasureTheory.Measure.map (Xs 0) μ) Real.exp (n * R₁')⌉₊ n).prod (ChannelCoding.codebookMeasure (MeasureTheory.Measure.map (Ys 0) μ) Real.exp (n * R₂')⌉₊ n)).real {c : ChannelCoding.Codebook Real.exp (n * R₁')⌉₊ n A × ChannelCoding.Codebook Real.exp (n * R₂')⌉₊ n B | ∀ (i : Fin Real.exp (n * R₁')⌉₊) (j : Fin Real.exp (n * R₂')⌉₊), (c.1 i, c.2 j)ChannelCoding.jointlyTypicalSet μ Xs Ys n ε} < η

                                    Mutual covering for a pair of independent i.i.d. codebook ensembles. Writing I = H(X) + H(Y) - H(X, Y) for the dependence between the two sequences, if the two subcodebook rates R₁', R₂' add up to more than I and ε is small enough compared with both the slack R₁' + R₂' - I and the individual rates, then the probability that no pair of codewords is jointly typical drops below any prescribed η.

                                    Used by
                                      theorem

                                      InformationTheory.Shannon.BroadcastChannel.Marton.meas_codebook_no_jointStronglyTypicalPair_lt

                                      source
                                      {Ω : Type u_1} [MeasurableSpace Ω] {A : Type u_2} [Fintype A] [DecidableEq A] [Nonempty A] [MeasurableSpace A] [MeasurableSingletonClass A] {B : Type u_3} [Fintype B] [DecidableEq B] [Nonempty B] [MeasurableSpace B] [MeasurableSingletonClass B] (μ : MeasureTheory.Measure Ω) [MeasureTheory.IsProbabilityMeasure μ] (Xs : ΩA) (Ys : ΩB) (hXs : ∀ (i : ), Measurable (Xs i)) (hYs : ∀ (i : ), Measurable (Ys i)) (hindepX : ProbabilityTheory.iIndepFun (fun (i : ) => Xs i) μ) (hidentX : ∀ (i : ), ProbabilityTheory.IdentDistrib (Xs i) (Xs 0) μ μ) (hindepY : ProbabilityTheory.iIndepFun (fun (i : ) => Ys i) μ) (hidentY : ∀ (i : ), ProbabilityTheory.IdentDistrib (Ys i) (Ys 0) μ μ) (hindepZ : ProbabilityTheory.iIndepFun (fun (i : ) => ChannelCoding.jointSequence Xs Ys i) μ) (hidentZ : ∀ (i : ), ProbabilityTheory.IdentDistrib (ChannelCoding.jointSequence Xs Ys i) (ChannelCoding.jointSequence Xs Ys 0) μ μ) (hposX : ∀ (x : A), 0 < (MeasureTheory.Measure.map (Xs 0) μ).real {x}) (hposY : ∀ (y : B), 0 < (MeasureTheory.Measure.map (Ys 0) μ).real {y}) (hposZ : ∀ (p : A × B), 0 < (MeasureTheory.Measure.map (ChannelCoding.jointSequence Xs Ys 0) μ).real {p}) {R₁' R₂' ε η : } ( : 0 < ε) ( : 0 < η) (hcov : entropy μ (Xs 0) + entropy μ (Ys 0) - entropy μ (ChannelCoding.jointSequence Xs Ys 0) + (coveringBandConst μ Xs Ys + 3) * ε < R₁' + R₂') (hε₁ : (4 * coveringBandConst μ Xs Ys + 6) * ε < R₁') (hε₂ : (4 * coveringBandConst μ Xs Ys + 6) * ε < R₂') :
                                      ∃ (N : ), ∀ (n : ), N n((ChannelCoding.codebookMeasure (MeasureTheory.Measure.map (Xs 0) μ) Real.exp (n * R₁')⌉₊ n).prod (ChannelCoding.codebookMeasure (MeasureTheory.Measure.map (Ys 0) μ) Real.exp (n * R₂')⌉₊ n)).real {c : ChannelCoding.Codebook Real.exp (n * R₁')⌉₊ n A × ChannelCoding.Codebook Real.exp (n * R₂')⌉₊ n B | ∀ (i : Fin Real.exp (n * R₁')⌉₊) (j : Fin Real.exp (n * R₂')⌉₊), (c.1 i, c.2 j)jointStronglyTypicalSet μ Xs Ys n ε} < η

                                      Mutual covering at a jointly strongly typical pair. The strongly typical set is smaller than the weakly typical one, so this bound implies the weak reading of ε-widened radius; the price is that the covering rate conditions are stated at the radius amplified by coveringBandConst, which is what converts the strong radius into the weak bands governing both the mass of the set and its conditional slices.

                                      @audit:ok

                                      Used by

                                        Marton's auxiliary variables: the weakly typical reading #

                                        theorem

                                        InformationTheory.Shannon.BroadcastChannel.Marton.meas_marton_codebook_no_jointlyTypicalPair_lt

                                        source
                                        {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [DecidableEq V₁] [Nonempty V₁] [MeasurableSpace V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [DecidableEq V₂] [Nonempty V₂] [MeasurableSpace V₂] [MeasurableSingletonClass V₂] [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [DecidableEq β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [DecidableEq β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (hpV : ∀ (v : V₁ × V₂), 0 < pV.real {v}) (hK : ∀ (v : V₁ × V₂) (a : α), 0 < (K v).real {a}) (hW : ∀ (a : α) (b : β₁ × β₂), 0 < (W a).real {b}) {R₁' R₂' ε η : } ( : 0 < ε) ( : 0 < η) (hcov : martonInfoV₁V₂ pV K W + 3 * ε < R₁' + R₂') (hε₁ : 6 * ε < R₁') (hε₂ : 6 * ε < R₂') :

                                        Mutual covering for Marton's auxiliary codebooks at a prescribed typicality parameter. The parameter ε is a hypothesis rather than an output, so that a consumer may choose one ε meeting the smallness conditions here together with those of the decoding analysis; marton_mutual_covering is the form in which ε is chosen, uniformly in the failure level η.

                                        @audit:ok

                                        Used by
                                          theorem

                                          InformationTheory.Shannon.BroadcastChannel.Marton.marton_mutual_covering

                                          source
                                          {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [DecidableEq V₁] [Nonempty V₁] [MeasurableSpace V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [DecidableEq V₂] [Nonempty V₂] [MeasurableSpace V₂] [MeasurableSingletonClass V₂] [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [DecidableEq β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [DecidableEq β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (hpV : ∀ (v : V₁ × V₂), 0 < pV.real {v}) (hK : ∀ (v : V₁ × V₂) (a : α), 0 < (K v).real {a}) (hW : ∀ (a : α) (b : β₁ × β₂), 0 < (W a).real {b}) {R₁' R₂' ε₀ : } (hR₁' : 0 < R₁') (hR₂' : 0 < R₂') (hcov : martonInfoV₁V₂ pV K W < R₁' + R₂') (hε₀ : 0 < ε₀) :
                                          ε > 0, ε < ε₀ ∀ (η : ), 0 < η∃ (N : ), ∀ (n : ), N n((ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.fst pV) Real.exp (n * R₁')⌉₊ n).prod (ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.snd pV) Real.exp (n * R₂')⌉₊ n)).real {c : ChannelCoding.Codebook Real.exp (n * R₁')⌉₊ n V₁ × ChannelCoding.Codebook Real.exp (n * R₂')⌉₊ n V₂ | ∀ (i : Fin Real.exp (n * R₁')⌉₊) (j : Fin Real.exp (n * R₂')⌉₊), (c.1 i, c.2 j)ChannelCoding.jointlyTypicalSet (martonAmbientMeasure pV K W) martonV₁s martonV₂s n ε} < η

                                          Marton's mutual covering lemma. Two subcodebooks are drawn independently, the first from the V₁-marginal of the auxiliary law and the second from its V₂-marginal, at positive rates R₁' and R₂' whose sum exceeds the dependence I(V₁; V₂) between the auxiliary variables. Then for every prescribed bound ε₀ there is a typicality parameter ε < ε₀ for which the probability that no pair of codewords is jointly typical falls below any prescribed failure level η at every large enough blocklength. The single ε works for all η, so the failure probability tends to zero as the blocklength grows.

                                          The upper bound ε < ε₀ is what gives the conclusion content. A typicality radius wide enough to swallow the whole space empties the failure event, so a statement asserting only 0 < ε would be satisfied by a vacuous witness independently of the rates.

                                          The hypotheses hpV, hK, hW are the full-support regularity preconditions shared by every typicality bound in this development; they are what rules out a deterministic input map x = f(v₁, v₂) and forces the general-kernel formulation.

                                          @audit:ok

                                          Used by
                                            theorem

                                            InformationTheory.Shannon.BroadcastChannel.Marton.marton_mutual_covering_of_indepAux

                                            source
                                            {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [DecidableEq V₁] [Nonempty V₁] [MeasurableSpace V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [DecidableEq V₂] [Nonempty V₂] [MeasurableSpace V₂] [MeasurableSingletonClass V₂] [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [DecidableEq β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [DecidableEq β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (p₁ : MeasureTheory.Measure V₁) [MeasureTheory.IsProbabilityMeasure p₁] (p₂ : MeasureTheory.Measure V₂) [MeasureTheory.IsProbabilityMeasure p₂] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (hp₁ : ∀ (v : V₁), 0 < p₁.real {v}) (hp₂ : ∀ (v : V₂), 0 < p₂.real {v}) (hK : ∀ (v : V₁ × V₂) (a : α), 0 < (K v).real {a}) (hW : ∀ (a : α) (b : β₁ × β₂), 0 < (W a).real {b}) {R₁' R₂' ε₀ : } (hR₁' : 0 < R₁') (hR₂' : 0 < R₂') (hε₀ : 0 < ε₀) :
                                            ε > 0, ε < ε₀ ∀ (η : ), 0 < η∃ (N : ), ∀ (n : ), N n((ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.fst (p₁.prod p₂)) Real.exp (n * R₁')⌉₊ n).prod (ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.snd (p₁.prod p₂)) Real.exp (n * R₂')⌉₊ n)).real {c : ChannelCoding.Codebook Real.exp (n * R₁')⌉₊ n V₁ × ChannelCoding.Codebook Real.exp (n * R₂')⌉₊ n V₂ | ∀ (i : Fin Real.exp (n * R₁')⌉₊) (j : Fin Real.exp (n * R₂')⌉₊), (c.1 i, c.2 j)ChannelCoding.jointlyTypicalSet (martonAmbientMeasure (p₁.prod p₂) K W) martonV₁s martonV₂s n ε} < η

                                            Mutual covering with independent auxiliary variables, where the covering threshold I(V₁; V₂) vanishes and every pair of positive rates therefore qualifies. The typicality parameter is again produced below any prescribed bound ε₀, uniformly in the failure level. This is the degenerate regime of Marton's inner bound, and it certifies that the hypotheses of marton_mutual_covering are jointly satisfiable.

                                            @audit:ok

                                            Used by

                                              The strongly typical reading #

                                              noncomputable def

                                              InformationTheory.Shannon.BroadcastChannel.Marton.martonCoveringBandConst

                                              source
                                              {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [MeasurableSpace V₁] [Fintype V₂] [MeasurableSpace V₂] [MeasurableSpace α] [MeasurableSpace β₁] [MeasurableSpace β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) (K : ProbabilityTheory.Kernel (V₁ × V₂) α) (W : BCChannel α β₁ β₂) :

                                              The Lipschitz factor relating the type radius of a jointly strongly typical auxiliary pair to the weak bands of the two auxiliary blocks and of their joint sequence. It is the covering counterpart of martonBandConst, which governs the transmitted (V₁, X) pair instead.

                                              @audit:ok

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

                                                  InformationTheory.Shannon.BroadcastChannel.Marton.martonCoveringBandConst_nonneg

                                                  source
                                                  {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [DecidableEq V₁] [Nonempty V₁] [MeasurableSpace V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [DecidableEq V₂] [Nonempty V₂] [MeasurableSpace V₂] [MeasurableSingletonClass V₂] [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [DecidableEq β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [DecidableEq β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) (K : ProbabilityTheory.Kernel (V₁ × V₂) α) (W : BCChannel α β₁ β₂) :
                                                  Used by
                                                    theorem

                                                    InformationTheory.Shannon.BroadcastChannel.Marton.meas_marton_codebook_no_jointStronglyTypicalPair_lt

                                                    source
                                                    {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [DecidableEq V₁] [Nonempty V₁] [MeasurableSpace V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [DecidableEq V₂] [Nonempty V₂] [MeasurableSpace V₂] [MeasurableSingletonClass V₂] [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [DecidableEq β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [DecidableEq β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (hpV : ∀ (v : V₁ × V₂), 0 < pV.real {v}) (hK : ∀ (v : V₁ × V₂) (a : α), 0 < (K v).real {a}) (hW : ∀ (a : α) (b : β₁ × β₂), 0 < (W a).real {b}) {R₁' R₂' ε η : } ( : 0 < ε) ( : 0 < η) (hcov : martonInfoV₁V₂ pV K W + (martonCoveringBandConst pV K W + 3) * ε < R₁' + R₂') (hε₁ : (4 * martonCoveringBandConst pV K W + 6) * ε < R₁') (hε₂ : (4 * martonCoveringBandConst pV K W + 6) * ε < R₂') :

                                                    Mutual covering for Marton's auxiliary codebooks at a prescribed typicality parameter, with the covering set read as the jointly strongly typical one. This is the form the encoder's selection rule consumes: a strongly typical selected pair is what pins the empirical type of the transmitted words, which the receiver-1 conditional AEP needs.

                                                    @audit:ok

                                                    Used by
                                                      theorem

                                                      InformationTheory.Shannon.BroadcastChannel.Marton.marton_strong_mutual_covering

                                                      source
                                                      {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [DecidableEq V₁] [Nonempty V₁] [MeasurableSpace V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [DecidableEq V₂] [Nonempty V₂] [MeasurableSpace V₂] [MeasurableSingletonClass V₂] [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [DecidableEq β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [DecidableEq β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (hpV : ∀ (v : V₁ × V₂), 0 < pV.real {v}) (hK : ∀ (v : V₁ × V₂) (a : α), 0 < (K v).real {a}) (hW : ∀ (a : α) (b : β₁ × β₂), 0 < (W a).real {b}) {R₁' R₂' ε₀ : } (hR₁' : 0 < R₁') (hR₂' : 0 < R₂') (hcov : martonInfoV₁V₂ pV K W < R₁' + R₂') (hε₀ : 0 < ε₀) :
                                                      ε > 0, ε < ε₀ ∀ (η : ), 0 < η∃ (N : ), ∀ (n : ), N n((ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.fst pV) Real.exp (n * R₁')⌉₊ n).prod (ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.snd pV) Real.exp (n * R₂')⌉₊ n)).real {c : ChannelCoding.Codebook Real.exp (n * R₁')⌉₊ n V₁ × ChannelCoding.Codebook Real.exp (n * R₂')⌉₊ n V₂ | ∀ (i : Fin Real.exp (n * R₁')⌉₊) (j : Fin Real.exp (n * R₂')⌉₊), (c.1 i, c.2 j)jointStronglyTypicalSet (martonAmbientMeasure pV K W) martonV₁s martonV₂s n ε} < η

                                                      Marton's mutual covering lemma at the strongly typical set. Two subcodebooks are drawn independently, the first from the V₁-marginal of the auxiliary law and the second from its V₂-marginal, at positive rates R₁' and R₂' whose sum exceeds the dependence I(V₁; V₂) between the auxiliary variables. Then for every prescribed bound ε₀ there is a typicality parameter ε < ε₀ for which the probability that no pair of codewords is jointly strongly typical falls below any prescribed failure level η at every large enough blocklength. The single ε works for all η, so the failure probability tends to zero as the blocklength grows.

                                                      This is strictly stronger than marton_mutual_covering: the strongly typical set is contained in the weakly typical one of the radius widened by martonCoveringBandConst, so the event bounded here contains the weak one.

                                                      The upper bound ε < ε₀ is what gives the conclusion content. A typicality radius wide enough to swallow the whole space empties the failure event, so a statement asserting only 0 < ε would be satisfied by a vacuous witness independently of the rates.

                                                      The hypotheses hpV, hK, hW are the full-support regularity preconditions shared by every typicality bound in this development; they are what rules out a deterministic input map x = f(v₁, v₂) and forces the general-kernel formulation.

                                                      @audit:ok

                                                      Used by
                                                        theorem

                                                        InformationTheory.Shannon.BroadcastChannel.Marton.marton_strong_mutual_covering_of_indepAux

                                                        source
                                                        {V₁ : Type u_1} {V₂ : Type u_2} {α : Type u_3} {β₁ : Type u_4} {β₂ : Type u_5} [Fintype V₁] [DecidableEq V₁] [Nonempty V₁] [MeasurableSpace V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [DecidableEq V₂] [Nonempty V₂] [MeasurableSpace V₂] [MeasurableSingletonClass V₂] [Fintype α] [DecidableEq α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [DecidableEq β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [DecidableEq β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (p₁ : MeasureTheory.Measure V₁) [MeasureTheory.IsProbabilityMeasure p₁] (p₂ : MeasureTheory.Measure V₂) [MeasureTheory.IsProbabilityMeasure p₂] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (hp₁ : ∀ (v : V₁), 0 < p₁.real {v}) (hp₂ : ∀ (v : V₂), 0 < p₂.real {v}) (hK : ∀ (v : V₁ × V₂) (a : α), 0 < (K v).real {a}) (hW : ∀ (a : α) (b : β₁ × β₂), 0 < (W a).real {b}) {R₁' R₂' ε₀ : } (hR₁' : 0 < R₁') (hR₂' : 0 < R₂') (hε₀ : 0 < ε₀) :
                                                        ε > 0, ε < ε₀ ∀ (η : ), 0 < η∃ (N : ), ∀ (n : ), N n((ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.fst (p₁.prod p₂)) Real.exp (n * R₁')⌉₊ n).prod (ChannelCoding.codebookMeasure (MeasureTheory.Measure.map Prod.snd (p₁.prod p₂)) Real.exp (n * R₂')⌉₊ n)).real {c : ChannelCoding.Codebook Real.exp (n * R₁')⌉₊ n V₁ × ChannelCoding.Codebook Real.exp (n * R₂')⌉₊ n V₂ | ∀ (i : Fin Real.exp (n * R₁')⌉₊) (j : Fin Real.exp (n * R₂')⌉₊), (c.1 i, c.2 j)jointStronglyTypicalSet (martonAmbientMeasure (p₁.prod p₂) K W) martonV₁s martonV₂s n ε} < η

                                                        Strongly typical mutual covering with independent auxiliary variables, where the covering threshold I(V₁; V₂) vanishes and every pair of positive rates therefore qualifies. The typicality parameter is again produced below any prescribed bound ε₀, uniformly in the failure level. This is the degenerate regime of Marton's inner bound, and it certifies that the hypotheses of marton_strong_mutual_covering are jointly satisfiable.

                                                        @audit:ok

                                                        Used by