'Condition' is a function which determines whether an element of some type a satisfies some property, and returns True if only if it does. A polymorphic data type 'Condition a' is defined:
data Condition a = Con (a -> Bool)
Define a function minSol::Ord a => Condition a -> [a] -> Maybe a...