Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> comp.databases.theory -> Re: In an RDBMS, what does "Data" mean?

Re: In an RDBMS, what does "Data" mean?

From: x <x-false_at_yahoo.com>
Date: Mon, 7 Jun 2004 19:29:52 +0300
Message-ID: <40c49710@post.usenet.com>

"Paul" <paul_at_test.com> wrote in message
news:fj%wc.12030$NK4.1630897_at_stones.force9.net...
> x wrote:
> > Prolog will let you store anything you want that is expressible in
> > Prolog. If you want contradictory statements, you can have them.
>
> Hmm that's strange. In a relational database I can't have both the
> proposition "Employee 123 is called John" and the constraint "no
> employee is called John" in my database. If I have one, it stops me
> adding the other.
>
> I've got Prolog here and I'm playing with it trying to write a program
> that has two contradictory statements. It seems that the "not" predicate
> in Prolog works a bit strangely. Could you give me an example of a
> simple Prolog program that has two terms that contradict each other?
> Would in then follow that in that system anything is provable?

You cannot use *not* in the head of a Horn clause. You cannot assert not(name(X,john)).

But you can assert P(X):-not(P(X)).
Try this:

Ex.1



P(a).
P(X):-not(P(X)).
?-P(a).
?-P(b).
?-P(Y).

Ex. 2



P(a).
P(X):- not (Q(X)).

Q(a).
Q(X):-not(P(X)).

?-P(a).
?-P(b).
?-P(Y).

and see what happen.

Indeed *not* is special in Prolog.
How can you say "for all" and "there is" in Prolog ?

> >>> I'm not sure about this. There must be exactly *ONE* real-world
> >>> "interpretation" of the database.
> >>
> >> Why must there? consider the database with one tuple like this:
> >> (1,2) There could be many real-world interpretations of this
> >> database surely? It's not inconceivable that two people who've
> >> never met have identical databases with totally different
> >> interpretations.
> >
> > Because otherwise the database would be ambiguous. :-) Define
> > identical :-)
>
> I'm using identical to mean "identical syntax, though possibly different
> semantics". (And maybe different relation, column names).
>
> I think maybe we're talking at cross-purposes here: I'm thinking of a
> database from a purely syntactically viewpoint, you're thinking of it as
> a whole, semantics included.

Big difference, don't you think ?

> What database-related elements would you say correspond to the different
> parts of Godel's theorem (logic, theory, model, axioms)? If indeed you
> think it's applicable at all?

I think it is applicable to the query part of a RDBMS.

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

Received on Mon Jun 07 2004 - 11:29:52 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US