fact: Definition fix2 {A1} {A2 : A1 -> Type} (B : forall a1 : A1, A2 a1 -> Type) : ((forall (x1 : A1) (x2 : A2 x1), gtactic (B x1 x2)) -> forall (x1 : A1) (x2 : A2 x1), gtactic (B x1 x2)) -> forall (x1 : A1) (x2 : A2 x1), gtactic (B x1 x2) := @M.fix3 A1 A2 (fun _ _ => (goal _)) (fun x y _ => mlist (B x y *m (goal _))).
imports: Strings.String ssrmatching.ssrmatching Mtac2(Logic Datatypes List Utils Logic intf.Sorts) Strings.String NArith.BinNat NArith.BinNatDef