Corollary prev_taken_In : forall h, prev_taken h = vint 1 \/ In (AE (prev_taken h) Empty) h.

Lemma make_shares_add : forall i i' d lasts lgood j shs (Hj : 0 <= j < Zlength lasts) (Hi : Znth j lasts d = i) (Hgood : Znth j lgood false = true) (Hi' : i' <> i) (Hlen : Zlength shs >= Zlength lasts), exists shs1 shs2, make_shares shs (combine lgood lasts) i = shs1 ++ shs2 /\ make_shares shs (combine lgood (upd_Znth j lasts i')) i = shs1 ++ Znth j shs Tsh :: shs2.