PFR/Mathlib/Probability/Kernel/Composition/Comp.lean

GitHub source file

Explanation legend Lean4 Domain Explanation Language (L4DEL)

L4DEL explanations are a separate layer. They do not change the Lean source. Intuition is explanatory prose; numbered items are a reading path; sources link the wording back to evidence.

L4DEL
Lean4 Domain Explanation Language

Credit: The upstream authors and contributors retain credit for the project and mathematics. lean4-explainer only renders their pinned source and adds the separately disclosed explanation layer.

Project sources: Pinned project documentation, Polynomial Freiman-Ruzsa proof paper, arXiv v2

30 declarations, 0 contain sorry, 0 declared as axioms

Imports (2)
Imported by 2 files
  1. lemma ProbabilityTheory.Kernel.map_map line 21 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Measurable, Eq, ProbabilityTheory.Kernel.map, Function.comp

    Proof uses: ProbabilityTheory.Kernel.ext, MeasureTheory.Measure.ext, MeasureTheory.Measure, Set, MeasurableSet, Eq.mpr, ENNReal, MeasureTheory.Measure.map, id, congrArg, ProbabilityTheory.Kernel.map_apply, Measurable.comp, MeasureTheory.Measure.map_map, Eq.refl

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

    Open to load the checked before-and-after goal states.

  2. lemma ProbabilityTheory.Kernel.map_swapRight line 26 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.map, ProbabilityTheory.Kernel.swapRight, Function.comp, Prod.swap

    Proof uses: dite, Measurable, Classical.propDecidable, Eq.mpr, id, congrArg, ProbabilityTheory.Kernel.swapRight_eq, ProbabilityTheory.Kernel.map_map, measurable_swap, Eq.refl, Not, Mathlib.Tactic.Contrapose.contrapose₄, Measurable.comp, of_eq_true, Eq.trans, OfNat.ofNat, True, congr, ProbabilityTheory.Kernel.map_of_not_measurable, eq_self

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 8 steps

    Open to load the checked before-and-after goal states.

  3. def ProbabilityTheory.Kernel.deleteMiddle line 37 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod

    Proof uses: ProbabilityTheory.Kernel.mapOfMeasurable, Prod.mk, Prod.fst, Prod.snd

    3 instances, coercions and auxiliary constants left out.

  4. lemma ProbabilityTheory.Kernel.deleteMiddle_eq line 42 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.deleteMiddle, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd

    Proof uses: of_eq_true, Eq.trans, True, congrFun', congrArg, ProbabilityTheory.Kernel.mapOfMeasurable_eq_map, eq_self

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 6 steps

    Open to load the checked before-and-after goal states.

  5. instance ProbabilityTheory.Kernel.(instance at line 46) line 46 source
  6. instance ProbabilityTheory.Kernel.(instance at line 49) line 49 source
  7. lemma ProbabilityTheory.Kernel.fst_deleteMiddle line 54 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.fst, ProbabilityTheory.Kernel.deleteMiddle

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd, id, congrArg, ProbabilityTheory.Kernel.deleteMiddle_eq, ProbabilityTheory.Kernel.fst_map_prod, Measurable.comp, measurable_snd, ProbabilityTheory.Kernel.fst_eq, Eq.refl

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

    Open to load the checked before-and-after goal states.

  8. lemma ProbabilityTheory.Kernel.snd_deleteMiddle line 59 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.snd, ProbabilityTheory.Kernel.deleteMiddle

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd, id, congrArg, ProbabilityTheory.Kernel.deleteMiddle_eq, ProbabilityTheory.Kernel.snd_map_prod, measurable_fst, ProbabilityTheory.Kernel.snd_eq, Function.comp, ProbabilityTheory.Kernel.map_map, measurable_snd, Eq.refl

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 5 steps

    Open to load the checked before-and-after goal states.

  9. lemma ProbabilityTheory.Kernel.deleteMiddle_zero line 64 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, Eq, ProbabilityTheory.Kernel, Prod, ProbabilityTheory.Kernel.deleteMiddle, OfNat.ofNat

    Proof uses: of_eq_true, Eq.trans, True, congrFun', congrArg, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd, ProbabilityTheory.Kernel.deleteMiddle_eq, ProbabilityTheory.Kernel.map_zero, eq_self

    6 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

  10. lemma ProbabilityTheory.Kernel.deleteMiddle_map_prod line 68 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Measurable, Eq, Prod, ProbabilityTheory.Kernel.deleteMiddle, ProbabilityTheory.Kernel.map, Prod.mk

    Proof uses: dite, Classical.propDecidable, Measurable.fst, Measurable.snd, Eq.mpr, Prod.fst, Prod.snd, id, congrArg, ProbabilityTheory.Kernel.deleteMiddle_eq, Function.comp, ProbabilityTheory.Kernel.map_map, Measurable.prodMk, measurable_id', Eq.refl, Not, Mathlib.Tactic.Contrapose.contrapose₄, Measurable.prod, of_eq_true, Eq.trans and 6 more

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 15 steps

    Open to load the checked before-and-after goal states.

  11. lemma ProbabilityTheory.Kernel.deleteMiddle_compProd line 85 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, ProbabilityTheory.IsSFiniteKernel, Prod, Eq, ProbabilityTheory.Kernel.deleteMiddle, ProbabilityTheory.Kernel.compProd, ProbabilityTheory.Kernel.snd

    Proof uses: ProbabilityTheory.Kernel.ext, MeasureTheory.Measure.ext, MeasureTheory.Measure, Set, MeasurableSet, Eq.mpr, ENNReal, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd, id, congrArg, ProbabilityTheory.Kernel.deleteMiddle_eq, Set.preimage, ProbabilityTheory.Kernel.map_apply', Measurable.prodMk, Measurable.fst, measurable_id', Measurable.snd and 10 more

    6 instances, coercions and auxiliary constants left out.

    Tactic trace: 12 steps

    Open to load the checked before-and-after goal states.

  12. def ProbabilityTheory.Kernel.deleteRight line 98 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod

    Proof uses: ProbabilityTheory.Kernel.mapOfMeasurable, Prod.mk, Prod.fst, Prod.snd

    3 instances, coercions and auxiliary constants left out.

  13. lemma ProbabilityTheory.Kernel.deleteRight_eq line 102 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.deleteRight, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd

    Proof uses: of_eq_true, Eq.trans, True, congrFun', congrArg, ProbabilityTheory.Kernel.mapOfMeasurable_eq_map, eq_self

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

  14. lemma ProbabilityTheory.Kernel.deleteRight_zero line 105 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, Eq, ProbabilityTheory.Kernel, Prod, ProbabilityTheory.Kernel.deleteRight, OfNat.ofNat

    Proof uses: of_eq_true, Eq.trans, True, congrFun', congrArg, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd, ProbabilityTheory.Kernel.deleteRight_eq, ProbabilityTheory.Kernel.map_zero, eq_self

    6 instances, coercions and auxiliary constants left out.

    Tactic trace: 6 steps

    Open to load the checked before-and-after goal states.

  15. instance ProbabilityTheory.Kernel.(instance at line 108) line 108 source
  16. instance ProbabilityTheory.Kernel.(instance at line 111) line 111 source
  17. lemma ProbabilityTheory.Kernel.fst_deleteRight line 116 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.fst, ProbabilityTheory.Kernel.deleteRight

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd, id, congrArg, ProbabilityTheory.Kernel.deleteRight_eq, ProbabilityTheory.Kernel.fst_map_prod, Measurable.comp, measurable_fst, measurable_snd, ProbabilityTheory.Kernel.fst_eq, Eq.refl

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

    Open to load the checked before-and-after goal states.

  18. lemma ProbabilityTheory.Kernel.snd_deleteRight line 121 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.snd, ProbabilityTheory.Kernel.deleteRight, ProbabilityTheory.Kernel.fst

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.mk, Prod.fst, Prod.snd, id, congrArg, ProbabilityTheory.Kernel.deleteRight_eq, ProbabilityTheory.Kernel.snd_map_prod, measurable_fst, ProbabilityTheory.Kernel.snd_eq, ProbabilityTheory.Kernel.fst_eq, Function.comp, ProbabilityTheory.Kernel.map_map, measurable_snd, Eq.refl

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 5 steps

    Open to load the checked before-and-after goal states.

  19. lemma ProbabilityTheory.Kernel.deleteRight_map_prod line 127 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Measurable, Eq, Prod, ProbabilityTheory.Kernel.deleteRight, ProbabilityTheory.Kernel.map, Prod.mk

    Proof uses: dite, Classical.propDecidable, Measurable.fst, Measurable.snd, Eq.mpr, Prod.fst, Prod.snd, id, congrArg, ProbabilityTheory.Kernel.deleteRight_eq, Function.comp, ProbabilityTheory.Kernel.map_map, Measurable.prodMk, measurable_id', Eq.refl, Not, Mathlib.Tactic.Contrapose.contrapose₄, Measurable.prod, of_eq_true, Eq.trans and 6 more

    4 instances, coercions and auxiliary constants left out.

    Tactic trace: 15 steps

    Open to load the checked before-and-after goal states.

  20. def ProbabilityTheory.Kernel.reverse line 145 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod

    Proof uses: ProbabilityTheory.Kernel.mapOfMeasurable, Prod.mk, Prod.snd, Prod.fst

    3 instances, coercions and auxiliary constants left out.

  21. lemma ProbabilityTheory.Kernel.reverse_eq line 150 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.reverse, ProbabilityTheory.Kernel.map, Prod.mk, Prod.snd, Prod.fst

    Proof uses: of_eq_true, Eq.trans, True, congrFun', congrArg, ProbabilityTheory.Kernel.mapOfMeasurable_eq_map, eq_self

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

  22. lemma ProbabilityTheory.Kernel.reverse_zero line 153 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, Eq, ProbabilityTheory.Kernel, Prod, ProbabilityTheory.Kernel.reverse, OfNat.ofNat

    Proof uses: of_eq_true, Eq.trans, True, congrFun', congrArg, ProbabilityTheory.Kernel.map, Prod.mk, Prod.snd, Prod.fst, ProbabilityTheory.Kernel.reverse_eq, ProbabilityTheory.Kernel.map_zero, eq_self

    6 instances, coercions and auxiliary constants left out.

    Tactic trace: 1 steps

    Open to load the checked before-and-after goal states.

  23. lemma ProbabilityTheory.Kernel.reverse_reverse line 156 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.reverse

    Proof uses: Function.comp, Prod.mk, Prod.snd, Prod.fst, id, funext, of_eq_true, Eq.trans, True, congrFun', congrArg, Prod.mk.eta, eq_self, Eq.mpr, ProbabilityTheory.Kernel.map, ProbabilityTheory.Kernel.reverse_eq, ProbabilityTheory.Kernel.map_map, Measurable.prodMk, Measurable.snd, measurable_id' and 3 more

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 11 steps

    Open to load the checked before-and-after goal states.

  24. instance ProbabilityTheory.Kernel.(instance at line 162) line 162 source
  25. instance ProbabilityTheory.Kernel.(instance at line 165) line 165 source
  26. lemma ProbabilityTheory.Kernel.swapRight_deleteMiddle_reverse line 170 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.swapRight, ProbabilityTheory.Kernel.deleteMiddle, ProbabilityTheory.Kernel.reverse

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.swap, id, congrArg, ProbabilityTheory.Kernel.swapRight_eq, Prod.mk, Prod.snd, Prod.fst, ProbabilityTheory.Kernel.reverse_eq, ProbabilityTheory.Kernel.deleteMiddle_eq, Function.comp, ProbabilityTheory.Kernel.map_map, Measurable.prodMk, Measurable.fst, measurable_id', Measurable.snd, measurable_swap, Measurable.fun_comp, Eq.refl

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 6 steps

    Open to load the checked before-and-after goal states.

  27. lemma ProbabilityTheory.Kernel.swapRight_snd_reverse line 177 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.swapRight, ProbabilityTheory.Kernel.snd, ProbabilityTheory.Kernel.reverse, ProbabilityTheory.Kernel.deleteRight

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.swap, id, congrArg, ProbabilityTheory.Kernel.swapRight_eq, Prod.mk, Prod.snd, Prod.fst, ProbabilityTheory.Kernel.reverse_eq, ProbabilityTheory.Kernel.deleteRight_eq, ProbabilityTheory.Kernel.snd_eq, Function.comp, ProbabilityTheory.Kernel.map_map, Measurable.snd, measurable_id', measurable_swap, Measurable.prodMk, Measurable.fst, Measurable.fun_comp and 1 more

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 6 steps

    Open to load the checked before-and-after goal states.

  28. lemma ProbabilityTheory.Kernel.swapRight_deleteRight_reverse line 184 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, ProbabilityTheory.Kernel, Prod, Eq, ProbabilityTheory.Kernel.swapRight, ProbabilityTheory.Kernel.deleteRight, ProbabilityTheory.Kernel.reverse, ProbabilityTheory.Kernel.snd

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.swap, id, congrArg, ProbabilityTheory.Kernel.swapRight_eq, Prod.mk, Prod.snd, Prod.fst, ProbabilityTheory.Kernel.reverse_eq, ProbabilityTheory.Kernel.deleteRight_eq, ProbabilityTheory.Kernel.snd_eq, Function.comp, ProbabilityTheory.Kernel.map_map, Measurable.prodMk, Measurable.fst, measurable_id', Measurable.snd, measurable_swap, Measurable.fun_comp and 1 more

    2 instances, coercions and auxiliary constants left out.

    Tactic trace: 6 steps

    Open to load the checked before-and-after goal states.

  29. lemma ProbabilityTheory.Kernel.FiniteKernelSupport.reverse Reversing preserves finite kernel support line 191 source

    Source documentation

    Reversing preserves finite kernel support

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, MeasurableSingletonClass, ProbabilityTheory.Kernel, Prod, ProbabilityTheory.Kernel.FiniteKernelSupport, ProbabilityTheory.Kernel.reverse

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.mk, Prod.snd, Prod.fst, id, Eq, congrArg, ProbabilityTheory.Kernel.reverse_eq, ProbabilityTheory.Kernel.FiniteKernelSupport.map

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

    Open to load the checked before-and-after goal states.

    lemma FiniteKernelSupport.reverse
        [MeasurableSingletonClass α] [MeasurableSingletonClass β] [MeasurableSingletonClass γ]
        {κ : Kernel T (α × β × γ)} (hκ : FiniteKernelSupport κ) :
        FiniteKernelSupport (reverse κ) := by
    …

    Mentions: ProbabilityTheory.Kernel.FiniteKernelSupport

  30. lemma ProbabilityTheory.Kernel.AEFiniteKernelSupport.reverse line 198 source

    standard axioms: Classical.choice, Quot.sound, propext what this means

    Statement uses: MeasurableSpace, MeasurableSingletonClass, ProbabilityTheory.Kernel, Prod, MeasureTheory.Measure, ProbabilityTheory.Kernel.AEFiniteKernelSupport, ProbabilityTheory.Kernel.reverse

    Proof uses: Eq.mpr, ProbabilityTheory.Kernel.map, Prod.mk, Prod.snd, Prod.fst, id, Eq, congrArg, ProbabilityTheory.Kernel.reverse_eq, ProbabilityTheory.Kernel.AEFiniteKernelSupport.map

    3 instances, coercions and auxiliary constants left out.

    Tactic trace: 2 steps

    Open to load the checked before-and-after goal states.