fact: Definition FixBox (alg : [ Box A :-> A ]) : [ Box A ] := fix rec n := match n with | O => MkBox (fun m mltO => False_rect _ (Nat.nlt_0_r _ mltO)) | S n' => MkBox (fun m mltn => alg _ (MkBox (fun p pltm => let mltn' := Nat.le_trans _ _ _ pltm (le_S_n _ _ mltn) in call (rec n') mltn'))) end.
imports: parseque(Indexed) Coq(PeanoNat)