www.btinternet.com/~adrian.larner/index

 ADRIAN LARNER

 HOME PAGE

 Latest News

 

THE HOME PAGE

The Home Page of Adrian Larner’s Website,
with brief CV, introduction, and summaries of major topics

Database

Database Theory with radical proposals for a simplification of Relational Theory and a new interpretation of database records

Logic

Formal logic (and some informal) mostly concerned with modal logics and their interpretation and proof by truth tables

Data Processing

Various topics in Data Processing (including Computing and Information Systems Teaching, and odd bits of Mathematics and Philosophy)

Miscellaneous

All the material that does not fit anywhere else (proving it possible to devise a complete classification scheme for anything*)

 

 

* “A complete classification scheme” (See “Miscellaneous”, above):
Once a hot topic in metaphysics, whether it was possible to devise a scheme of “types” or “classes” such that any existent would fall into at least one of them. The logician AM Prior, quoting CI Lewis, gave a characteristically simple positive solution: let one of the classifications be “Miscellaneous”. This website is not guaranteed free of philosophical jokes.

 

 

On this Home Page ...

 

A Brief Curriculum Vitae

 

 

Adrian Larner was educated at Great Yarmouth Grammar School and King's College and King's College Hospital, University of London, graduating MB BS in 1968. Between 1969 and 1993 he worked as a Systems Engineer – eventually Consultant Systems Engineer – for IBM United Kingdom Limited. His work for IBM covered a variety of technical roles, but was principally in software development. His analysis and design of the IBM Query.DL/I Program Products led him into Database Theory. In 1993 he joined De Montfort University, Leicester as a teacher in the Information Systems Department.

 

The News

 

 

I began the construction of this website while on extended sick leave from De Montfort University (and it is by no means complete at first publication, May 2001). Its purpose is to publish those parts of my work – in Database Theory, in Formal Logic, and (more generally) in Data Processing – that are not readily available to friends, colleagues, and students; and to keep me from idleness when I can achieve little else. Rather than constantly be updating this home page, I have put the news – about the site and about me – on the Latest News page.

 

Contacting Adrian Larner

 

 

Please send e-mail arising from this website to adrian.larner@btinternet.com and (where appropriate) I will attempt to reply. However, I must ask correspondents to forgive me if a reply is delayed or unforthcoming. If you e-mail comments to me, I shall feel free to quote and attribute them at this website, unless – of course – you explicitly state the contrary. IMPORTANT: Would friends and colleagues please use my alternative e-mail id for other matters, NOT that given above.

 

What’s to be found at this website?

 

 

As well as THIS HOME PAGE ...
 

Database

It was firstly application software writing, and secondly the analysis and design of the IBM Query.DL/I program products, that led me into the practice and the theory of database. I have assembled at this site a number of papers, mostly unpublished or of previously limited circulation. My main proposals in database theory are briefly explained on a fragment of this page (below), and more fully expounded on The Database Page.

I have also re-published some reviews of database books, originally written for The Computer Journal.
 

Logic

An even earlier love than database theory: my special interest is modal logic (the logic of “may”, “must”, etc.i.e. of possibility and necessity). See The Logic Page.
 

Data Processing

This covers a wide variety of material, gleaned from 24 years’ practice at IBM and 8 years’ teaching at De Montfort University, Leicester and Milton Keynes. Once more: a fuller description at The Data Processing Page

I have also re-published some reviews of books, originally written for The Computer Journal.
 

Miscellaneous

This covers everything else; but there isn’t a miscellaneous page, just a “fragment”, below.

 

The following notice of copyright pertains to all materials on this website, except where specifically excluded.

Copyright © 2001 Adrian Larner. The author, identified as Adrian Larner, asserts all moral rights. Subject to the asserted moral rights, the author grants pro tem unrestricted permission for non-commercial copying of all materials on this site for academic purposes.

The decorative image of a key (cc004239.gif) used on pages in this website was obtained from IMSI's MasterClips/MasterPhotos© Collection, 1895 Francisco Blvd East, San Rafael, CA 94901-5506, USA.

 

 

 ADRIAN LARNER

 Database

 Latest News

 

The Home Page

The Home Page of Adrian Larner’s Website

DATABASE

Database Theory with radical proposals for a simplification of Relational Theory and a new interpretation of database records

Logic

Formal logic (and some informal)

Data Processing

Various topics in Data Processing (with Computing and IS Teaching)

Miscellaneous

including technical and design notes on the website

 

 

DATABASE ...

 

Introduction

 

 

During my career in data processing there has been a revolution in database technology, led by EF Codd’s proposal of the Relational Model of Data. However, the nature of this revolution has been widely misunderstood, even by Codd. It was to a large extent a reaction to IBM’s hierarchical Information Management System (IMS). Codd was right that IMS was overcomplex (in part, because it did not clearly separate specification and implementation, and because it had no theory of hierarchical data); but he was wrong about IMS too. Users (which meant programs as well as human users in those days) do not, in general, want their data in rectangular tables; they often want it in hierarchies (of which rectangular tables are a limiting case). But Codd's appeal to “how the user wishes to view the data” was in any event mistaken; users might wish to take all sorts of view; what was important was the structure in which the data was specified.

Program/data independence – which is what databases are all about, in contrast to mere data stores – covers more than data structure: it covers access, sequence, and data representation (as Codd knew well). But structure is the tough one: we can specify our data without mentioning access, sequence, and representation (the last by using abstract data types); but we cannot specify our data unstructured. It was while analysing hierarchical data in order to create and extend the IBM Query.DL/I program products (through several years in the 1980s) that I came to see that it was possible to specify a structure that was theoretically simpler than Codd’s Relation (a set of ordered sets of values, or in the later version of the theory a set of sets of attribute/value pairs), and to use this simpler structure to express hierarchies, and even more complex configurations of data.

Such ideas have never been fashionable. In the early days, writing Query.DL/I to extend the life of IMS databases did not please the relational camp; and they must have thought me a slippery customer: instead of arguing for the power of IMS, like a good hierarchical bigot, or arguing for the simplicity of Codd’s approach, like a good relational bigot, I was claiming that the relational model was structurally too complex and belatedly proposing a theory that covered hierarchical data. Nowadays, when most theoreticians seem inclined to make the relational approach more complex in order to obtain some of the power of object orientation (another approach without a theory!) my arguments for a move in the opposite direction remain as unfashionable as ever.

I leave my readers, if such there be, to judge for themselves. Magna est veritas et praevalebit: Great is truth and will prevail in a bit, I keep telling myself.

(Yes, I know: I’ve got the Latin. See Stevie Smith’s “Magna est Veritas”, conveniently available in The New Penguin Book of English Verse, 2000.)

 

Foundations

 

 

My proposals of new theories of data arise, as I have said, from the practical challenges of package software development; but their nature has been heavily influenced by Nominalistic theories in Philosophical Logic. See “What’s in a Name?

I have avoided the perils and complexities of set theory by employing Nelson Goodman’s Calculus of Individuals or Mereology (the science of wholes and parts) as an aggregation mechanism, and, following PT Geach, I have avoided absolute, in favour of relative, identity. Again, I leave it to the reader to judge the effects.

 

The Proposals

 

 

DATABASE STRUCTURE: Instead of the three-level structure of the Relational Model – table, row, and “cell” or field (attribute/value pair) – a two-level structure of record and field is proposed, a field being merely an atomic record, and a record a mere aggregate of fields. Also proposed are commonly named records (effectively, records in the same table) of different formats, (i.e. abandonment of union compatibility), and non-flat records (records with two or more occurrences of the same type of field – multiple values of the same attribute). Normality, however, i.e. atomicity of fields, is imposed. See A New Model of Data.

INTERPRETATION: The “classical” interpretation of data, originally (it seems) intended by EF Codd and now espoused by Date and Darwen, is that a row in a table is to be construed as a proposition (a true or false sentence) formed from the predicate (an open sentence) represented by the table: this is achieved by filling each place in the predicate (represented by a column) with the value at the row/column intersection, which is construed as a proper name. An alternative, and more popular, interpretation – following PP Chen – is that of the table as an entity (or relationship) type, and its rows as instances.

Both of these interpretations are rejected: the entity(/relationship) interpretation because it fails to give any meaning to data manipulations, and consequently to views; the classical because of a number of problems, but specifically because it leads to join traps. An alternative, “EPI”, interpretation is proposed: it is similar to the classical in construing records (rows) as open sentences; but these open sentences are not predicates: their places take not proper but common names. Under the EPI interpretation a record is construed as a proposition that asserts the existence of one or more things, predicates something of them (typically a relationship when more than one thing is involved), and gives them a name for each attribute (the name corresponding to an equivalence group). See A New Interpretation of Data.

NULLS: The EPI interpretation construes each attribute (column, field type) as an equivalence relationship. Such relationships, e.g. “.is the same breed as”, are symmetric and transitive. (I.e. if Rover is the same breed as Fido then Fido is the same breed as Rover; if Rover is the same breed as Fido, and Fido is the same breed as Blackie, then Rover is the same breed as Blackie.) They are therefore reflexive in their field, i.e. if Rover is the same breed as anything then Rover is the same breed as Rover. Not everything, however, comes in the “field” of the relationship: Spot, for instance (and for all his other canine merits), is not the same breed as anything, not even as himself. In Spot’s DOG record, therefore, the value of the BREED attribute – say m – is an improper value: “m = m” comes out false (reading “=” in context as “is the same breed value as”). There is, of course, nothing to stop us having another equivalence relationship, say “=”, such that “m =  m” comes out true. It is proposed, as a minor adjustment to the EPI interpretation, that a value is null when it is improper in its column, i.e. not in the field of the equivalence relationship associated with its column.

OBJECT ORIENTATION: An unfortunate package deal: Object Orientation (OO) comprises some notions that are (like abstract data typing) true but not new, and others (like subtyping of objects) that are new but not true. In any event, and irrespective of its (de)merits as a method of programming or even (worse!) of analysis and design, OO is incompatible with database: the latter demands separation of data and process ( loose binding of them via views) in order to achieve data structure independence, but an object comprises tightly bound data (state) and process (behaviour). See A Review of Dogac et al. (Eds) Advances in Object-Oriented Database Systems.

 

 

 ADRIAN LARNER

 Miscellaneous

 Latest News

 

The Home Page

The Home Page of Adrian Larner’s Website

Database

Database Theory – simplification and interpretation

Logic

Formal logic (and some informal)

Data Processing

Various topics in Data Processing (with Computing and IS Teaching)

MISCELLANEOUS

including technical and design notes on the website

 

 

MISCELLANEOUS ...

 

Technical and Design Notes

 

 

This was my first attempt to create a website. I have used two books, both quite good of their kind:

Ned Snell: Teach Yourself to Create Web Pages in 24 Hours, Sams
 
Jennifer Niederst: Web Design in a Nutshell, O’Reilly
(Some nutshell: 560 pages)
I have worked with Internet Explorer and the free (so early) version of Netscape: the more back-level the better when one is developing. (Think about it!)

I have discovered that Explorer does not handle nested tables, and (after a long struggle) that Netscape totally ignores column definitions: it discovers – or fails to discover – the column widths from the first row specification. So all table entries in the first row should have COLSPAN=1.

After some initial investigation, I’ve written naked HTML using Wordpad. One can create web pages with Word for Windows, but there is a massive space overhead and who knows what incompatibilities there might be between the stuff that Word creates and back-level Explorer, Netscape, etc? At least one has control the way I’ve done it.

CONSTRAINTS: I’ve used only a very limited range of fonts: Times New Roman, Arial, Courier New, and (where needed) Symbol. For colours, I’ve stuck to the Web Palette. (The Niederst book has quite a good discussion of Colours.)

DESIGN: In general, the common look-and-feel of the pages has been achieved by shape: the same 3-column table is used for all pages; they all have the key symbol and striped router and main headers at the beginning of each fragment (and clicking on the key displays the next fragment). Colour has been used to distinguish pages and fragments. Because my control of colour has overridden the web convention on link coloration (standardly blue until traversed), I have invariably left the underscoring of text links in place, and almost never used underscoring for any other purpose.

THE GOLDEN RATIO: The relative widths of the columns of the table used for all pages have been obtained by dividing the page width (i.e. 100%) in golden ratio: 38% and 62%. The former has been divided again in the same ratio: 24% and 14%. This is supposedly aesthetically satisfying. See the paper on The Golden Ratio.

 

 

 ADRIAN LARNER

 At this website ...

 Latest News

 

The Home Page

The Home Page of Adrian Larner’s Website

Database

Database Theory – simplification and interpretation

Logic

Formal logic (and some informal)

Data Processing

Various topics in Data Processing (with Computing and IS Teaching)

Miscellaneous

including technical and design notes on the website

May 2001

Or sample the reviews of books, originally written for The Computer Journal.