Re: deductive databases
From: x <x_at_not-exists.org>
Date: Tue, 17 May 2005 11:14:30 +0300
Message-ID: <d6c959$mjk$1_at_domitilla.aioe.org>
Date: Tue, 17 May 2005 11:14:30 +0300
Message-ID: <d6c959$mjk$1_at_domitilla.aioe.org>
"alex goldman" <hello_at_spamm.er> wrote in message
news:25978468.7Z4LEkyPSR_at_yahoo.com...
> Nilsson's book [1] talks about using first-order logic (and its subsets)
as
> the language for deductive databases. The book is 10 years old, and yet,
> AFAIK the expressive power of modern state-of-art database software like
> Oracle and PostgreSQL still falls far behind first-order logic: it
> essentially doesn't have functors or recursion. Does anyone know why?
>
> [1] http://www.ida.liu.se/~ulfni/lpp/
What do you mean by "the expressive power of ...database software" ? I assume you meant "the expressive power of data (sub)language".
- functors They are eliminated in the first step of the "normalization" process. See Codd 1970 paper ( http://www.scism.sbu.ac.uk/~rmkemp/codd1970.pdf ) The semantic in Prolog and deductive databases is based on the Herbrand universe and LFP (least fixpoint). Existence of functors mean infinite domains, which mean quantifiers cannot always be eliminated.
- recursion There are many places for recursion: - in a language like Java, C/C++, Pascal, Cobol , etc. used in conjunction with the DBMS - in the language of stored procedures (PL/SQL, Java, etc.) - in the data (sub)language, in the definition of a view for example.