Goal:
    A : Type  n : nat  hd : A  tl : list A  H : S n < #|hd :: tl|
  ============================
   (S n ≤ #|tl|)


DEBUG:Going to execute:
fun H =>
             progress (inversion H; subst *; Tactics.clear_dups); clear H