fact: Fixpoint pattern_map {A} {B : A -> Type} (g : (goal _)) (p : Tpattern A B) : pattern A (fun y => M (mlist (B y *m (goal _)))) := match p with | pany f => pany (fun x => f x g) | pbase x f r => pbase x (f g) r | ptele f => ptele (fun x => pattern_map g (f x)) | psort f => psort (fun s => pattern_map g (f s)) end.
imports: Strings.String ssrmatching.ssrmatching Mtac2(Logic Datatypes List Utils Logic intf.Sorts) Strings.String NArith.BinNat NArith.BinNatDef