Re: postgreSQL as deductive DBMS - Mailing list pgsql-hackers

From Michael Meskes
Subject Re: postgreSQL as deductive DBMS
Date
Msg-id 20050516154621.GA11562@1
Whole thread Raw
In response to postgreSQL as deductive DBMS  (Dmitriy Letuchy <dm.l@mail.ru>)
List pgsql-hackers
Having written my thesis about deductive DBS I cannot resist giving my 2
cent.

On Mon, May 16, 2005 at 01:42:24PM +0400, Dmitriy Letuchy wrote:
>     Now some words about what must be done to realize described feature. The simple quickest way but the way without
futureis to write language handler. Other more correct way is to slightly extend DML part of SQL and more essentially
extendDDL. For example, we have relation Inheritance with two attributes ClassID and ParentID. Now we want to define
alldescendants or all ancestors. For this goal we define predicate inheritance_all with the next two rules (i.e.
inverseimplications):
 
> 
>     inheritance_all(ClassID, ParentID) :- inheritance(ClassID, ParentID);
>     inheritance_all(ClassID, ParentID) :- inheritance(ClassID, X), 
>         inheritance_all(X, ParentID).
> 
>     We put this rules into database and call, for example, the next SQL commands:
> 
>     --   find all descendents
>     SELECT * FROM ddb_name.inheritance_all(_, _) 

How do you plan to execute this statement. As you mentioned above all
logic queries can be rewritten into SQL ones, but you have to find a way
to handle recursion. I would think the best way is to add recursion to
SQL and then completely rewrite the statements. 

Also, and that's where it starts to become interesting, how do you plan
to handle negation inside recursion?

Michael
-- 
Michael Meskes
Email: Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org)
ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: meskes@jabber.org
Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL!


pgsql-hackers by date:

Previous
From: Mahmoud Taghizadeh
Date:
Subject: farsi faq has not been added yet in website,
Next
From: Josh Berkus
Date:
Subject: Re: postgreSQL as deductive DBMS