fact: Definition tmUnfoldTerm {A}(a:A) := t <- tmQuote a;; match head_of_const t with | Some h => tmEval (unfold h) a >>=tmQuote | _ => ret t end.
imports: Ascii String Undecidability.L(Util.L_facts) MetaCoq(Template.All Template.Checker) Undecidability.Shared.Libs.PSL.Base MetaCoq.Utils.bytestring