let transport : Π (A : Type) Π (f : A → Type) Π (x : A) Π (y : A) Id A x y → f x → f y ≔ λA.λf.λx.λy. J A x y (λa.λb.λ_. f a → f b) (λa.a) let ap : Π (A : Type) Π (B : Type) Π (f : A → B) Π (x : A) Π (y : A) Id A x y → Id B (f x) (f y) ≔ λA.λB.λf.λx.λy. J A x y (λa.λb.λ_. Id B (f a) (f b)) (refl B (f x)) let cat : Π (A : Type) Π (x : A) Π (y : A) Π (z : A) Id A x y → Id A y z → Id A x z ≔ λA.λx.λy.λz.λp.λq. J A y z (λa.λb.λr. Id A x b) (refl A y) q