fact: Definition bindGen {A B : Type} (g : G A) (k : A -> G B) : G B := MkGen (fun n r => let (r1,r2) := randomSplit r in run (k (run g n r1)) n r2).
imports: Coq(String List ZArith Lia) mathcomp.ssreflect.ssreflect mathcomp(ssrfun ssrbool ssrnat eqtype seq) QuickChick(RandomQC RoseTrees Sets Tactics Producer)