Goal:
  
  A : Type
  f : A → bool
  g : nat → A
  n : nat
  fg : ∀ x : nat, x < S n → f (g x)
  IHn : (∀ x : nat, x < n → f (g x)) → forallb f (unfold n g)
  x : nat
  H : x < n
  ============================
   (is_true (f (g x)))


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

In environment
A : Type
f : A → bool
g : nat → A
n : nat
fg : ∀ x : nat, x < S n → f (g x)
IHn : (∀ x : nat, x < n → f (g x)) → forallb f (unfold n g)
x : nat
H : x < n
Unable to unify "true" with "f (g x)".
Level 0: Backtrace:

In environment
A : Type
f : A → bool
g : nat → A
n : nat
fg : ∀ x : nat, x < S n → f (g x)
IHn : (∀ x : nat, x < n → f (g x)) → forallb f (unfold n g)
x : nat
H : x < n
Unable to unify "true" with "f (g x)".
Level 0: Backtrace:

No applicable tactic.
Level 0: Backtrace:

No applicable tactic.