dbTalk Databases Forums  

Re: More on identifiers

comp.databases.theory comp.databases.theory


Discuss Re: More on identifiers in the comp.databases.theory forum.



Reply
 
Thread Tools Display Modes
  #21  
Old   
none
 
Posts: n/a

Default Re: More on identifiers - 06-07-2009 , 04:04 PM






David BL wrote:

Quote:
Getting back to the topic of my original post, what do you think of
the idea of DVAs to avoid the need to label things?
I think your opening posting is spot on.

It clearly explains the motivation for abstract identities
that also motivated the early-90s work Marshall refers to in his link,
which initially went under the banner of "object-oriented
database languages" (which, as you explained in another posting,
is at odds with "true OO" in which objects are abstract machines,
but it does agree with how OO is often used in practice, e.g.
with treating UML class diagrams as data models), and was later
continued under the banner of "semi-structured data".

So what I would ask is: how is your idea of a DVA different
from the "object-oriented" logics and algebras invented
in the early 90s?

--
Reinier

Reply With Quote
  #22  
Old   
David BL
 
Posts: n/a

Default Re: More on identifiers - 06-08-2009 , 12:53 AM






On Jun 8, 5:04 am, rp (AT) raampje (DOT) (none) (Reinier Post) wrote:
Quote:
David BL wrote:
Getting back to the topic of my original post, what do you think of
the idea of DVAs to avoid the need to label things?

I think your opening posting is spot on.

It clearly explains the motivation for abstract identities
that also motivated the early-90s work Marshall refers to in his link,
which initially went under the banner of "object-oriented
database languages" (which, as you explained in another posting,
is at odds with "true OO" in which objects are abstract machines,
but it does agree with how OO is often used in practice, e.g.
with treating UML class diagrams as data models), and was later
continued under the banner of "semi-structured data".

So what I would ask is: how is your idea of a DVA different
from the "object-oriented" logics and algebras invented
in the early 90s?
Not having studied the OO logics that you refer to I cannot answer the
question with any authority.

I assume you are referring to the analogy that could be made between a
DVA and an OO instance used to model an entity, in the sense that in
both cases properties of the entity are recorded in a localised
manner.

I do have some ideas on the distinction, if you are interested.

Reply With Quote
  #23  
Old   
David BL
 
Posts: n/a

Default Re: More on identifiers - 06-08-2009 , 01:36 AM



On Jun 7, 10:04 pm, JOG <j... (AT) cs (DOT) nott.ac.uk> wrote:
Quote:
My first comment would be that the scenario you have described doesn't
(strictly) necessitate abstract identifiers. Instead you'd have N
relations, for the N different object types, with each of those
relations also have an "in_box" attribute. You don't necessarily need
a "boxes" relation to fully describe the information in full. This
would mean however that you would need to query N relations to
determine what was contained in any given box.
I was assuming some of the properties of the items are parameterised
on numerical quantities. Even though these quantities would typically
be quantised into a finite set of possible values, your suggestion
would require many billions of relations making it impractical.

Reply With Quote
  #24  
Old   
David BL
 
Posts: n/a

Default Re: More on identifiers - 06-08-2009 , 01:40 AM



On Jun 7, 10:16 pm, Marshall <marshall.spi... (AT) gmail (DOT) com> wrote:
Quote:
On Jun 4, 9:52 pm, David BL <davi... (AT) iinet (DOT) net.au> wrote:



I have wondered for some time whether abstract identifiers are only
needed within the confines of a flat relational model.

Merry Christmas:

http://groups.google.com/group/comp....g/a29e6e6cd225...

Oh wow I wasn't expecting an early Christmas present, but actually I
read that thread a few months ago and found it very interesting.

Reply With Quote
  #25  
Old   
Bernard Peek
 
Posts: n/a

Default Re: More on identifiers - 06-08-2009 , 09:25 AM



In message <Oo6Wl.770$u86.24 (AT) nwrddc01 (DOT) gnilink.net>, Walter Mitty
<wamitty (AT) verizon (DOT) net> writes


Quote:
Consider two electrons. They both have the same mass, and they have the
same charge. They might have opposite spins. But the minute we add a third
electron, the spin of two of them is going to be identical. It seems that,
on the surface at least, electrons do not have enough properties to carry
identity. As you descend into lower level particles like quarks, things get
even more this way. Particles seem more and more interchangeable.
Subatomic particles might not have much to do with your objects in a box,
but it seems to me that any theory of reality and identity that falls apart
at the subatomic level should at least take that into account.
I don't think the analogy to electrons is particularly useful here. It's
not clear that electrons have an attribute called Identity. Electrons
in different locations can change places with each other (insofar as the
concept of place has meaning here.) It's provably impossible to measure
all of the properties of an electron even if we only consider it as a
particle. When we add wavelike properties it only gets worse.



--
Bernard Peek

Reply With Quote
  #26  
Old   
vadimtro@gmail.com
 
Posts: n/a

Default Re: More on identifiers - 06-08-2009 , 11:00 AM



On Jun 8, 7:25*am, Bernard Peek <b... (AT) shrdlu (DOT) com> wrote:
Quote:
In message <Oo6Wl.770$u86... (AT) nwrddc01 (DOT) gnilink.net>, Walter Mitty
wami... (AT) verizon (DOT) net> writes

Consider two electrons. *They both have the same mass, and they have the
same charge. *They might have opposite spins. *But the minute we adda third
electron, the spin of two of them is going to be identical. *It seems that,
on the surface at least, electrons do not have enough properties to carry
identity. *As you descend into lower level particles like quarks, things get
even more this way. *Particles seem more and more interchangeable.
Subatomic particles might not have much to do with your objects in a box,
but it seems to me that any theory of reality and identity that falls apart
at the subatomic level should at least take that into account.

I don't think the analogy to electrons is particularly useful here. It's
not clear that electrons have an attribute called Identity. *Electrons
in different locations can change places with each other (insofar as the
concept of place has meaning here.) It's provably impossible to measure
all of the properties of an electron even if we only consider it as a
particle. When we add wavelike properties it only gets worse.
This is actually an interesting question worth researching. RL is a
nondistributive lattice and lack of distributivity is analogous to
that of Von Neumann's quantum logic. However orthomodular (and even
more generally orthocomplemented) lattices are incompatible with RL.
Adding complement law (http://en.wikipedia.org/wiki/
Complemented_lattice) to RL collapses it to boolean algebra.
Therefore, no, microworld doesn't fit into relational model.

Reply With Quote
  #27  
Old   
Joe Thurbon
 
Posts: n/a

Default Re: More on identifiers - 06-08-2009 , 09:22 PM



On Sat, 06 Jun 2009 20:24:17 +1000, David BL <davidbl (AT) iinet (DOT) net.au> wrote:
Quote:
On Jun 6, 12:19 pm, "Joe Thurbon" <use... (AT) thurbon (DOT) com> wrote:
On Fri, 05 Jun 2009 14:52:27 +1000, David BL <davi... (AT) iinet (DOT) net.au
wrote:

[...]



Due to the projection, all the abstract identifiers have disappeared
from every relation. In a way, it's like seeing a database within a
database! The value of the "inner" database records all the facts in
the /context/ of just one of the items, and therefore has no need for
abstract identifiers to glue things together.

I may have misunderstood, but haven't you just moved the 'problem'?

I don't understand what you mean.

I think I might have misunderstood your motivation. More below.

Quote:
That
is, each abstract identifier that you want to get rid of ends up with
'its
own database'.
Yes, the intention is to eliminate the abstract identifiers from the
logical model, by instead using a database /value/ as a descriptor for
each item. This value is only a function of the recorded visible
properties of the item.
O.K. I had understoon that correctly.

Quote:
Two database values that came from entities that differed
only by their abstract identifier will not be distinguishable.

That is a good thing! It means that two items that are
indistinguishable in terms of the /recorded/ visible properties have
the same descriptor value.

Good, I had understood that bit too.


Quote:
So to
distinguish between them, the abstract identifiers and up being arbitary
names of databases.

The idea is not to distinguish them. That's an advantage of
completely eliminating the abstract identifiers from the logical model
by using DVAs. If there are duplicates then the "outer" database can
record the number of duplicates.
O.K. This is where you lost me. I had thought that in your example:

(1) some client of a database wanted to distinguish between two things
that don't have distinguishing features
(2) the RM makes them use abstract identifiers to achieve it
(3) your solution 'lifts' the abstract identifiers out of the relations,
and 'into' variables.

If the idea is not to distinguish them, then why were there abstract
identifiers in the first place?

Quote:
Of course more generally the
descriptors could take part in all sorts of relations in the "outer"
database.
If so, we seems to be back where we started, apart from now having N
databases instead of one. (Where N is the number of abstract identifiers
that got 'lifted').

I'm pretty sure I'm missing something. (I wonder how embarrassing it will
be when you point it out).

Quote:
A binding between a name and a value can be regarded as a variable
(something that "holds" or "encodes" a value). The elimination of
abstract identifiers can be regarded as the elimination of variables
from the logical model.

So, if the "inner" databases now comprise the logical model, what do you
call the "outer database"?

Cheers,
Joe

P.S. I'm pretty time-constrained at the moment, sorry about the time-lag
between responses.

Reply With Quote
  #28  
Old   
David BL
 
Posts: n/a

Default Re: More on identifiers - 06-08-2009 , 11:50 PM



On Jun 9, 10:22 am, "Joe Thurbon" <use... (AT) thurbon (DOT) com> wrote:
Quote:
On Sat, 06 Jun 2009 20:24:17 +1000, David BL <davi... (AT) iinet (DOT) net.au> wrote:
On Jun 6, 12:19 pm, "Joe Thurbon" <use... (AT) thurbon (DOT) com> wrote:
On Fri, 05 Jun 2009 14:52:27 +1000, David BL <davi... (AT) iinet (DOT) net.au
wrote:

[...]

Due to the projection, all the abstract identifiers have disappeared
from every relation. In a way, it's like seeing a database within a
database! The value of the "inner" database records all the facts in
the /context/ of just one of the items, and therefore has no need for
abstract identifiers to glue things together.

I may have misunderstood, but haven't you just moved the 'problem'?

I don't understand what you mean.

I think I might have misunderstood your motivation. More below.

That
is, each abstract identifier that you want to get rid of ends up with
'its
own database'.
Yes, the intention is to eliminate the abstract identifiers from the
logical model, by instead using a database /value/ as a descriptor for
each item. This value is only a function of the recorded visible
properties of the item.

O.K. I had understoon that correctly.



Two database values that came from entities that differed
only by their abstract identifier will not be distinguishable.

That is a good thing! It means that two items that are
indistinguishable in terms of the /recorded/ visible properties have
the same descriptor value.

Good, I had understood that bit too.

So to
distinguish between them, the abstract identifiers and up being arbitary
names of databases.

The idea is not to distinguish them. That's an advantage of
completely eliminating the abstract identifiers from the logical model
by using DVAs. If there are duplicates then the "outer" database can
record the number of duplicates.

O.K. This is where you lost me. I had thought that in your example:

(1) some client of a database wanted to distinguish between two things
that don't have distinguishing features
(2) the RM makes them use abstract identifiers to achieve it
(3) your solution 'lifts' the abstract identifiers out of the relations,
and 'into' variables.

If the idea is not to distinguish them, then why were there abstract
identifiers in the first place?
I disagree with (1) and (3) and the idea that (1) is the underlying
reason for (2). What I'm actually stating is:

(a) The flat RM often forces the use of abstract
identifiers (irrespective of (1))

(b) It is possible to interpret abstract identifiers as
names of variables in the logical model

(c) It is possible to eliminate abstract identifiers by
using DVAs, and this eliminates the variables from the
logical model.

I think just about everyone agrees there is no point distinguishing
what cannot be distinguished by the recorded visible properties. When
there are duplicates the general consensus is to instead record types
of items and the number of that type. So if we are reducing the
problem of duplicates to recording information about the distinct
types of items, it is very similar to the case where it can be assumed
that there were no duplicates in the first place. What I mean is that
this has little bearing on why the flat relational model tends to
force one to label things - because a type of thing is still a thing.
Putting it another way, not all things have to be so concrete that
they are localised in space and time like a specific physical object,
and humans deal with that form of abstraction all the time.

The problem is that the flat RM forces one to use abstract identifiers
under quite general circumstances. This has nothing to do with
whether there are duplicates. Instead it has to do with the need to
tie all the propositions about an item (or type of item if there are
duplicates) together.


Quote:
Of course more generally the
descriptors could take part in all sorts of relations in the "outer"
database.

If so, we seems to be back where we started, apart from now having N
databases instead of one. (Where N is the number of abstract identifiers
that got 'lifted').
When one says "an integer", "a tuple" or "a relation" it is assumed
one means a value not a variable. For example, it doesn't make sense
to say "update an integer".

In the context of this discussion I would like this terminology to
apply similarly when one says "a database". i.e. it means a value
which is some set of named relation values. However this is
inevitably going to cause a lot of confusion which suggests I need a
different word. In normal parlance, a database is actually what I
would call a database variable, because a (physical) database records
state on physical hardware that exists in space and time. For
example, it is common to say something like "update a database"
instead of "update a database variable".

In the above you said "now having N databases". If you mean database
values then that doesn't make sense, because the number of possible
database values is infinite. It's as meaningless as saying how many
integers you have.

So assuming you mean database variables, you have indeed misunderstood
something, because an "inner database" is treated as a value of an
attribute of a tuple within the containing "outer database". The
"inner database" doesn't imply the existence of an associated
variable. That indeed is the whole point to how they are able to
eliminate variables from the logical model.

It is important to understand for example that a variable that holds a
set of values is not generally the same as a variable that holds a set
of variables.

So to make it clear, I'm suggesting that there is only /one/ database
variable in the scenario of recording all the information about the
items in a physical database.

Quote:
I'm pretty sure I'm missing something. (I wonder how embarrassing it will
be when you point it out).



A binding between a name and a value can be regarded as a variable
(something that "holds" or "encodes" a value). The elimination of
abstract identifiers can be regarded as the elimination of variables
from the logical model.

So, if the "inner" databases now comprise the logical model, what do you
call the "outer database"?
I would say rather informally that logical models can compose by using
DVAs.

Reply With Quote
  #29  
Old   
Joe Thurbon
 
Posts: n/a

Default Re: More on identifiers - 06-09-2009 , 12:35 AM



On Tue, 09 Jun 2009 14:50:02 +1000, David BL <davidbl (AT) iinet (DOT) net.au> wrote:

Quote:
On Jun 9, 10:22 am, "Joe Th
[snip patient explanation - thanks]

Quote:
So assuming you mean database variables, you have indeed misunderstood
something, because an "inner database" is treated as a value of an
attribute of a tuple within the containing "outer database". The
"inner database" doesn't imply the existence of an associated
variable.
That was the bit I missed. (Well, that and the more general reason for
using abstract identifiers, which you clarified above).

Quote:
That indeed is the whole point to how they are able to
eliminate variables from the logical model.

[...]

So to make it clear, I'm suggesting that there is only /one/ database
variable in the scenario of recording all the information about the
items in a physical database.

That wasn't clear to me from your original post. Thanks for taking the
time to clear it up for me.

Quote:
I'm pretty sure I'm missing something. (I wonder how embarrassing it
will
be when you point it out).
Hmm, it was only a little embarrassing.

[...]

Quote:
I would say rather informally that logical models can compose by using
DVAs.

Now that I understand the above, that makes sense to me now.

Thanks again,
Joe

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.