fact: Fixpoint props' {prop A : Type} {t : Checkable prop} (n : nat) (pf : A -> prop) (shrinker : A -> list A) (x : A) := match n with | O => MkRose (checker (pf x)) (lazy nil) | S n' => MkRose (checker (pf x)) (lazy (List.map (props' n' pf shrinker) (shrinker x))) end.
imports: String List RoseTrees Show State Producer Generators Classes DependentClasses