COMPUTING SCIENCE
Identity Crisis
Brian Hayes
One and the Same
We seldom notice it, but words such as "equal,"
"identical" and "the same" conceal a deep
ambiguity. Consider this pair of sentences:
On Friday Alex and Baxter wore the same necktie.
On Friday Alex and Baxter had the same teacher.
These two instances of "the same" are not at all the same.
Unless Alex and Baxter were yoked together at the neck on Friday,
they wore two ties; but they had only one teacher. In the first case
two things are alike enough to be considered indistinguishable, and
in the second case there is just one thing, which is necessarily the
same as itself. The two concepts are so thoroughly entangled that
it's hard to find words to speak about them. Where confusion is
likely I shall emphasize the distinction with the terms
"separate but equal" and "selfsame."
When there's some uncertainty about whether two things are alike or
are really just one thing, the usual strategy is to examine them
(it?) more closely. If you study the two neckties long enough,
you're sure to find some difference between them. Even identical
twins are never truly identical; when you get to know them better,
you learn that one has a tattoo, and the other can't swim. (If all
else fails, you can ask them; they know who they are.)
The strategy of looking harder until you spot a difference doesn't
work as well inside the computer, where everything is a pattern of
bits, and separate patterns really can be equal. Bits have no
blemishes or dents or distinguishing features.
Another way to decide between the two kinds of sameness is through
the rule of physics (or metaphysics) that a single object cannot be
in two places at the same time, and two objects cannot occupy the
same space at the same time. Thus all you have to do is bring Alex
and Baxter together in the same room and check their neckwear.
The computational equivalent of this idea states that two objects
are in fact the selfsame object only if they have the same address
in memory. Thus two copies of an object can be distinguished, even
though they correspond bit-for-bit, because they have different
addresses. This is a practical method in widespread use, and yet it
has certain unsatisfactory aspects. In the first place it assumes
that the computer's memory is organized into an array of unique
addresses, which is certainly the usual practice but is not the only
possibility. Second, letting identity hinge on location means that
an object cannot move without changing into something else. This
idea that where you live is who you are contradicts everyday
experience. It is also a fiction in modern computer systems, where
data are constantly shuffled about by mechanisms such as virtual
memory, caches and the storage-management technique called garbage
collection; to maintain the continuity of identity, all of these
schemes have to fool programs into thinking that objects don't
move—a source of subtle bugs.
» Post Comment