':see: Expression.predicates()'

def predicates(self):

    if isinstance(self.function, ConstantExpression):
        function_preds = set([self.function.variable])
    else:
        function_preds = self.function.predicates()
    return (function_preds | self.argument.predicates())
