I think because state objects do not have a subtract operation. You would have to cast it/them as a number first.
But that will not happen anyway. Items are not variables, when you postUpdate() a new value it is not applied immediately and your rule does not stop and wait for it to happen.