Re: Possible problems with Date & McGoveran View Updating

From: Mikito Harakiri <mikharakiri_at_ywho.com>
Date: Thu, 11 Sep 2003 09:56:25 -0700
Message-ID: <qX18b.17$927.33_at_news.oracle.com>


"Jan Hidders" <jan.hidders_at_pandora.be> wrote in message news:laM7b.13143$tU6.372780_at_phobos.telenet-ops.be...
> Mikito Harakiri wrote:
> >> Given a database D an addition of a set of tupels A to the view V is
> >> called
> >> *well-defined* if there is a unique smallest superinstance D' of D such
> >> that D' satisifies the schema and Q(D') = Q(D) + A. Analogously we
define
> >> a
> >> deletion of a set of tupels as *well-defined* but with "superinstance"
> >> replaced with "subinstance" and set union replaced with set difference.
> >> Relational assignments can be simulated by a deletion followed by an
> >> addition.
> >
> > Terminolody and defintion amended:
> >
> > Q( D + deltaD ) = V + deltaV
> >
> > where "+" is union (or difference;-)
>
> Ok. I can see the elegance of that. But the + is then not the set-union
but
> an, er, database-union or database-merge or ... something. :-)

It could be union on the "V side" of the equation. V is one relation after all. If we apply the same trick as in my minor preamble to the "D side" (reducing D to a universal relation by taking cartesian product of all the relations in D), then + could be interpreted as a union on the "D side" as well, right?

> > The Q is called invertible if for any deltaV there exists unique deltaD
> > satisfying the formula above.
>
> Are you sure you don't want deltaD to be minimal?

Definition #1:

Given D, V, satisfying

Q( D ) = V

call Q invertible if any deltaV implies a single solution for deltaD in the equation

Q( D + deltaD ) = V + deltaV

> And I assume you mean "for
> a given D and V" right?

Yes

> > Question. Is the definition equivalent to
> >
> > exists Q^(-1) such that Q(D) == Q * D = V <=> D = Q^(-1) * V
>
> I assume you mean: Q(D) = V <=> Q(-1)(V) = D? That doesn't make much
sense
> because the universal quantification of D and V happens before the
> existential quantification of Q^(-1). Or is that not what you meant? So
> where then are the quantifiers in your definition of invertable? Note that
> in my definition an update is defined as well-defined given the database
> instance.

No, universal quantification happens after existential:

Definition #2:

Exists Q^(-1) such that for any D and V Q(D) = V <=> D = Q^(-1) (V)

You are correct, my defintition#2 is formally instance independent, while defintition #2 is formally dependent. We can make definition #1' by universally quantifying #1 and ask if #1' is equivalent to #2.

> > and therefore switching term "well-defined" to "invertible" is
> > justifiable?
>
> I don't think so. Assume that the database consists of only R(a,b) and
Q(R)
> = SELECT[a=5](R). In that case the addition Add({(5,6)}) is always a
> well-defined addition but not invertible as you defined it above.

It seems that the difference is how much we want to quantify the

Q( D + deltaD ) = V + deltaV

No quantification (that is D, V, and deltaV are free) -- then we are speaking "well-defined".

Definition #0:

Given D and V such that

Q( D ) = V

and some deltaV, Q is called well-defined if there exists deltaD such that

Q( D + deltaD ) = V + deltaV

The alternative term I might prefer is "locally invertible". Received on Thu Sep 11 2003 - 18:56:25 CEST

Original text of this message