Section Kleene.
Variables (D : cpo) (f : D -> D) (C : continuous f).
Fixpoint pow m := if m is n.+1 then f (pow n) else bot.
Definition pow_chain := [pow ^^ nat_chain by pow_mono].
Definition kleene_lfp := lim pow_chain.
End Kleene.
(**********************************)
(* Continuity of common functions *)
(**********************************)
Arguments const_cont {D1 D2 y}.
Arguments comp_cont {D1 D2 D3 f1 f2}.

Lemma proj1_cont (D1 D2 : cpo) : continuous (@fst D1 D2).