Dumb question here : What does agnostic mean in this context ?
The ZOPA issue you raise actually disappears when the trade involves a lot of players, not only two.
Let's say we have N players. The first consequence would be the existence of a unique price. A lot of mechanisms can lead to a unique price, you could spy on your neighbors to see if they get a better deal than you do, or you could just have a price in mind which gets updated each time you get a deal or you don't - If I get a deal, that's suspicious, my price wasn't good enough, I'll update it. If I don't, I was too greedy, I'll update it - In the end, everyone will use the same price.
At this point, everyone will specialize in one good (banana or coconut) based on whether each one values banana/coconut more or less than the market does.
The ZOPA is therefore the ZOPA between the worst banana gatherer and the worst coconut gatherer. The bigger N, the smaller the ZOPA, therefore the smaller the need for perverse behaviors.
Thanks a lot!
NESS answers the question of who shares responsibility, but it doesn't answer that of how much responsibility they have. For instance, imagine that a group of people made stone soup with 1 stone, 1 pot, water, fire, and ingredients; and that in order to be a soup, it needed a pot, water, and at least 3 ingredients. NESS tells us that the person who brought the stone was not responsible for the soup, and that everyone else was; but how do we divide responsibility among the others? Simple symmetry shows that each ingredient gets the same responsibility, but there are many facially-valid ways you could set relative responsibility weights between an ingredient and the pot.
I think there's actually one way to set relative responsibility weight which makes more mathematical sense than the others. But, first, let's slightly change the problem, and assume that the members of the group arrived one by one, that we can order the members by time of arrival. If this is the case, I'd argue that the complete responsibility for the soup goes to the one who brought the last necessary element.
Now, back to the main problem, where the members aren't ordered. We can set the responsibility weight of an element to be the number of permutations in which this particular element is the last necessary element, divided by the total number of permutations.
This method has several qualities : the sum of responsibilities is exactly one, each useful element (each Necessary Element of some Sufficient Set) has a positive responsibility weight, while each useless element has 0 responsibility weight. It also respects the symmetries of the problem (in our example, the responsibility of the pot, the fire and the water is the same, and the responsibility of each ingredient is the same)
In a subtle way, it also takes into account the scarcity of each ressource. For example, let's compare the situation [1 pot, 1 fire, 1 water, 3 ingredients] with the situation [2 pots, 1 fire, 1 water, 3 ingredients]. In the first one, in any order, the responsibility goes to the last element, therefore the final responsibility weight is 1/7 for each element. The second situation is a bit trickier, we must consider two cases. First case, the last element is a pot (1/4 of the time). In this case, the responsibility goes to the seventh element, which gives 1/7 responsibility weight to everything but the pots, and 1/14 responsibility weight to each pot. Second case, the last element is not a pot (3/4 of the time), in which case the responsibility goes to the last element, which gives 1/6 responsibility weight to everything but the pots, and 0 to each pot. In total, the responsibilities are 1/56 for each pot, and 9/56 for each other element. We see that the responsibility has been divided by 8 for each pot, basically because the pot is no longer a scarce ressource.
Anyway, my point is, this method seems to be the good way to generalize on the idea of NESS : instead of just checking whether an element is a Necessary Element of some Sufficient Set, one must count how many times this element is the Necessary Element of some permutation.