Proof using.
induction l; intros; auto.
destruct a.
simpl.
apply IHl.
unfold update2.
break_if; auto.
break_and; subst.
destruct (f n' n); auto.
find_apply_lem_hyp hd_error_some_nil.
intuition.
Qed.

(* Specifications: *)
Lemma collate_neq :
forall h n n' ns (f : A -> A -> list B),
h <> n ->
collate A_eq_dec h f ns n n' = f n n'.