InformationTheory

InformationTheory.Shannon.BroadcastChannel.MartonUnion

source

Broadcast channel — Marton's inner bound as a union over auxiliary alphabets #

martonRegion is the quadrilateral of one fixed pair of auxiliary alphabets, whereas the UV outer region is a union over five-tuple laws. This file takes the union on the inner side, so that the two regions can be compared as sets, and records what makes the result behave like an inner bound: it is a nonempty lower set, it is unchanged when the auxiliary alphabets are relabeled, and it therefore absorbs the quadrilateral of every pair of finite auxiliary alphabets.

Main definitions #

  • bcAuxAlphabet k — the auxiliary alphabet of cardinality k + 1.
  • martonRegionUnion W — Marton's inner bound, as the closure of the union of martonRegion over the auxiliary laws on those alphabets.
  • martonRegionUnionFullSupport W — the same union restricted to the full-support indices, those whose auxiliary law and auxiliary kernel charge every point.

Main statements #

Implementation notes #

The auxiliaries range over ULift (Fin (k + 1)), one cardinality at a time, in the universe of the input alphabet: fixing the cardinality avoids quantifying over types, and the universe lift is what lets the comparison classes be applied at a member of the union. Relabeling invariance is what keeps that ladder lossless: an arbitrary pair of finite nonempty auxiliary alphabets is carried onto the rung of its own two cardinalities, so indexing the union by cardinalities rather than by types gives up nothing. A countable auxiliary alphabet is not available here, unlike on the outer side: the dependence between the two auxiliaries is the one information slot reading no output letter, so it is the one that can be infinite, and the toReal convention would then drop the sum-rate penalty.

abbrev

InformationTheory.Shannon.BroadcastChannel.Marton.bcAuxAlphabet

source
@[reducible, inline]
(k : ) :

The auxiliary alphabet of cardinality k + 1, in the universe of the input alphabet. The successor form keeps every index of the union nonempty, which martonRegion requires of its auxiliary alphabets.

Equations
Instances For
    Used by
      noncomputable def

      InformationTheory.Shannon.BroadcastChannel.Marton.martonRegionUnion

      source
      {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [Fintype β₁] [MeasurableSpace β₁] [Fintype β₂] [MeasurableSpace β₂] (W : BCChannel α β₁ β₂) :

      Marton's inner bound as a subset of the plane: the closure of the union of the quadrilaterals martonRegion pV K W over the auxiliary laws on bcAuxAlphabet. The closure makes the union a closed set, as bcCapacityRegion and bcOuterRegionUV both are, and costs nothing in either inclusion because a closed superset absorbs it.

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

          InformationTheory.Shannon.BroadcastChannel.Marton.martonRegionUnionFullSupport

          source
          {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [Fintype β₁] [MeasurableSpace β₁] [Fintype β₂] [MeasurableSpace β₂] (W : BCChannel α β₁ β₂) :

          The same union over the full-support indices only: the auxiliary law and the auxiliary kernel charge every point. Those are the two support hypotheses that marton_region_subset_capacity asks of the auxiliaries.

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

              InformationTheory.Shannon.BroadcastChannel.Marton.martonRegionUnion_subset_uv

              source
              {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [Fintype α] [Nonempty α] [MeasurableSpace α] [MeasurableSingletonClass α] [Fintype β₁] [Nonempty β₁] [MeasurableSpace β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [Nonempty β₂] [MeasurableSpace β₂] [MeasurableSingletonClass β₂] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] :

              Marton's inner bound is contained in the UV outer region, with no support hypothesis on the auxiliary law, the auxiliary kernel or the channel.

              Used by
                theorem

                InformationTheory.Shannon.BroadcastChannel.Marton.martonRegionUnionFullSupport_subset_union

                source
                {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [Fintype β₁] [MeasurableSpace β₁] [Fintype β₂] [MeasurableSpace β₂] (W : BCChannel α β₁ β₂) :
                Used by

                  Order, convexity and nonemptiness #

                  theorem

                  InformationTheory.Shannon.BroadcastChannel.Marton.martonRegion_isLowerSet

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

                    InformationTheory.Shannon.BroadcastChannel.Marton.martonRegion_convex

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

                      InformationTheory.Shannon.BroadcastChannel.Marton.martonRegion_nonempty

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

                        InformationTheory.Shannon.BroadcastChannel.Marton.martonRegionUnion_isLowerSet

                        source
                        {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [Fintype β₁] [MeasurableSpace β₁] [Fintype β₂] [MeasurableSpace β₂] (W : BCChannel α β₁ β₂) :
                        Used by
                          theorem

                          InformationTheory.Shannon.BroadcastChannel.Marton.martonRegionUnion_nonempty

                          source
                          {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [Fintype β₁] [MeasurableSpace β₁] [Fintype β₂] [MeasurableSpace β₂] [Nonempty α] (W : BCChannel α β₁ β₂) :
                          Used by

                            Relabeling the auxiliary alphabets #

                            theorem

                            InformationTheory.Shannon.BroadcastChannel.Marton.martonJointDistribution_map_relabel

                            source
                            {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [MeasurableSpace β₁] [MeasurableSpace β₂] {V₁ : Type u_3} {V₂ : Type u_4} {V₁' : Type u_5} {V₂' : Type u_6} [MeasurableSpace V₁] [MeasurableSpace V₂] [MeasurableSpace V₁'] [MeasurableSpace V₂'] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (e₁ : V₁ ≃ᵐ V₁') (e₂ : V₂ ≃ᵐ V₂') :
                            martonJointDistribution (MeasureTheory.Measure.map (⇑(e₁.prodCongr e₂)) pV) (K.comap (e₁.prodCongr e₂).symm ) W = MeasureTheory.Measure.map (fun (q : V₁ × V₂ × α × β₁ × β₂) => (e₁ q.1, e₂ q.2.1, q.2.2)) (martonJointDistribution pV K W)
                            Used by
                              theorem

                              InformationTheory.Shannon.BroadcastChannel.Marton.martonInfo₁_map_relabel

                              source
                              {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [MeasurableSpace β₁] [MeasurableSpace β₂] {V₁ : Type u_3} {V₂ : Type u_4} {V₁' : Type u_5} {V₂' : Type u_6} [MeasurableSpace V₁] [MeasurableSpace V₂] [MeasurableSpace V₁'] [MeasurableSpace V₂'] [Fintype V₁] [Nonempty V₁] [MeasurableSingletonClass V₁] [Fintype V₁'] [Nonempty V₁'] [MeasurableSingletonClass V₁'] [Fintype β₁] [Nonempty β₁] [MeasurableSingletonClass β₁] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (e₁ : V₁ ≃ᵐ V₁') (e₂ : V₂ ≃ᵐ V₂') :
                              martonInfo₁ (MeasureTheory.Measure.map (⇑(e₁.prodCongr e₂)) pV) (K.comap (e₁.prodCongr e₂).symm ) W = martonInfo₁ pV K W
                              Used by
                                theorem

                                InformationTheory.Shannon.BroadcastChannel.Marton.martonInfo₂_map_relabel

                                source
                                {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [MeasurableSpace β₁] [MeasurableSpace β₂] {V₁ : Type u_3} {V₂ : Type u_4} {V₁' : Type u_5} {V₂' : Type u_6} [MeasurableSpace V₁] [MeasurableSpace V₂] [MeasurableSpace V₁'] [MeasurableSpace V₂'] [Fintype V₂] [Nonempty V₂] [MeasurableSingletonClass V₂] [Fintype V₂'] [Nonempty V₂'] [MeasurableSingletonClass V₂'] [Fintype β₂] [Nonempty β₂] [MeasurableSingletonClass β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (e₁ : V₁ ≃ᵐ V₁') (e₂ : V₂ ≃ᵐ V₂') :
                                martonInfo₂ (MeasureTheory.Measure.map (⇑(e₁.prodCongr e₂)) pV) (K.comap (e₁.prodCongr e₂).symm ) W = martonInfo₂ pV K W
                                Used by
                                  theorem

                                  InformationTheory.Shannon.BroadcastChannel.Marton.martonInfoV₁V₂_map_relabel

                                  source
                                  {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [MeasurableSpace β₁] [MeasurableSpace β₂] {V₁ : Type u_3} {V₂ : Type u_4} {V₁' : Type u_5} {V₂' : Type u_6} [MeasurableSpace V₁] [MeasurableSpace V₂] [MeasurableSpace V₁'] [MeasurableSpace V₂'] [Fintype V₁] [Nonempty V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [Nonempty V₂] [MeasurableSingletonClass V₂] [Fintype V₁'] [Nonempty V₁'] [MeasurableSingletonClass V₁'] [Fintype V₂'] [Nonempty V₂'] [MeasurableSingletonClass V₂'] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (e₁ : V₁ ≃ᵐ V₁') (e₂ : V₂ ≃ᵐ V₂') :
                                  martonInfoV₁V₂ (MeasureTheory.Measure.map (⇑(e₁.prodCongr e₂)) pV) (K.comap (e₁.prodCongr e₂).symm ) W = martonInfoV₁V₂ pV K W
                                  Used by
                                    theorem

                                    InformationTheory.Shannon.BroadcastChannel.Marton.martonRegion_map_relabel

                                    source
                                    {α : Type u} {β₁ : Type u_1} {β₂ : Type u_2} [MeasurableSpace α] [MeasurableSpace β₁] [MeasurableSpace β₂] {V₁ : Type u_3} {V₂ : Type u_4} {V₁' : Type u_5} {V₂' : Type u_6} [MeasurableSpace V₁] [MeasurableSpace V₂] [MeasurableSpace V₁'] [MeasurableSpace V₂'] [Fintype V₁] [Nonempty V₁] [MeasurableSingletonClass V₁] [Fintype V₂] [Nonempty V₂] [MeasurableSingletonClass V₂] [Fintype V₁'] [Nonempty V₁'] [MeasurableSingletonClass V₁'] [Fintype V₂'] [Nonempty V₂'] [MeasurableSingletonClass V₂'] [Fintype β₁] [Nonempty β₁] [MeasurableSingletonClass β₁] [Fintype β₂] [Nonempty β₂] [MeasurableSingletonClass β₂] (pV : MeasureTheory.Measure (V₁ × V₂)) [MeasureTheory.IsProbabilityMeasure pV] (K : ProbabilityTheory.Kernel (V₁ × V₂) α) [ProbabilityTheory.IsMarkovKernel K] (W : BCChannel α β₁ β₂) [ProbabilityTheory.IsMarkovKernel W] (e₁ : V₁ ≃ᵐ V₁') (e₂ : V₂ ≃ᵐ V₂') :
                                    martonRegion (MeasureTheory.Measure.map (⇑(e₁.prodCongr e₂)) pV) (K.comap (e₁.prodCongr e₂).symm ) W = martonRegion pV K W
                                    Used by
                                      theorem

                                      InformationTheory.Shannon.BroadcastChannel.Marton.martonRegion_subset_union

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

                                      Every Marton quadrilateral lies in the union, whatever the auxiliary alphabets: the union is indexed by one alphabet of each finite cardinality, in the universe of the input alphabet, and a pair of auxiliary alphabets of the same cardinalities is carried onto those by a relabeling that leaves the three information terms of the quadrilateral unchanged.

                                      Used by