Goal:
  
  A : Type
  B : Type
  f : nat → A → B
  x : A
  l : list A
  IHl : ∀ n k : nat,
          k ≤ n
          → List.rev (mapi_rec f l (n - k)) =
            mapi_rec (λ (k0 : nat) (x : A), f (Nat.pred #|l| + n - k0) x)
              (List.rev l) k
  n : nat
  k : nat
  H : k ≤ n
  k0 : nat
  x0 : A
  H0 : k ≤ k0
  H1 : k0 < #|List.rev l| + k
  ============================
   (f (Nat.pred #|l| + n - k0) x0 = f (Nat.pred (#|l| + 1) + n - S k0) x0)


DEBUG:Going to execute:
fun => <coq-core.plugins.cc::f_equal@0>

File "./theories/MCList.v", line 491, characters 47-62:
Warning: Notation List.rev_length is deprecated since 8.20.
Use length_rev instead.
[deprecated-syntactic-definition-since-8.20,deprecated-since-8.20,deprecated-syntactic-definition,deprecated,default]