[Haskell-cafe] manipulating predicate formulae