(.require [library [lux (.except) [abstract [monad (.only do)] [\\specification ["$[0]" hash]] ["[0]" equivalence ["[1]T" \\test]] ["[0]" order ["[1]T" \\test]]] [math ["[0]" random (.only Random)]] [test ["_" property (.only Test)]]]] [// ["@[0]" artifact]] [\\program ["[0]" /]]) (def .public random (Random /.Dependency) (all random.and @artifact.random (random.alphabetic 1))) (def .public test Test (<| (_.covering /._) (_.for [/.Dependency] (all _.and (_.for [/.equivalence] (equivalenceT.spec /.equivalence ..random)) (_.for [/.order] (orderT.spec /.order ..random)) (_.for [/.hash] ($hash.spec /.hash ..random)) ))))