Re: deductive databases

From: Mikito Harakiri <mikharakiri_nospaum_at_yahoo.com>
Date: 16 May 2005 15:43:38 -0700
Message-ID: <1116283418.903814.273940_at_f14g2000cwb.googlegroups.com>


Jan Hidders wrote:
> Mikito Harakiri wrote:
> >
> > Returning to OP question:
> >
> > "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."
> >
> > In SQL DBMSs aren't "function symbols" just UDFs (aka stored
> > procedures), then? Including fairly recent incarnations: table
> > functions?
>
> The way that function symbols are interpreted in Prolog and what
gives
> them their expressive power in combination with recursion is more
like
> what you would call a tuple constructor. So a term like f(x,y)
> represents a binary tuple with fields x and y and a label f that
> distinguishes it from g(x,y). So a better analogue would be
user-defined
> record types where the type system allows arbitrary deep nesting or
> recursive types.

I'm not sure I see the significance of nesting, although I seem to get a feeling why genericity of record type is a big deal. Table function output is defined in terms of static object type. I wonder if any RDBMS allows "generic" table functions, where I can declare the type of the output relation on the fly. Among the other things, it would allow to define relational operators in terms of table functions. In particular, one could write his own join method as table function! Received on Tue May 17 2005 - 00:43:38 CEST

Original text of this message