Saturday, August 09, 2003

Math and Computing
Paul Graham, writing about Lisp:

“So the short explanation of why this 1950s language (Lisp) is not obsolete is that it was not technology but math, and math doesn't get stale.”

I'll make the same claim about the relational model, which is just an application of set theory and first-order predicate logic. Fabian Pascal puts it this way:

· a database is a set of axioms;
· the response to a query is a theorem;
· the process of deriving the theorem from the axioms is a proof;
· a proof is made by manipulating symbols according to agreed mathematical rules;

The proof, of course, can only be as sound and consistent as the rules are. That makes the DBMS a deductive logic system: it derives new facts (query results) from a set of user asserted facts (the database). The derived facts are true (query results are correct) if and only if:
· The initial assertions are true
· The derivation rules are logically sound


The sad fact is that none of the above is true of commercial SQL DBMS's. They're just stale technology - because they ignored the math.

No comments: