Mercurial > hg > Members > atton > agda-proofs
view moggi/moggi.agda @ 8:a3509dbb9e49
Example for implicit-level functor
author | Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 18 Jan 2015 20:06:33 +0900 |
parents | 36c9175d9adb |
children |
line wrap: on
line source
module moggi where postulate A : Set postulate A1 : Set postulate A2 : Set postulate x : A postulate e1 : A1 --postulate f : A1 -> A2 data _==_ : {A : Set} -> A -> A -> Set where refl : {x : A} -> x == x sym : {x y : A} -> x == y -> y == x trans : {x y z : A} -> x == y -> y == z -> x == z congr : {x y : A1} -> (f : A1 -> A2) -> x == y -> f x == f y record Term (A : Set) : Set where field type : A var : A -> (A -> A) f : A1 -> A2 eq : (g1 : A1 -> A2) -> (g2 : A1 -> A2) -> g1 == g2