Lazy SmallCheck is a library for exhaustive, demand-driven testing of
Haskell programs. It is based on the idea that if a property holds for
a partially-defined input then it must also hold for all fully-defined
refinements of the that input. Compared to `eager' input generation as
in SmallCheck, Lazy SmallCheck may require significantly fewer
test-cases to verify a property for all inputs up to a given depth.
Approved by: gabor