Instance Join_rshare: Join rshare :=
fun a b c => join (proj1_sig a) (proj1_sig b) (proj1_sig c).
Instance Perm_rshare: Perm_alg rshare. (* move me! *)

Lemma join_readable_part_eq:
forall sh1 (rsh1: readable_share sh1)
sh2 (nsh2: ~readable_share sh2)
sh3 (rsh3: readable_share sh3),
join sh1 sh2 sh3 ->
readable_part rsh1 = readable_part rsh3.