Goal:
    A : Type  B : Type  f : nat → A → B  l : list A  l' : list A
  ============================
   (∀ n : nat,
      mapi_rec f l' (#|l| + n) =
      mapi_rec (λ (n0 : nat) (x : A), f (#|l| + n0) x) l' n)


DEBUG:Going to execute:
induction l'
DEBUG LTAC Evaluated term: 0

Goals:
    A : Type  B : Type  f : nat → A → B  l : list A
  ============================
   (∀ n : nat,
      mapi_rec f [] (#|l| + n) =
      mapi_rec (λ (n0 : nat) (x : A), f (#|l| + n0) x) [] n)

  
  A : Type
  B : Type
  f : nat → A → B
  l : list A
  a : A
  l' : list A
  IHl' : ∀ n : nat,
           mapi_rec f l' (#|l| + n) =
           mapi_rec (λ (n0 : nat) (x : A), f (#|l| + n0) x) l' n
  ============================
   (∀ n : nat,
      mapi_rec f (a :: l') (#|l| + n) =
      mapi_rec (λ (n0 : nat) (x : A), f (#|l| + n0) x) (a :: l') n)


DEBUG:Going to execute:
intros
DEBUG LTAC Evaluated term: l'