Ltac use_entries_match :=
    match goal with
      | [ _ : eIndex ?e1 = eIndex ?e2,
              H : context [entries_match]
                              |- _ ] =>
        first [ solve [eapply H with (e:=e2)(e':=e1); eauto; congruence] |
                solve [eapply H with (e:=e1)(e':=e2); eauto; congruence]]
    end.

Lemma contiguous_app_prefix_2 : forall l l' l'' i, sorted (l ++ l') -> contiguous_range_exact_lo (l ++ l') 0 -> Prefix l' l'' -> maxIndex l'' < i <= maxIndex l -> exists e, eIndex e = i /\ In e l.