python: Allow negated literals in LinearExpression
python: Allow negated literals in LinearExpression

Booleans are already considered integers with value 0 or 1, so it’s
natural to expect negated booleans to be considered integers with
value 1 or 0.

This makes it more convenient to define an antisymmetric array of
booleans: you no longer have to choose between not being able to use
greater[j, i] = greater[i, j].Not() in linear expressions and not
being able to use greater[j, i] = 1 - greater[i, j] in boolean
constraints.

Signed-off-by: Anders Kaseorg <087231934ba8fcf78bc142ce37d193b895ac03c4@mit.edu>

google/or-tools,or-tools/or-tools,or-tools/or-tools,google/or-tools,or-tools/or-tools,google/or-tools,or-tools/or-tools,google/or-tools,or-tools/or-tools,or-tools/or-tools,google/or-tools,google/or-tools