view sandbox/InferenceTypeComposition.agda @ 26:d503a73186ce

Split cbc type definition using product
author atton <atton@cr.ie.u-ryukyu.ac.jp>
date Fri, 23 Dec 2016 02:50:03 +0000
parents 723532aa0592
children
line wrap: on
line source

module InferenceTypeComposition where

open import Relation.Binary.PropositionalEquality

infixl 30 _+++_
-- _+++_ : {A B C : Set} {equiv : B ≡ B} -> (A -> B) -> (B -> C) -> (A -> C)
_+++_ : {A B C : Set} -> (A -> B) -> (B -> C) -> (A -> C)
_+++_ f g = \x -> g (f x)

comp-sample : {A B C D : Set} -> (A -> B) -> (B -> C) -> (C -> D) -> (A -> D)
comp-sample f g h = f +++ g +++ h