Re: Extending my question. Was: The relational model and relational algebra - why did SQL become the industry standard?
Date: Sun, 9 Mar 2003 16:53:14 -0500
Message-ID: <T9Paa.408$vV2.63103002_at_mantis.golden.net>
"Jan Hidders" <jan.hidders_at_REMOVE.THIS.ua.ac.be> wrote in message
news:3e5cb9f9.0_at_news.ruca.ua.ac.be...
> Paul Vernon wrote:
> >"Bob Badour" <bbadour_at_golden.net> wrote in message
> >news:7ZT6a.359$345.54874164_at_mantis.golden.net...
> >> > 1. An implementation is incorrect if it does not faithfully reproduce
> >> > all aspects of the model. To me it is obvious that an implementation
> >> > that breaks say my A) and B) criteria is strictly incorrect.
> >>
> >> Every physical implementation of every logical model, then, is strictly
> >> incorrect.
> >
> >I just don't get that. We should not tolerate physical implementations
that
> >do not faithfully reproduce all aspects of the model. Just as we should
not
> >tolerate an RDBMS that permits duplicate rows, we should also not
tolerate a
> >RDBMS that breaks another aspect of the model, such as all pos reps of a
type
> >represent the same number of values.
> >
> >Tell me, how do you classify which deviations from the logical model are
> >tolerable and which are not?
>
> Sorry for breaking in like this, but could it be that you are confusing
two
> different "logical models"? I would say that on the one hand there is the
> model that physicists and mathematicians use, let's call it the physical
> logical model, that (possibly) talks about reals and continuous intervals
et
> cetera, and on the other hand there is the database logical model that is
> also mathematical but necessarily discrete since we have to store it in a
> computer. So where in the physical logical model we have reals there are
in
> the database logical model floats with a certain finite precision, and
> therefore the database logical model is sometimes necessarily an
> approximation of the physical logical model. However, the implementation
of
> the database logical model should of course be completely faithful and not
> introduce bags or change the precision of the floats.
>
> Let's not forget that a data model is always a model of the model of the
> user of his or her reality. :-)
>
> Having said this, it would be very strange that the equality relationship
as
> defined over the representations would not be an equivalence relation,
since
> that is more or less the accepted fundamental property of any equality
> operator. If you are going to convert coordinates and do some rounding
this
> might go wrong.
This is true any time one uses floating point representations and does some rounding. Consider:
Y := X^(0.5) Y := Y*Y*Y*Y X := X*X
Would you necessarily expect the logical expression (X = Y) to evaluate to TRUE? Received on Sun Mar 09 2003 - 22:53:14 CET