(* end semBindSizeMonotonic *)

Lemma semBindSizeMonotonicIncl_l {A B} (g : G A) (f : A -> G (option B)) (s1 : set A)
(fs : A -> set B)
`{Hg : SizeMonotonic _ g}
`{Hf : forall a, SizeMonotonicOpt (f a)} :
s1 \subset semGen g ->
(forall x, Some @: (fs x) \subset semGen (f x)) ->
(Some @: \bigcup_(a in s1) (fs a)) \subset semGen (bindGen g f).