Ltac inv H := (apply join_YES_pfullshare1 in H || apply join_YES_pfullshare2 in H || idtac);
                  (inversion H; clear H; subst).Definition empty_rmap' : rmap'.Definition empty_rmap (n:nat) : rmap := R.squash (n, empty_rmap').

(* Specifications: *)
Lemma emp_empty_rmap: forall n, emp (empty_rmap n).
Lemma empty_rmap_level: forall lev, level (empty_rmap lev) = lev.
Lemma approx_FF: forall n, approx n FF = FF.
Lemma resource_at_make_rmap: forall f V lev H, resource_at (proj1_sig (make_rmap f V lev H)) = f.
Lemma level_make_rmap: forall f V lev H, @level rmap _ (proj1_sig (make_rmap f V lev H)) = lev.