Suppose I have the following constraint: \begin{align}x_{t} &= x_{t-1} + y_{t-1} - z_{t-1}\\x_{t} &\ge 0\end{align}
From my limited experience in coding my own problem, I have found that my model becomes infeasible if I impose the non-negativity constraint on $ x_{t} $ because what happens is the $z_{t-1}$ term begins to overpower the other two positive terms and the non-negativity constraint just does not hold, ultimately resulting in infeasibility.
However, if I reformulate the problem as: $$ x_{t} = \max\{x_{t-1} + y_{t-1} - z_{t-1}, 0 \} $$
and then perform a linearization on this formulation, I can run the model and get the desired result of the non-negativity constraint.
So it seems strange to my naive eye that reformulating the problem as a max constraint and then doing a linearization ~ which seems to be a much more complicated route ~ will work for me, but the non-negativity constraint does not. At least to me, formulating the constraint as a linear relation with a non-negativity constraint and then as a 'max' are essentially the same thing.
Clearly, they are not, but why not? Part of me feels like this could be a 'solver' problem, but i'm hoping there is a more theoretical way of understanding.