proposition: Theorem ok_dom : forall A (E : gen_env A), List.NoDup (dom E) -> ok E.
proof: Proof. induction E using env_ind; intro H_NoDup. apply ok_empty. rewrite dom_concat in H_NoDup. rewrite dom_single in H_NoDup. simpl in H_NoDup. inversion H_NoDup. apply ok_cons; split; auto. apply notin_dom_inv; auto. Qed.
imports: Utf8 Equalities CoreGenericEnv