dbTalk Databases Forums  

POOD and the Unique Name Assumption

comp.databases.theory comp.databases.theory


Discuss POOD and the Unique Name Assumption in the comp.databases.theory forum.



Reply
 
Thread Tools Display Modes
  #71  
Old   
Brian Selzer
 
Posts: n/a

Default Re: POOD and the Unique Name Assumption - 06-14-2008 , 03:35 PM







"Marshall" <marshall.spight (AT) gmail (DOT) com> wrote

Quote:
On Jun 12, 4:21 am, "Brian Selzer" <br... (AT) selzer-software (DOT) com> wrote:

I guess I don't really know what this "Unique Name Assumption" is.

The Unique Name Assumption ensures that whenever two names are
different,
the objects they represent must also be different.

What is motivation for such an assumption? It doesn't seem to hold in
any formal system I can think of.

The unique name assumption is concerned with how first order language
elements are mapped to objects in the Universe of Discourse. How could
forcing that mapping to be bijective cause aliasing errors?

Well, to be pedantic (and who doesn't love an opportunity for that?)
I'd
have to say here we're talking about *anti* aliasing errors.

You said specifically "language elements." So that definitely means
things
like variable names, and not values from the domain of discourse. Yes?

No. Not all language elements can map to objects in the Universe.
Certainly not variable names. There are two sets of symbols in a first
order language whose members can: the set of constant symbols, each of which
maps to an individual, and the set of predicate symbols, each of which maps
to a relation. There is also a set of individual variables, but variables
do not map directly to individuals in the universe. They are placeholders
for that which does.

Incidentally, Date refers to the Unique Name Assumption in the chapter on
Logic-Based Databases in /An Introduction to Database Systems/ (page 792 in
the Eighth Edition). Of course in the same paragraph he also mentions the
Domain Closure axiom, but his interpretation of Reiter appears to be flawed
in the same way as his interpretation of the unique name assumption:

3. The "unique name" axiom, which states that every constant is
distinguishable from all of the others (i.e., it has a unique name).

4. The "domain closure" axiom, which states that no constants exist
other than those in the database domains.

Is problematic because not all of the members of a domain necessarily
denote, nor do their referents necessarily exist. For example, suppose that
you have a part number A-12349-0 that today happens to be the next internal
part number to be used. It currently doesn't refer to any particular
assembly, because it hasn't yet been assigned to one. Depending on
decisions made today, it could end up referring to one of several assemblies
whose design has been quoted. So if quote 103256 is won, and the paperwork
reaches engineering first, then A-12349-0 would refer to the assembly quoted
on quote 103256, but if the paperwork for quote 103847 reaches engineering
first, then A-12349-0 would refer to the assembly quoted on quote 103847.
Reiter, in "Equality and Domain Closure in First-Order Databases" (JACM,
April 1980), writes,

3. Closed Databases

Let {c1, ..., cp} be all of the distinct constant signs occuring in
the formulas of a database DB. These are finite in number since there are
just finitely many formulas in DB. Then the following is the /domain
closure axiom/ for DB:

(x) x = c1 \/ ... \/ x = cp.
["(x)" is Reiter's notation for "forall x"]

If DB contains its domain closure axiom, then DB is called a /closed
database/.
In effect a closed database DB restricts the universe of discourse
to just those individuals denoted by the constant signs of DB. As far as DB
is concerned, no other individuals exist.


Date mistakenly equates membership in a database domain with "occuring in
the formulas of a database," and as my example shows, just because a
constant appears in a domain doesn't mean that it denotes--that is, that it
references an individual that either exists or existed. Equally flawed is
his take on the "unique name" axiom: Of course every constant should be
distinguishable from all other constants, but that isn't what the "unique
name" axiom is about. Completely missing is the idea that whenever two
symbols are distinguishable, their referents in the Universe of Discourse
must also be distinguishable.

Quote:
So under the UNA, an expression like

AxEy:x=y

will be false, but ordinarily it would be true. So ... that's going to
be weird.

So under the UNA, an expression like

AxEy:x=y

would be true.

<snip>




Reply With Quote
  #72  
Old   
Brian Selzer
 
Posts: n/a

Default Re: POOD and the Unique Name Assumption - 06-14-2008 , 03:35 PM







"Marshall" <marshall.spight (AT) gmail (DOT) com> wrote

Quote:
On Jun 12, 4:21 am, "Brian Selzer" <br... (AT) selzer-software (DOT) com> wrote:

I guess I don't really know what this "Unique Name Assumption" is.

The Unique Name Assumption ensures that whenever two names are
different,
the objects they represent must also be different.

What is motivation for such an assumption? It doesn't seem to hold in
any formal system I can think of.

The unique name assumption is concerned with how first order language
elements are mapped to objects in the Universe of Discourse. How could
forcing that mapping to be bijective cause aliasing errors?

Well, to be pedantic (and who doesn't love an opportunity for that?)
I'd
have to say here we're talking about *anti* aliasing errors.

You said specifically "language elements." So that definitely means
things
like variable names, and not values from the domain of discourse. Yes?

No. Not all language elements can map to objects in the Universe.
Certainly not variable names. There are two sets of symbols in a first
order language whose members can: the set of constant symbols, each of which
maps to an individual, and the set of predicate symbols, each of which maps
to a relation. There is also a set of individual variables, but variables
do not map directly to individuals in the universe. They are placeholders
for that which does.

Incidentally, Date refers to the Unique Name Assumption in the chapter on
Logic-Based Databases in /An Introduction to Database Systems/ (page 792 in
the Eighth Edition). Of course in the same paragraph he also mentions the
Domain Closure axiom, but his interpretation of Reiter appears to be flawed
in the same way as his interpretation of the unique name assumption:

3. The "unique name" axiom, which states that every constant is
distinguishable from all of the others (i.e., it has a unique name).

4. The "domain closure" axiom, which states that no constants exist
other than those in the database domains.

Is problematic because not all of the members of a domain necessarily
denote, nor do their referents necessarily exist. For example, suppose that
you have a part number A-12349-0 that today happens to be the next internal
part number to be used. It currently doesn't refer to any particular
assembly, because it hasn't yet been assigned to one. Depending on
decisions made today, it could end up referring to one of several assemblies
whose design has been quoted. So if quote 103256 is won, and the paperwork
reaches engineering first, then A-12349-0 would refer to the assembly quoted
on quote 103256, but if the paperwork for quote 103847 reaches engineering
first, then A-12349-0 would refer to the assembly quoted on quote 103847.
Reiter, in "Equality and Domain Closure in First-Order Databases" (JACM,
April 1980), writes,

3. Closed Databases

Let {c1, ..., cp} be all of the distinct constant signs occuring in
the formulas of a database DB. These are finite in number since there are
just finitely many formulas in DB. Then the following is the /domain
closure axiom/ for DB:

(x) x = c1 \/ ... \/ x = cp.
["(x)" is Reiter's notation for "forall x"]

If DB contains its domain closure axiom, then DB is called a /closed
database/.
In effect a closed database DB restricts the universe of discourse
to just those individuals denoted by the constant signs of DB. As far as DB
is concerned, no other individuals exist.


Date mistakenly equates membership in a database domain with "occuring in
the formulas of a database," and as my example shows, just because a
constant appears in a domain doesn't mean that it denotes--that is, that it
references an individual that either exists or existed. Equally flawed is
his take on the "unique name" axiom: Of course every constant should be
distinguishable from all other constants, but that isn't what the "unique
name" axiom is about. Completely missing is the idea that whenever two
symbols are distinguishable, their referents in the Universe of Discourse
must also be distinguishable.

Quote:
So under the UNA, an expression like

AxEy:x=y

will be false, but ordinarily it would be true. So ... that's going to
be weird.

So under the UNA, an expression like

AxEy:x=y

would be true.

<snip>




Reply With Quote
  #73  
Old   
Brian Selzer
 
Posts: n/a

Default Re: POOD and the Unique Name Assumption - 06-14-2008 , 03:35 PM




"Marshall" <marshall.spight (AT) gmail (DOT) com> wrote

Quote:
On Jun 12, 4:21 am, "Brian Selzer" <br... (AT) selzer-software (DOT) com> wrote:

I guess I don't really know what this "Unique Name Assumption" is.

The Unique Name Assumption ensures that whenever two names are
different,
the objects they represent must also be different.

What is motivation for such an assumption? It doesn't seem to hold in
any formal system I can think of.

The unique name assumption is concerned with how first order language
elements are mapped to objects in the Universe of Discourse. How could
forcing that mapping to be bijective cause aliasing errors?

Well, to be pedantic (and who doesn't love an opportunity for that?)
I'd
have to say here we're talking about *anti* aliasing errors.

You said specifically "language elements." So that definitely means
things
like variable names, and not values from the domain of discourse. Yes?

No. Not all language elements can map to objects in the Universe.
Certainly not variable names. There are two sets of symbols in a first
order language whose members can: the set of constant symbols, each of which
maps to an individual, and the set of predicate symbols, each of which maps
to a relation. There is also a set of individual variables, but variables
do not map directly to individuals in the universe. They are placeholders
for that which does.

Incidentally, Date refers to the Unique Name Assumption in the chapter on
Logic-Based Databases in /An Introduction to Database Systems/ (page 792 in
the Eighth Edition). Of course in the same paragraph he also mentions the
Domain Closure axiom, but his interpretation of Reiter appears to be flawed
in the same way as his interpretation of the unique name assumption:

3. The "unique name" axiom, which states that every constant is
distinguishable from all of the others (i.e., it has a unique name).

4. The "domain closure" axiom, which states that no constants exist
other than those in the database domains.

Is problematic because not all of the members of a domain necessarily
denote, nor do their referents necessarily exist. For example, suppose that
you have a part number A-12349-0 that today happens to be the next internal
part number to be used. It currently doesn't refer to any particular
assembly, because it hasn't yet been assigned to one. Depending on
decisions made today, it could end up referring to one of several assemblies
whose design has been quoted. So if quote 103256 is won, and the paperwork
reaches engineering first, then A-12349-0 would refer to the assembly quoted
on quote 103256, but if the paperwork for quote 103847 reaches engineering
first, then A-12349-0 would refer to the assembly quoted on quote 103847.
Reiter, in "Equality and Domain Closure in First-Order Databases" (JACM,
April 1980), writes,

3. Closed Databases

Let {c1, ..., cp} be all of the distinct constant signs occuring in
the formulas of a database DB. These are finite in number since there are
just finitely many formulas in DB. Then the following is the /domain
closure axiom/ for DB:

(x) x = c1 \/ ... \/ x = cp.
["(x)" is Reiter's notation for "forall x"]

If DB contains its domain closure axiom, then DB is called a /closed
database/.
In effect a closed database DB restricts the universe of discourse
to just those individuals denoted by the constant signs of DB. As far as DB
is concerned, no other individuals exist.


Date mistakenly equates membership in a database domain with "occuring in
the formulas of a database," and as my example shows, just because a
constant appears in a domain doesn't mean that it denotes--that is, that it
references an individual that either exists or existed. Equally flawed is
his take on the "unique name" axiom: Of course every constant should be
distinguishable from all other constants, but that isn't what the "unique
name" axiom is about. Completely missing is the idea that whenever two
symbols are distinguishable, their referents in the Universe of Discourse
must also be distinguishable.

Quote:
So under the UNA, an expression like

AxEy:x=y

will be false, but ordinarily it would be true. So ... that's going to
be weird.

So under the UNA, an expression like

AxEy:x=y

would be true.

<snip>




Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.3
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.