import Test.SmallCheck assoc op = \ a b c -> op a (op b c) == op (op a b) c main = smallCheck 3 (assoc ((++) :: [Bool] -> [Bool] -> [Bool]))