SFinKer #
The category of measurable spaces with s-finite kernels is a copy-discard category.
Main declarations #
LargeCategory SFinKer: the categorical structure onSFinKer.MonoidalCategory SFinKer:SFinKeris a monoidal category using the Cartesian product.SymmetricCategory SFinKer:SFinKeris a symmetric monoidal category.CopyDiscardCategory SFinKer:SFinKeris a copy-discard category.
References #
- [A synthetic approach to Markov kernels, conditional independence and theorems on sufficient statistics][fritz2020]
The category of measurable spaces and s-finite kernels.
- of :: (
- carrier : Type u
The underlying measurable space.
- str : MeasurableSpace self.carrier
- )
Instances For
The morphisms in SFinKer from X to Y are the s-finite kernels from X to Y.
- hom : ProbabilityTheory.Kernel X.carrier Y.carrier
The underlying morphism.
- property : ProbabilityTheory.IsSFiniteKernel self.hom
The property that the morphism satisfies.
Instances For
@[implicit_reducible]
@[simp]
theorem
SFinKer.comp_hom
{X✝ Y✝ Z✝ : SFinKer}
(κ : X✝.Hom Y✝)
(η : Y✝.Hom Z✝)
:
(CategoryTheory.CategoryStruct.comp κ η).hom = η.hom.comp κ.hom
@[simp]
@[implicit_reducible]
@[simp]
@[simp]
theorem
tensorUnit_carrier :
(CategoryTheory.MonoidalCategoryStruct.tensorUnit SFinKer).carrier = PUnit.{u + 1}
@[simp]
@[simp]
theorem
tensorObj_carrier
(X Y : SFinKer)
:
(CategoryTheory.MonoidalCategoryStruct.tensorObj X Y).carrier = (X.carrier × Y.carrier)
@[simp]
@[simp]
@[simp]
theorem
rightUnitor_inv_hom
(X : SFinKer)
:
(CategoryTheory.MonoidalCategoryStruct.rightUnitor X).inv.hom = ProbabilityTheory.Kernel.id.map fun (x : X.carrier) => (x, PUnit.unit)
@[simp]
theorem
tensorHom_def
{X₁ Y₁ X₂ Y₂ : SFinKer}
(f : X₁ ⟶ Y₁)
(g : X₂ ⟶ Y₂)
:
CategoryTheory.MonoidalCategoryStruct.tensorHom f g = CategoryTheory.CategoryStruct.comp
((fun {X₁ X₂ : SFinKer} (κ : X₁ ⟶ X₂) (Y : SFinKer) =>
{ hom := κ.hom.parallelComp ProbabilityTheory.Kernel.id, property := ⋯ })
f X₂)
((fun (X Y₁ Y₂ : SFinKer) (κ : Y₁ ⟶ Y₂) => { hom := ProbabilityTheory.Kernel.id.parallelComp κ.hom, property := ⋯ })
Y₁ X₂ Y₂ g)
@[simp]
theorem
leftUnitor_inv_hom
(X : SFinKer)
:
(CategoryTheory.MonoidalCategoryStruct.leftUnitor X).inv.hom = ProbabilityTheory.Kernel.id.map fun (x : X.carrier) => (PUnit.unit, x)
@[simp]
theorem
associator_inv_hom
(X Y Z : SFinKer)
:
(CategoryTheory.MonoidalCategoryStruct.associator X Y Z).inv.hom = ProbabilityTheory.Kernel.id.map fun (x : X.carrier × Y.carrier × Z.carrier) => ((x.1, x.2.1), x.2.2)
@[simp]
theorem
associator_hom_hom
(X Y Z : SFinKer)
:
(CategoryTheory.MonoidalCategoryStruct.associator X Y Z).hom.hom = ProbabilityTheory.Kernel.id.map fun (x : (X.carrier × Y.carrier) × Z.carrier) => (x.1.1, x.1.2, x.2)
@[simp]
@[implicit_reducible]
@[simp]
@[simp]
@[implicit_reducible]
@[simp]
@[implicit_reducible]