I suppose this is really an economics question, but I'm posting here for want of a more appropriate forum. My question concerns an aggregate demand system in which we have $n$ variants of a product, and the demand function of variant $i$ is given by $$D_i(p_1,\dots,p_n)$$ where $p_i$ is the price of variant $i$. We assume that $D_i$ is strictly positive for all nonnegative prices, and satisfies the gross substitutes property which says that $$\frac{\partial D_i}{\partial p_j}\geq0 ~~ \forall j\neq i$$ i.e. that if I increase the price of one variant, then the demand for all other variants can only increase. My question is: let's suppose I have some desired demand vector $\mathbf{d} = (d_1,\dots,d_n)$ and I would like to determine a price vector $\mathbf{p}=(p_1,\dots,p_n)$ such that $D_i (p_1,\dots,p_n) = d_i$ for all $i$. What is known about the existence of such a price vector, and how difficult is it to find one? I would imagine that the primary useful tools would be fixed-point type theorems, but I'm also particularly curious if there are known algorithms for finding this vector. We can assume, for example, that for any price vector, the $D_i$'s must sum to one, so that overall demand for the $n$ variants remains constant.