Goal:
    A : Type  l : list A  l' : list A
  ============================
   (∀ v : nat, v < #|l| → nth_error (l ++ l') v = nth_error l v)


DEBUG:Going to execute:
induction l

Goals:
    A : Type  l' : list A
  ============================
   (∀ v : nat, v < #|[]| → nth_error ([] ++ l') v = nth_error [] v)

  
  A : Type
  a : A
  l : list A
  l' : list A
  IHl : ∀ v : nat, v < #|l| → nth_error (l ++ l') v = nth_error l v
  ============================
   (∀ v : nat,
      v < #|a :: l| → nth_error ((a :: l) ++ l') v = nth_error (a :: l) v)


DEBUG:Going to execute:
simpl
DEBUG LTAC Evaluated term: l

Goals:
    A : Type  l' : list A
  ============================
   (∀ v : nat, v < 0 → nth_error l' v = nth_error [] v)

  
  A : Type
  a : A
  l : list A
  l' : list A
  IHl : ∀ v : nat, v < #|l| → nth_error (l ++ l') v = nth_error l v
  ============================
   (∀ v : nat, v < S #|l| → nth_error (a :: l ++ l') v = nth_error (a :: l) v)


DEBUG:Going to execute:
intros