|
|
www.btinternet.com/~adrian.larner/index |
|
ADRIAN LARNER HOME PAGE |
||
|
|
||
|
THE HOME PAGE |
The Home Page of Adrian Larner’s Website,
|
|
|
Database Theory with radical proposals for a simplification of Relational Theory and a new interpretation of database records |
||
|
Formal logic (and some informal) mostly concerned with modal logics and their interpretation and proof by truth tables |
||
|
Various topics in Data Processing (including Computing and Information Systems Teaching, and odd bits of Mathematics and Philosophy) |
||
|
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): |
|
|
|
||
|
|
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. |
|
|
|
||
|
Whats to be found at this website? |
|
|
|
|
As well as
THIS HOME PAGE
... |
|
|
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. |
||
|
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. |
||
|
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. |
||
|
This covers everything else; but there isnt 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 |
|
|
|
||
|
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 |
|
|
Formal logic (and some informal) |
||
|
Various topics in Data Processing (with Computing and IS Teaching) |
||
|
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 Codds 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 IBMs 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 Codds 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 Codds 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: Ive got the Latin. See Stevie Smiths 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 Whats in a Name? I have avoided the perils and complexities of set theory by employing Nelson Goodmans 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 Spots 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 ( |
|
|
|
||
|
|
||
|
ADRIAN LARNER Miscellaneous |
|
|
|
||
|
The Home Page of Adrian Larner’s Website |
||
|
Database Theory simplification and interpretation |
||
|
Formal logic (and some informal) |
||
|
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:
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, Ive 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 Ive done it. CONSTRAINTS: Ive used only a very limited range of fonts: Times New Roman, Arial, Courier New, and (where needed) Symbol. For colours, Ive 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 ...
|
|
|
The Home Page of Adrian Larner’s Website |
||
|
Database Theory simplification and interpretation |
||
|
Formal logic (and some informal) |
||
|
Various topics in Data Processing (with Computing and IS Teaching) |
||
|
including technical and design notes on the website |
||
|
|
Or sample the reviews of books, originally written for The Computer Journal. |
|
|
|
||