Goal:
    A : Type  B : Type  f : A → B  n : nat  l : list A
  ============================
   (nth_error (map f l) n = option_map f (nth_error l n))


DEBUG:Going to execute:
<coq-core.plugins.ssreflect::ssrelim@0> $1 $2

Goals:
    A : Type  B : Type  f : A → B
  ============================
   (∀ l : list A, nth_error (map f l) 0 = option_map f (nth_error l 0))

    A : Type  B : Type  f : A → B
  ============================
   (∀ n : nat,
      (∀ l : list A, nth_error (map f l) n = option_map f (nth_error l n))
      → ∀ l : list A,
          nth_error (map f l) (S n) = option_map f (nth_error l (S n)))


DEBUG:Going to execute:
case  =>// IHn l /=
DEBUG LTAC Evaluated term: l
DEBUG LTAC Evaluated term: n
DEBUG LTAC Evaluated term: n