Maybe it was confusing in this context, but in the previous answer I was talking about unit demand functions

I hope it is clearer now.

]]>OPT is defined as "OPT (i.e. maximum weighted matching)" - In the definition of a "matching" in graphs that I'm familiar with, no node can be matched twice. In the context of markets, it means that each player gets at most one item.

If I understand correctly, we usually assume that an allocation in a unit-demand market is a matching (i.e. each player gets at most one item, which is more restrictive), and we can assume this without loss of generality because the value of each set is determined by only one item.

Reading your answer, it seems like that you assume players can get more than one item in OPT. Is this the definition of a "matching" we should work with? ]]>

Also, in this question we assume all valuations are unit-demand, which means that adding or removing items to a set of price 0 and value smaller than the value of the set doesn't change the set's utility.

An extreme example of this will be items of value and price 0, but in the context of the question, all unsold items which are of smaller value compared to agent i's set pose this problem as well.

Because adding and removing such items doesn't change the utility of agent i's set, I don't understand how their demand set can only have a single, unique set. I can always generate another, different set by adding/removing such an item. ]]>

Consider items of price 0. Because we prove the prices are Walrasian, all unsold items will be such items.

For any set of items in the demand set, you can add / remove items of price 0 without changing its utility. This means if there are unsold items, there are multiple sets in the demand set, contradicting what we need to prove.

Can we assume the uniqueness is "up to elements of price 0"? ]]>