proposition: Lemma update_impl_eq : forall A B (M:map A B) k x, M[k:=x] = (fun k' => If k = k' then Some x else M k').
proof: Proof. Proof using. intros. rewrite update_eq_union_single. simpl. unfold single_bind_impl, union_impl. apply fun_ext_1. intros k'. case_if~. Qed.
imports: TLC(LibTactics LibLogic LibReflect LibOption LibRelation LibLogic LibOperation LibEpsilon LibMonoid LibSet)