Here begins a tortuous philosophical discussion:
There are two schools of thought regarding the “EQ” question.
Here I assume that the code responsible for distribution has a capability to ask whether two capabilities are the same capability.
To fix ideas I assert the following axiomatically:
Note that “==” applied to object references of Java satisfies these axioms whereas the common equals method may not.
Note also that the distribution scheme is constrained to make these axioms true for remotely transmitted messages but may choose to do so by providing an alternative EQ at certain sites.
Another aspect of these axioms is the use of the phrase “yields the same result”.
When this is interpreted in some computational model the meaning may be precise, but different models will lead to different meanings.
Forwarders supporting distribution come from the same creator. They retain a capability to invoke their creator which they use to recognize a sibling. A sibling is another object created by the same creator. The creator can, in principle, keep a list of capabilities to all of the objects that it has created. When invoked in order to recognize and identify one of its offspring it can use an equality primitive (via a capability) to see if the proffered capability is one that it created. In fact there is normally an optimization of this that avoids the cost of a linear search. Such matters involve synergy.