fact: Definition old_nu_let {A B C : Type} (n: name) (blet: C) (f: A -> C -> M B) : M B := full_nu_let n blet (fun A' x y P eqxy t' eqt' => eqAA' <- M.unify_or_fail UniCoq A' A; let x := reduce (RedWhd [rl:RedMatch]) (match eqAA' with meq_refl => x end) in let eqCP := dreduce (@JMeq_types, @meq_sym) (meq_sym (JMeq_types eqt')) in let t' := reduce (RedWhd [rl:RedMatch]) (match eqCP with meq_refl => t' end) in f x t').
imports: Mtac2(Base MTele Logic) Coq(JMeq)