Goal:
  
  A : Type
  B : Type
  C : Type
  D : Type
  R : nat → C → D → Type
  f : nat → A → C
  g : nat → B → D
  l : list A
  l' : list B
  h : All2i (λ (i : nat) (x : A) (y : B), R i (f i x) (g i y)) 0 l l'
  ============================
   (All2i R 0 (mapi_rec f l 0) (mapi_rec g l' 0))


DEBUG:Going to execute:
<coq-core.plugins.ltac::revert@0> $1