Set Bullet Behavior "Strict Subproofs".
Opaque upto.

Lemma make_shares_out : forall b lgood lasts shs (Hb : ~In b lasts)
(Hlen1 : Zlength lgood = Zlength shs) (Hlen2 : Zlength lasts = Zlength shs),
make_shares shs (combine lgood lasts) b = map snd (filter fst (combine lgood shs)).