Proof using.
induction l; intros; intuition.
simpl in *.
repeat break_if; simpl in *; repeat break_if;
repeat (do_bool; intuition); try omega.
simpl. f_equal.
rewrite IHl; eauto.
apply removeAfterIndex_eq.
intros.
find_apply_hyp_hyp. intuition.
Qed.

(* Specifications: *)
Lemma findGtIndex_removeAfterIndex_i'_le_i :
forall l i i',
sorted l ->
i' <= i ->
(filter
(fun x : entry =>
(i <? eIndex x) && (eIndex x <=? i'))
(findGtIndex l i))
++ removeAfterIndex l i =
removeAfterIndex l i.