dbTalk Databases Forums  

On the usefulness of tables definitions in RM...

comp.databases.theory comp.databases.theory


Discuss On the usefulness of tables definitions in RM... in the comp.databases.theory forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Cimode
 
Posts: n/a

Default On the usefulness of tables definitions in RM... - 08-20-2010 , 08:47 AM






I lately came to the conclusion that teaching relation structures and
manipulations by using tables inherently induces a bias to think of
relations as relation values as opposed to relation variables.
However, I believe that tables are elements of the presentation layer
since they are only *one* possible representation in time of a
specific relation.

I am curious on whether this confuses more than it helps as far as
operation definitions are concerned. What representations are to be
preferred to avoid confusions ? In what context ?


Opinions welcome.

Reply With Quote
  #2  
Old   
paul c
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-20-2010 , 11:06 AM






On 20/08/2010 8:56 AM, paul c wrote:
....
Quote:
1979 - "The fact that relations can be perceived as tables, and that
tables are similar to flat files, breeds the false assumption that the
freedom of action permitted [with] tables or flat files must also be
permitted when manipulating relations. The manipulation differences are
quite strong." Note that this was written after the first well-known
implementations, such as System-R at IBM.
...
Sorry, I got the date wrong, this quote was from his book published I
think in 1990, not 1979.

Reply With Quote
  #3  
Old   
Roy Hann
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-20-2010 , 11:16 AM



Cimode wrote:

Quote:
I lately came to the conclusion that teaching relation structures and
manipulations by using tables inherently induces a bias to think of
relations as relation values as opposed to relation variables.
However, I believe that tables are elements of the presentation layer
since they are only *one* possible representation in time of a
specific relation.

I am curious on whether this confuses more than it helps as far as
operation definitions are concerned. What representations are to be
preferred to avoid confusions ? In what context ?


Opinions welcome.
When I am teaching I start by writing out a few propositions in full,
but mixing up the order, and I draw attention to the fact that I am
doing it.

I then invite the class to tell me if I have repeated myself anywhere
(which I usually haven't).

I then tell them that to simplify my presentation and to make it easier
to answer questions like that "at a glance" *BUT FOR NO OTHER REASON*, I
will discipline myself to always write the propositions in a single
consistent form.

I then point out that a single predicate can be written which is of a
form that all the propositions fit, so I can leave out all the
extraneous verbiage and just *list* the values to plug into the
predicate.

I then re-write all my propositions just as lists of values, neatly
lined up, so that it appears tabular.

I then remind the class that the tabular appearance is merely a happy
accident.

--
Roy

Reply With Quote
  #4  
Old   
paul c
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-20-2010 , 02:22 PM



On 20/08/2010 9:16 AM, Roy Hann wrote:
Quote:
Cimode wrote:

I lately came to the conclusion that teaching relation structures and
manipulations by using tables inherently induces a bias to think of
relations as relation values as opposed to relation variables.
However, I believe that tables are elements of the presentation layer
since they are only *one* possible representation in time of a
specific relation.

I am curious on whether this confuses more than it helps as far as
operation definitions are concerned. What representations are to be
preferred to avoid confusions ? In what context ?


Opinions welcome.

When I am teaching I start by writing out a few propositions in full,
but mixing up the order, and I draw attention to the fact that I am
doing it.

I then invite the class to tell me if I have repeated myself anywhere
(which I usually haven't).

I then tell them that to simplify my presentation and to make it easier
to answer questions like that "at a glance" *BUT FOR NO OTHER REASON*, I
will discipline myself to always write the propositions in a single
consistent form.

I then point out that a single predicate can be written which is of a
form that all the propositions fit, so I can leave out all the
extraneous verbiage and just *list* the values to plug into the
predicate.

I then re-write all my propositions just as lists of values, neatly
lined up, so that it appears tabular.

I then remind the class that the tabular appearance is merely a happy
accident.

Regarding repetition, I don't think there's anything incorrect about it
in principle, although I imagine it might cause confusion when the
average dbms operates. I'd go so far as to say that even logical
redundancy wouldn't matter with a better dbms that normalized, although
I can understand why people find that doing the normalizing manually
helps expose errors in data design and possibly there are some cases
where it is impossible or close to impossible to normalize in a
reasonable amount of machine time.

People like repetition, is it just machines that make it awkward?

Reply With Quote
  #5  
Old   
Reinier Post
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-20-2010 , 02:23 PM



Cimode wrote:

Quote:
I lately came to the conclusion that teaching relation structures and
manipulations by using tables inherently induces a bias to think of
relations as relation values as opposed to relation variables.
The standard terminology is here:

http://en.wikipedia.org/wiki/First-o...der_structures

It uses 'relation' and 'structure',
but not 'relation variable' or 'table'.

Quote:
However, I believe that tables are elements of the presentation layer
since they are only *one* possible representation in time of a
specific relation.
In database theory, the term 'table' is usually reserved for what
Codd apparently calls 'array': a two-dimensional array in which the
relation's tuples are the rows and the columns represent attributes
in a particular order. So the main difference between a table and a
relation is that a table is ordered both horizontally and vertically.

Quote:
I am curious on whether this confuses more than it helps as far as
operation definitions are concerned. What representations are to be
preferred to avoid confusions ? In what context ?
If I were to teach, given enough time, I'd use mathematical logic
to explain the principles, and terms like 'table' to refer to
SQL databases, and explain the connection and differences.

--
Reinier

Reply With Quote
  #6  
Old   
Cimode
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-20-2010 , 02:41 PM



On 20 août, 18:16, Roy Hann <specia... (AT) processed (DOT) almost.meat> wrote:
Quote:
Cimode wrote:
I lately came to the conclusion that teaching relation structures and
manipulations by using tables inherently induces a bias to think of
relations as relation values as opposed to relation variables.
However, I believe that tables are elements of the presentation layer
since they are only *one* possible representation in time of a
specific relation.

I am curious on whether this confuses more than it helps as far as
operation definitions are concerned. *What representations are to be
preferred to avoid confusions ? *In what context ?

Opinions welcome.

When I am teaching I start by writing out a few propositions in full,
but mixing up the order, and I draw attention to the fact that I am
doing it.

I then invite the class to tell me if I have repeated myself anywhere
(which I usually haven't).

I then tell them that to simplify my presentation and to make it easier
to answer questions like that "at a glance" *BUT FOR NO OTHER REASON*, I
will discipline myself to always write the propositions in a single
consistent form.

I then point out that a single predicate can be written which is of a
form that all the propositions fit, so I can leave out all the
extraneous verbiage and just *list* the values to plug into the
predicate.

I then re-write all my propositions just as lists of values, neatly
lined up, so that it appears tabular.

I then remind the class that the tabular appearance is merely a happy
accident.
Thanks for this insight. I am curious as to what do you think is
gained by your students, in the perspective of understanding
relations, in going through such efforts.

> Roy

Reply With Quote
  #7  
Old   
Roy Hann
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-20-2010 , 06:29 PM



Cimode wrote:

Quote:
I then remind the class that the tabular appearance is merely a happy
accident.

Thanks for this insight. I am curious as to what do you think is
gained by your students, in the perspective of understanding
relations, in going through such efforts.
Nothing, I hope. Or rather, I hope they are disuaded that the tabular
representation has any special significance. At the very least I hope
they don't leave saying things like "tables are two-dimensional".

But perhaps you are asking if they discern a distinction between table
valued variables and tables? No, probably not. I do actually say words
that spell out the difference but I can't say I ever test their
understanding of the difference.

--
Roy

Reply With Quote
  #8  
Old   
Cimode
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-21-2010 , 03:25 PM



On 21 août, 01:29, Roy Hann <specia... (AT) processed (DOT) almost.meat> wrote:
Quote:
Cimode wrote:
I then remind the class that the tabular appearance is merely a happy
accident.
Thanks for this insight. I am curious as to what do you think is
gained by your students, in the perspective of understanding
relations, in going through such efforts.

Nothing, I hope. *Or rather, I hope they are disuaded that the tabular
representation has any special significance. At the very least I hope
they don't leave saying things like "tables are two-dimensional".

But perhaps you are asking if they discern a distinction between table
valued variables and tables? *No, probably not. *I do actually say words
that spell out the difference but I can't say I ever test their
understanding of the difference.
You have guessed right. Don't you believe that understanding that
difference is important to understand relation manipulation/
operation ?
> Roy

Reply With Quote
  #9  
Old   
Roy Hann
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-22-2010 , 04:27 AM



Cimode wrote:

Quote:
On 21 août, 01:29, Roy Hann <specia... (AT) processed (DOT) almost.meat> wrote:
Cimode wrote:
I then remind the class that the tabular appearance is merely a happy
accident.
Thanks for this insight. I am curious as to what do you think is
gained by your students, in the perspective of understanding
relations, in going through such efforts.

Nothing, I hope. *Or rather, I hope they are disuaded that the tabular
representation has any special significance. At the very least I hope
they don't leave saying things like "tables are two-dimensional".

But perhaps you are asking if they discern a distinction between table
valued variables and tables? *No, probably not. *I do actually say words
that spell out the difference but I can't say I ever test their
understanding of the difference.
You have guessed right. Don't you believe that understanding that
difference is important to understand relation manipulation/
operation ?
Sure. And as I say, I do make the point explicitly. (BTW, I train
only working programmers and they have zero interest in anything that
proclaims itself to be "theory". I don't talk about "relations",
"propositions" or "predicates" in class.) All I can say is that I want
them to end up writing set-oriented code always, and they seem to mostly
get it in the end.

--
Roy

Reply With Quote
  #10  
Old   
Cimode
 
Posts: n/a

Default Re: On the usefulness of tables definitions in RM... - 08-22-2010 , 06:30 AM



On 22 août, 11:27, Roy Hann <specia... (AT) processed (DOT) almost.meat> wrote:
Quote:
Cimode wrote:
On 21 août, 01:29, Roy Hann <specia... (AT) processed (DOT) almost.meat> wrote:
Cimode wrote:
I then remind the class that the tabular appearance is merely a happy
accident.
Thanks for this insight. I am curious as to what do you think is
gained by your students, in the perspective of understanding
relations, in going through such efforts.

Nothing, I hope. *Or rather, I hope they are disuaded that the tabular
representation has any special significance. At the very least I hope
they don't leave saying things like "tables are two-dimensional".

But perhaps you are asking if they discern a distinction between table
valued variables and tables? *No, probably not. *I do actually saywords
that spell out the difference but I can't say I ever test their
understanding of the difference.
You have guessed right. *Don't you believe that understanding that
difference is important to understand relation manipulation/
operation ?

Sure. *And as I say, I do make the point explicitly. *(BTW, I train
only working programmers and they have zero interest in anything that
proclaims itself to be "theory". I don't talk about "relations",
"propositions" or "predicates" in class.) *All I can say is that I want
them to end up writing set-oriented code always, and they seem to mostly
get it in the end.
I do admire the effort. I have found that conveying the unnatural set
based thinking is quite a challenge with people priorly exposed to
procedural mindset. Somehow, the two mindset seem opposite both in
intent and efficiency to understand the relevance of relational
algebra.
> Roy

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.