Goal:
  
  A : Type
  B : Type
  f : nat → A
  a : B
  l : list B
  b : B
  l' : list B
  IHl : ∀ (f : nat → A) (l' : list B),
          #|l| = #|l'|
          → mapi (λ (i : nat) (_ : B), f i) l =
            mapi (λ (i : nat) (_ : B), f i) l'
  H : #|a :: l| = #|b :: l'|
  ============================
   (mapi (λ (i : nat) (_ : B), f i) (a :: l) =
    mapi (λ (i : nat) (_ : B), f i) (b :: l'))


DEBUG:Going to execute:
case not_locked_false_eq_true; Ltac.assumption
Level 1: Backtrace:

In environment
A : Type
B : Type
f : nat → A
a : B
l : list B
b : B
l' : list B
IHl : ∀ (f : nat → A) (l' : list B),
        #|l| = #|l'|
        → mapi (λ (i : nat) (_ : B), f i) l =
          mapi (λ (i : nat) (_ : B), f i) l'
H : #|a :: l| = #|b :: l'|
Unable to unify "mapi (λ (i : nat) (_ : B), f i) (b :: l')" with
 "mapi (λ (i : nat) (_ : B), f i) (a :: l)".
Level 0: Backtrace:

In environment
A : Type
B : Type
f : nat → A
a : B
l : list B
b : B
l' : list B
IHl : ∀ (f : nat → A) (l' : list B),
        #|l| = #|l'|
        → mapi (λ (i : nat) (_ : B), f i) l =
          mapi (λ (i : nat) (_ : B), f i) l'
H : #|a :: l| = #|b :: l'|
Unable to unify "mapi (λ (i : nat) (_ : B), f i) (b :: l')" with
 "mapi (λ (i : nat) (_ : B), f i) (a :: l)".
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.