Instance EqDec_pshare : EqDec pshare := pshare_eq_dec.Definition pfullshare : pshare :=
  mk_lifted fullshare top_share_nonunit.

(* Specifications: *)
Lemma pfullshare_pfull : full pfullshare.
Lemma join_sub_pfullshare: forall (p: pshare), @join_sub share Share.Join_ba pfullshare p -> p = pfullshare.
Lemma pjoin_sub_pfullshare: forall (p : pshare), join_sub pfullshare p -> False.
Lemma pshare_join_full_false1 : forall (p:pshare), joins pfullshare p -> False.
Lemma pshare_join_full_false2 : forall (p:pshare), joins p pfullshare -> False.
Lemma pshare_join_full_false3: forall (p1: pshare) sh3, join (lifted_obj p1) Share.top sh3 -> False.
Lemma pshare_join_full_false4: forall (p1: pshare) sh3, join Share.top (lifted_obj p1) sh3 -> False.
Lemma pshare_pjoin_full_false3: forall (p1: pshare) pp sh3, join p1 (mk_lifted Share.top pp) sh3 -> False.
Lemma pshare_pjoin_full_false4: forall (p1: pshare) pp sh3, join (mk_lifted Share.top pp) p1 sh3 -> False.