17 lines
444 B
Text
17 lines
444 B
Text
--| Compose two functions into one.
|
|
let compose
|
|
: ∀(a : Type) → ∀(b : Type) → ∀(c : Type) → (a → b) → (b → c) → a → c
|
|
= λ(A : Type) →
|
|
λ(B : Type) →
|
|
λ(C : Type) →
|
|
λ(f : A → B) →
|
|
λ(g : B → C) →
|
|
λ(x : A) →
|
|
g (f x)
|
|
|
|
let example0 =
|
|
assert
|
|
: compose Natural Natural Bool (λ(n : Natural) → n + n) Natural/even 3
|
|
≡ True
|
|
|
|
in compose
|