Fix a bug with boolean expressions; nicer output for negated expressions