Proof using.
intros. subst.
unfold update2.
break_if; intuition congruence.
Qed.

(* Specifications: *)
Lemma update2_eq_prod :
forall (sigma : A -> A -> B) x y x' y' v,
(x, y) = (x', y') ->
update2 A_eq_dec sigma x y v x' y' = v.
Lemma update2_same :
forall (sigma : A -> A -> B) x y v,
update2 A_eq_dec sigma x y v x y = v.