postulate A:: Type f :: ((A->A)->A) -> A = {! !}