fact: Fixpoint Curry (fDom : list Type) {fCod : Type} (f : funType (cons (unCurry_funType fDom) nil) fCod) {struct fDom} : funType fDom fCod := match fDom return funType (cons (unCurry_funType fDom) nil) fCod -> funType fDom fCod with | nil => fun f => f tt | cons T fDom' => fun f t => Curry _ (fun t' => f (t, t')) end f.
imports: Fiat.Common.Coq__8_4__8_5__Compat Coq.Sets.Ensembles Coq.ZArith.ZArith Coq.Classes.Morphisms Coq.Classes.SetoidTactics Fiat.Computation Fiat.Computation.SetoidMorphisms Coq.Logic.FunctionalExtensionality