Topic: object and value equivalence

topics > computer science > data > Group: data value

data type
philosophy of mathematics

alias names
analytic truth
conditional statement
data type compatibility
existence of database entities
non-primitive values
number as the extension of a class of equinumerous classes
referential transparency
structural equivalence vs. name equivalence of data types
type conversion
unique numeric names as surrogates
value as an abstraction


Equivalence and identity concern two topics: what is preserved under change and when are two things the same despite differences between them [Stroll, "Identity," Ency. Phil.]. We are primarily concerned with the later. For the former, we let a name identify what remains the same and call that which remains the same, an object.

The first requirement for equivalence is that both objects share the same context. The second requirement is that we recognize them as the same. This recognition could be natural as in recognizing a chair, or based on common behavior or common properties. The later allows us to call different representations of a number as representing the same number, e.g., when the numbers are expressed in different units.

Part of the context for testing equivalence is the names given to the object. A statement of equivalence is really about the names for the objects. Frege's classic argument is that if we were identifying the objects themselves then a=b and a=a would be identical statements whenever a is b. (cbb 4/94)

Subtopic: identity requires context up

Quote: identity statements are senseless outside of a consistent context for individuating things [»benaP_1965]

Subtopic: criterion of identity -- recognition up

Quote: for identity to be a useful concept need to be able to recognize two things as the same even though they differ [»fregG_1884]
Quote: every object has a criterion of identity for recognizing the object as the same again; also applies to its names [»dummM_1967]

Subtopic: subset and identity up

Quote: Schroeder-Bernstein theorem--if two sets are numerically equivalent to a subset of each other, the sets are numerically equivalent [»simmGF_1963]

Subtopic: types of equality tests up

Quote: when are two names the same; equality testing by match, surrogate, list, and procedural [»kentW_1978]
Quote: in the match test, two names are the same only if they are identical [»kentW_1978]
Quote: in the surrogate test, two names are the same only if the reference the same surrogate [»kentW_1978]
Quote: in the list test, two names are the same if they occur on the same list of synonyms [»kentW_1978]
Quote: the extensional set constructor is the ultimate test of identity; cardinality of the set is one [»kentW6_1991]
Quote: in the procedural test, two names are the same if a procedure says so [»kentW_1978]

Subtopic: units up

Quote: units define equivalent values between two value sets [»chenPP3_1976]

Subtopic: self identity up

Quote: saying two pieces of chalk are the same could mean different things; but saying everything is the same as itself seems utterly unambiguous [»wittL_1939]

Subtopic: substitutivity up

Quote: 'A is the same as B' is a reciprocal relation that signifies that one can be substituted for the other in any proposition without destroying its truth [»leibGW_1686]
Quote: a module can replace another if it implements the same abstraction; without changing other modules
Note: type lets you substitute like for like [»cbb_1990, OK]

Subtopic: failure of substitutivity up

Quote: substitutivity fails for Giorgione = Barbarelli in "Giorgione was so-called because of his size"

Subtopic: identity of indiscernibles up

QuoteRef: louxMJ_1970 ;;190 Identity of indiscernibles-- 2 objects same characteristics are numerically identical i.e. occupy the same place
QuoteRef: cbb_1973 ;;11/7/74 a and b have the same value if f(a) and f(b) always have the same value
Quote: equivalent terms are terms that can be substituted without altering the truth of any statement. [»leibGW_1685]
Quote: 'A is the same as B' is a reciprocal relation that signifies that one can be substituted for the other in any proposition without destroying its truth [»leibGW_1686]
Quote: indiscernibility of identicals--identicals may be substituted in any true statement [»quinWV_1947]
Quote: identification of indiscernibles--indistinguishable objects are identical for a given discourse [»quinWV_1950]
Quote: sounds are different phonemes if substitution changes the meaning [»quinWV8_1951]
QuoteRef: goodJB_1968 ;;781 if an analysis is the same (different) at any level, it must be the same (different) at any deeper (previous) level or stage
Quote: equality may stand for the words 'is confused with' [»browGS_1972]
Quote: equality is not the mere presence or absence of a property, but being true or false can depend on properties [»browGS_1972]

Subtopic: geometric equality up

Quote: equality is transitive [»eucl_300, OK]
Quote: equals added to equals are equal

Subtopic: logical equivalence up

Quote: equivalent terms are reflexive and transitive; i.e., A=B implies B=A, and, A=B and B=C imply A=C
Quote: equivalent terms are terms that can be substituted without altering the truth of any statement. [»leibGW_1685]
Quote: A and A are the first coincidents [»leibGW_1686]
Quote: A and non-A are the first disparities; i.e., it is false that some A is B
Quote: if A is B, it is false that A is non-B

Subtopic: name vs. value equivalence up

Quote: a name, when used as a name, has no internal structure; names are atomic objects; may test for equality [»straC8_1967]
Quote: questioning the equivalence of objects is really questioning references to objects

Subtopic: statistics up

QuoteRef: alexWG2_1972 ;;23 equivalence 46% of the time

Subtopic: hashed identity up

Quote: test equality of arbitrary byte sequences by testing their 128-bit fingerprints
Quote: an approximate membership tester correctly accepts every member but rarely accepts a non-member [»cartL5_1978]
Quote: detect equivalent instruction sequences by executing from two pseudo-random machine states and a 256 byte memory; compute fingerprint of the results [»bansS10_2006]

Subtopic: initialization = assignment = equality up

Quote: constructing a type with an initial value is the same as assigning a value; both values equal afterwards [»dehnJC4_1998]
Quote: many optimizations depend on copies creating equal values while not affecting other values; if not enforced, user types can not be optimized [»dehnJC4_1998]

Subtopic: identity of mutable objects up

Quote: mutable objects are the same only if they are the same object [»liskBH2_1976, OK]
Quote: could test identity in terms of propagation of effects; doesn't work under inheritance or derivation rules [»kentW6_1991]
Quote: two objects are equal if their parts are equal, including remote parts, ignoring addresses, inessential components, and relationships [»dehnJC4_1998]
Quote: equality of objects with remote parts must also test the remote parts; e.g., variable size objects [»dehnJC4_1998]
Quote: equality should ignore irrelevant components; e.g., a reference count [»dehnJC4_1998]
Quote: equality should ignore components that reflect relationships between objects; e.g., the person sitting on a chair object [»dehnJC4_1998]
Quote: the equality operator is worst-case, linear time
Quote: equality failure is typically constant time since unequal objects usually test unequal early

Subtopic: identity as naming, unique ids up

Quote: a=b means that the names 'a' and 'b' name the same thing; asserts a relation between names [»fregG_1892]
Note: "Cicero = Tully" informs people about a language; e.g., merge if names are clusters of characteristics [»searJR_1958, OK]
Quote: need path names for access and unique ids for equality testing [»hewiC8_1977]
QuoteRef: reynJC5_1970 ;;309 atom's equality test but no order-of operations

Subtopic: problems of identity up

Quote: the idea of Sameness challenges reflection
Quote: no two substances are identical; each singular substances expresses the whole world in its own way, including all that happens to it [»leibGW_1686b]
Quote: is Sameness a relation? a relation between objects? or between names of objects?
Quote: if identity was between objects, then a=b and a=a would be the same whenever a=b is true [»fregG_1892]
Quote: a=a vs. a=b indicates that Sameness is a relation between names of objects; only a=a is a priori [»fregG_1892]

Subtopic: avoid reference up

Quote: Guava values are stored in variables; no references, value equality, method export, null value, deep copying [»bacoDF10_2000]
Quote: Guava uses deep-copying for values and objects within values; does not copy references to monitors

Related Topics up

Group: data type   (34 topics, 730 quotes)
Group: philosophy of mathematics   (11 topics, 330 quotes)

Topic: alias names (39 items)
Topic: analytic truth (51 items)
Topic: conditional statement (8 items)
Topic: data type compatibility (5 items)
Topic: entities (20 items)
Topic: existence of database entities (19 items)
Topic: logic (84 items)
Topic: non-primitive values (11 items)
Topic: number as the extension of a class of equinumerous classes (23 items)
Topic: referential transparency (26 items)
Topic: structural equivalence vs. name equivalence of data types (30 items)
Topic: type conversion (33 items)
Topic: unique numeric names as surrogates (67 items)
Topic: units (23 items)
Topic: value as an abstraction
(25 items)

Updated barberCB 3/06
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.