Exponentials of Quasi-Borel Spaces #
This file defines the exponential object in the category of quasi-borel spaces.
See [HKSY17], Proposition 18.
structure
QuasiBorelHom
(A : Type u_1)
(B : Type u_2)
[QuasiBorelSpace A]
[QuasiBorelSpace B]
:
Type (max u_1 u_2)
The type of morphisms between QuasiBorelSpaces.
- toFun : A β B
The underlying function.
- property : QuasiBorelSpace.IsHom self.toFun
The underlying function is a morphism.
Instances For
The type of morphisms between QuasiBorelSpaces.
Equations
- QuasiBorelHom.Β«term_βπ_Β» = Lean.ParserDescr.trailingNode `QuasiBorelHom.Β«term_βπ_Β» 25 26 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " βπ ") (Lean.ParserDescr.cat `term 25))
Instances For
instance
QuasiBorelHom.instFunLike
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
:
Equations
- QuasiBorelHom.instFunLike = { coe := QuasiBorelHom.toFun, coe_injective' := β― }
def
QuasiBorelHom.Simps.coe
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
(f : A βπ B)
:
A β B
A simps projection for function coercion.
Equations
- QuasiBorelHom.Simps.coe f = βf
Instances For
theorem
QuasiBorelHom.ext
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
{f g : A βπ B}
(h : β (x : A), f x = g x)
:
theorem
QuasiBorelHom.ext_iff
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
{f g : A βπ B}
:
def
QuasiBorelHom.copy
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
(f : A βπ B)
(f' : A β B)
(h : f' = βf)
:
Copy of a QuasiBorelHom with a new toFun equal to the old one.
Useful to fix definitional equalities.
Instances For
@[simp]
theorem
QuasiBorelHom.coe_mk
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
{f : A β B}
(hf : QuasiBorelSpace.IsHom f)
:
@[simp]
theorem
QuasiBorelHom.eta
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
(f : A βπ B)
:
@[simp]
theorem
QuasiBorelHom.toFun_eq_coe
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
(f : A βπ B)
:
@[simp]
theorem
QuasiBorelHom.isHom_coe
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
(f : A βπ B)
:
instance
QuasiBorelHom.instQuasiBorelSpace
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
:
QuasiBorelSpace (A βπ B)
Equations
- QuasiBorelHom.instQuasiBorelSpace = { IsVar := fun (Ο : β β A βπ B) => QuasiBorelSpace.IsHom fun (x : β Γ A) => (Ο x.1) x.2, isVar_const := β―, isVar_comp := β―, isVar_cases' := β― }
theorem
QuasiBorelHom.isHom_def
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
(Ο : β β A βπ B)
:
@[simp]
theorem
QuasiBorelHom.isHom_eval
{A : Type u_1}
{B : Type u_2}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
:
QuasiBorelSpace.IsHom fun (p : (A βπ B) Γ A) => p.1 p.2
theorem
QuasiBorelHom.isHom_eval'
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
{f : A β B βπ C}
(hf : QuasiBorelSpace.IsHom f)
{g : A β B}
(hg : QuasiBorelSpace.IsHom g)
:
QuasiBorelSpace.IsHom fun (x : A) => (f x) (g x)
@[simp]
theorem
QuasiBorelHom.isHom_iff
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
(f : A β B βπ C)
:
theorem
QuasiBorelHom.isHom_mk
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
{f : A β B β C}
(hf : QuasiBorelSpace.IsHom fun (x : A Γ B) => f x.1 x.2)
:
QuasiBorelSpace.IsHom fun (x : A) => { toFun := f x, property := β― }
def
QuasiBorelHom.curry
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
(f : A Γ B βπ C)
:
Currying for QuasiBorelHoms.
Equations
Instances For
@[simp]
theorem
QuasiBorelHom.curry_coe
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
(f : A Γ B βπ C)
(x : A)
:
def
QuasiBorelHom.uncurry
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
(f : A βπ B βπ C)
:
Uncurrying for QuasiBorelHoms.
Instances For
@[simp]
theorem
QuasiBorelHom.uncurry_coe
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
(f : A βπ B βπ C)
(x : A Γ B)
:
@[simp]
theorem
QuasiBorelHom.curry_uncurry
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
(f : A βπ B βπ C)
:
@[simp]
theorem
QuasiBorelHom.uncurry_curry
{A : Type u_1}
{B : Type u_2}
{C : Type u_3}
[QuasiBorelSpace A]
[QuasiBorelSpace B]
[QuasiBorelSpace C]
(f : A Γ B βπ C)
: