Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

# Topological Relational Algebra in Lisp

54 views

### Norbert_Paul

Dec 20, 2014, 11:04:22 AM12/20/14
to
I'd like to draw your attention to
http://pavel.gik.kit.edu/
which contains a result from a project of former times when I used to
work as a researcher.

I am mainly interested in comments from practicioners if they see any
potential practical application of my results. I think of databases for
geo-information, CAD-data, or, in general, applications that must handle
topological data with arbitrary topologies.

A brief description:
During my work I have realized an interesting link between Relational
Algebra and Topology:
(1) Every finite topological space has a simple and efficient
relational representation.
(2) Every Relational Algebra operator has a corresponding topological
construction. This yields a complete query language for spaces.

So the idea was to extend the relational model in the following way:
(i) Given a database table \$X\$ add a relational representation of
a topology \$T_X\$ for \$X\$ such that the pair \$(X,T_X)\$ becomes
a topological space. The records in \$X\$ constitute the pointset
and a binary relation \$R\$ on \$X\$ represents the topology.
(ii) Provide a version for each database query operator that takes
/spaces/ as input and produces result spaces:
First act as usual on the pointsets.
Then each result set of such query has a uniquely determined
result topology, (see http://en.wikipedia.org/wiki/Final_topology
and http://en.wikipedia.org/wiki/Initial_topology) which yields
a query result space.
(iii) Do this in Lisp because Lisp is fun.
(iv) I wanted to use (and extend) CLSQL first but then decided to
change from SQL (after finding the word "madness" in the
grammar file of PostgreSQL) to Relational Algebra of which I
defined a Lispy syntax.

The web-page describes everything in more detail, contains the sources,
and has a running instance of the experimental database server. The
server is just meant as proof-of-concept and, of course, still far far
away from parcatical usefullness.

I am interested in a discussion here, because it seemed that reviewers
tended to frown on my (any my co-workers) work because, for example:
(1) The applied mathematics is too challenging for the average
audience at scientific conferences (that was an actual remark)
(2) Why should we need database systems particularly designed for
mathematicians?
(3) Arbitrary topological dimension leads to an "combinatorial
explosion of complexity" (another actual remark. Funny, because
obviously wrong)

### Phelan Jackson

Feb 3, 2017, 5:34:42 PM2/3/17
to
Hi,
I think I noticed the same thing the other week - topologies are
defined by their binary distance relations (apologize for my poor use
"relational algebra topology" and found this post but the link to the
article seems to be broken.

So why shouldn't relational databases take advantage of this fact? I
understand it might be difficult for complex structures, but I really
like the idea of "querying" based on the actual structure of data (e.g.
colors in a wheel) instead of just throwing everything in a table and
acting like it's all unrelated data points (and then analyzing it
stochastically).  I've seen tables where parent and child relations are
used to represent hierarchies but usually it's all transactional (so
the data points in a row are just related by definition)