Re: The naive test for equality
Date: 2 Aug 2005 11:49:37 -0700
Message-ID: <1123008577.437721.146290_at_g43g2000cwa.googlegroups.com>
Paul wrote:
> Marshall Spight wrote:
> > Sure. Specifically, it's an equivalence relation. Let's distinguish
> > between the equality relation specifically and equivalence relations
> > in general. Equality is a much simpler thing.
>
> Is it, though?
> We think about 1/2 = 2/4 fine even though they have
> different representations.
Sure, because they are the same value. Thining too much about representation can only confuse you. :-)
> Maybe you mean "identity", often shown using
> a variant of the equals sign with three lines instead of two?
No, I certainly do not mean identity. In fact, I specifically reject the concept of identity in the field of data management. It's useful in OOP to distinguish between equality and identity, but introducing identity in data management is a disaster.
> It's rare that we use the "equals" symbol to compare two things with
> identical representation: 1=1, we'd use the "identity" symbol instead.
I not sure I agree that it is rare. It is certainly correct.
> It's all about levels of abstraction: equality at the physical layer
> (representation) may differ from equality at the logical layer (value).
Sure. Note I am not discussing the physical; I'm discussing the logical and conceptual.
I said:
"I guess what makes it so complicated is that we're used to
having to work with objects and memory locations and aliasing
and so forth. These are all *implementation* complexities,
though; the interface remains blindingly simple."
> So for the underlying relational engine to compare two values for
> equality, it can't in general stay in the physical layer; it has just
> jump up into the logical layer, do the comparison, and then jump back
> down to the physical layer again.
Sure, the implementation of a function to test for equality might be more than just a binary region compare, but that doesn't mean that it's not still the implementation.
Marshall Received on Tue Aug 02 2005 - 20:49:37 CEST