Definition finite_idfun (f: key -> option (pshare * A)) :=
exists l, forall a, ~In a l -> f a = None.
Parameter mk_env:  forall (f: key -> option (pshare * A)), finite_idfun f -> env key A.
(* Arguments mk_env. *)

Axiom env_get_mk_env:  forall (f: key -> option (pshare * A)) P, env_get (mk_env f P) = f.