(* It's often useful to split Tsh in half. *)
Definition gsh1 := fst (slice.cleave Tsh).Definition gsh2 := snd (slice.cleave Tsh).

Lemma split_readable_share sh : readable_share sh -> exists sh1, exists sh2, readable_share sh1 /\ readable_share sh2 /\ sepalg.join sh1 sh2 sh.