Goal:
  
  A : Type
  B : Type
  x : A
  xs : list A
  f0 : A → B
  H : ∀ f : A → B,
        (λ (x : A) (_ : In x xs), f0 x) = (λ (x : A) (_ : In x xs), f x)
        → map_In xs (λ (x : A) (_ : In x xs), f0 x) = map f xs
  ============================
   (f0 x :: map_In xs (λ (x : A) (_ : In x xs), f0 x) = f0 x :: map f0 xs)


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

Goals:
  
  A : Type
  B : Type
  x : A
  xs : list A
  f0 : A → B
  H : ∀ f : A → B,
        (λ (x : A) (_ : In x xs), f0 x) = (λ (x : A) (_ : In x xs), f x)
        → map_In xs (λ (x : A) (_ : In x xs), f0 x) = map f xs
  ============================
   ((λ (x : A) (_ : In x xs), f0 x) = λ (x : A) (_ : In x xs), f0 x)

  
  A : Type
  B : Type
  x : A
  xs : list A
  f0 : A → B
  H : ∀ f : A → B,
        (λ (x : A) (_ : In x xs), f0 x) = (λ (x : A) (_ : In x xs), f x)
        → map_In xs (λ (x : A) (_ : In x xs), f0 x) = map f xs
  ============================
   (f0 x :: map f0 xs = f0 x :: map f0 xs)


DEBUG:Going to execute:
trivial
DEBUG LTAC Evaluated term: (H f0)
DEBUG LTAC Evaluated term: (H f0)

Goals:
  
  A : Type
  B : Type
  x : A
  xs : list A
  f0 : A → B
  H : ∀ f : A → B,
        (λ (x : A) (_ : In x xs), f0 x) = (λ (x : A) (_ : In x xs), f x)
        → map_In xs (λ (x : A) (_ : In x xs), f0 x) = map f xs
  ============================
   ((λ (x : A) (_ : In x xs), f0 x) = λ (x : A) (_ : In x xs), f0 x)

  
  A : Type
  B : Type
  x : A
  xs : list A
  f0 : A → B
  H : ∀ f : A → B,
        (λ (x : A) (_ : In x xs), f0 x) = (λ (x : A) (_ : In x xs), f x)
        → map_In xs (λ (x : A) (_ : In x xs), f0 x) = map f xs
  ============================
   (f0 x :: map f0 xs = f0 x :: map f0 xs)


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