proposition: Theorem update_permute : forall (A : Type) (m : partial_map A) x1 x2 v1 v2, x2 <> x1 -> (x1 |-> v1 ; x2 |-> v2 ; m) = (x2 |-> v2 ; x1 |-> v1 ; m).
proof: Proof. intros A m x1 x2 v1 v2. unfold update. apply t_update_permute. Qed.
imports: Coq(Arith.Arith) Coq(Bool.Bool) Coq.Strings.String Coq(Logic.FunctionalExtensionality) Coq(Lists.List)