Goal:
    A : Type  B : Type  f : nat → A → B  a : A  l : list A
  ============================
   (mapi f (a :: l) = f 0 a :: mapi (λ x : nat, f (S x)) l)


DEBUG:Going to execute:
rewrite /mapi /= mapi_rec_Sk
DEBUG LTAC Evaluated term: mapi_rec_length