(** Additional properties when ok stands. *)

(* Specifications: *)
(** Update commutes with concatenation on the left. *)
Axiom update_concat_l : forall A (E F G : gen_env A),
ok (E & F) ->
(E & F) ::= G = (E ::= G) & (F ::= G).
(** Update commutes with concatenation on the left. *)
Lemma update_one_concat_ok : forall E F x v,
ok (E & F) ->
(E & F) [x <- v] =
(E [x <- v]) & (F [x <- v]).
Lemma update_concat_l : forall E F G,
ok (E & F) ->
(E & F) ::= G = (E ::= G) & (F ::= G).