Definition restrict_env {key: Type}{A: Type}{KE: EqDec key} (ids: list key) (rho:env key A) : env key A :=
  mk_env _ (restrict_env'_finite ids rho).Definition restrict_env_comp' {key: Type}{A: Type}{KE: EqDec key} (ids: list key) (rho: env key A) (id: key) : option (pshare * A) :=
  if  In_dec eq_dec id ids
                      then None
                      else env_get rho id.

(* Specifications: *)
Lemma restrict_env_comp'_finite {key: Type}{A: Type}{KE: EqDec key}: forall ids (rho: env key A), finite_idfun (restrict_env_comp' ids rho).