How to represent bounds of variables in scipy.optimization where bound is function of another variable
Currently none of scipy's methods allows for applying dynamic bounds. You can make a non standard extension to scipy.optimize.minimize or fsolve or implement your own optimiser with dynamic bounds. 
Now on whether it is a good idea to do so: NO!
That is because for a well formulated optimisation problem you want the design variables and their bounds to be orthogonally independent. If the bounds are changing based on other design variables then the problem is not orthogonally independent.
I want to solve an lp optimization problem where the upper bounds of a few variables are not an integer, instead of a function of another variable. As an example, i, j and k are three variables and bounds are 0<=i<=100, 0<=j<=i-1 and 0<=k<=j-1. How can we represent such noninteger bounds in scipy lp solver?