That makes sense, but why then does defining something as an expression vs a constraint make a difference in terms of the result of the optimization procedure if the constraint you define is in terms of an equality?
The two different ways of defining the constraint should result in the same behavior:
x * y * z == 1
and
V == x * y * z
V == 1
should result in the same output since they impose the same conditions!