Many researchers have their own libraries, and The Math Citadel is no different. Both Jason and I have spent many hours buried in the shelves of bookstores new and used, the stacks of university library shelves, and the rows of books in public libraries across four states now. During this time, we've amassed our own collection of new, used, out-of-print, and rare math and engineering texts. We acquired some as part of our formal studies, but most are acquired tangentially and sometimes haphazardly.
We're both very interested in organization and cataloguing in general and we noticed the different methods libraries tend to use to shelve their vast collections, particularly the technical books. Most university libraries we've visited utilize the more modern Library of Congress classification system, while public libraries tend to be a mix of the Dewey Decimal System and the Library of Congress system, varying by library.
What we ultimately realized in our time exploring these shelves is that both of these methods for cataloguing books are insufficient for our needs. One of our biggest desires in a classification system was a way to determine some of the content of the text in a database or card catalogue listing, without necessarily having to pull the book from the shelf (which may be in storage). One other shortcoming we noticed is that neither system accounts for a "continuum-style" classification. As an example, many abstract algebra texts contain chapters on number theory, but some do not. Perhaps two different abstract algebra texts have different focus topics; one may focus more heavily on group theory, while another spends much of its pages discussing advanced matrix theory. The titles do not always reflect this, nor do the classification codes used by either the Dewey Decimal System nor the Library of Congress system.
So, we invented our own. Born of months of discussion and trial, we finally settled on a new one that takes the best aspects of both original systems, and also expands to include additional information. We'll begin by briefly describing the two original classification systems, then describe our new Hathlor system. Our system is customizable to suit anyone's needs, and we're excited to share a passion project of ours.
This system is the one most are familiar with from school libraries. It was created by Melvil Dewey in 1876, and introduced a relative index that allowed for library expansion. Wikipedia has a great account of the history and development of the system, so we'll not dive too deeply here; we'll merely describe it. The system separates books by discipline, ten major classes overall, each divided into ten sections. It's a hierarchical classification system that endeavors to classify a book as specifically as possible by adding classes after the decimal points.
Wikipedia gives an example of a book on Finsler geometry:The LCC was developed by the Library of Congress, and is the most common system deployed in academic and research libraries in the United States. Herbert Putnam invented the system in 1897. For additional history, check here. This system has a larger number of broad classes, and uses letters to denote general classes and narrower topics. There are 21 broad classes, using all letters of the alphabet excepting I, O, W, X, and Y. Each broad class is divided into subclasses, though the number of subclasses may vary. For example, Class B (Philosophy, Psychology, and Religion) is divided into 15 subclasses, one of which is BV-Practical Theology. Class Q (Science) is divided into 12 subclasses, one of which is QA-Mathematics.
Underneath these broad classes is a narrower topic of 4 digits, then a cutter number that represents the author, corporation, or title, and finally the last line notes the year of publication.
As an example, from the University of Mississippi library:HF 5415 .G67 1939
We thoroughly dislike this system for a number of reasons. The primary concern is that looking at the call number on the spine of the book tells very little useful information, and gives some information that is irrelevant to evaluation of the content, such as the cutter number and publication year. It also shares the same issue as the Dewey Decimal system in that multiple subjects contained in a text are lost by forcing the text into one class.
In both of these systems, it's difficult to determine where some more multidisciplinary or multi-topic texts might be found without knowing the exact name of the text. It would be impossible to use either of these systems to locate some text that discusses graph theory and algorithms, but also mentions applications to chemistry. It is with this motivation that we devised our new system.
Subject | Code |
---|---|
Chemistry | C |
Computer Science | CS |
Engineering | E |
Mathematics | M |
Physics | P |
Topic | Code |
---|---|
Applied and Engineering Mathematics | AEM |
Algebra | ALG |
Analysis | ANA |
Differential and Integral Equations | DIE |
Discrete Mathematics | DSC |
Fundamentals | FUN |
Geometry | GEO |
History of Mathematics | HIST |
Number Theory | NUT |
Probability | PRB |
Recreational Mathematics | REC |
Rudimentary Mathematics | RUD |
Statistics | STS |
Topology | TOP |
Finally, within eachTopic are a varying number of Subtopics. Texts can contain many Subtopics, and in the spirit of the MAC address, we give a variable length binary code that indicates whichSubtopics are contained. For example, theTopic ofFundamentals contains fourSubtopics: Calculus in bit 1, Logic in bit 2, Set Theory in bit 3, and Trigonometry in bit 4.
A general code will look like this: Subject - Topic.XXXX where the single-letter subject code is given, the three letter topic code is given, and the X is an indicator of whether or not a particular subtopic is contained in the work. Note that the number of X's may vary by topic.Example: Strang's Linear Algebra and its Applications is a basic linear algebra text covering fundamental matrix theory, Gaussian elimination, linear systems, orthogonal projections, determinants, eigenvalues and eigenvectors, and positive-definite matrices. Subtopics in Algebra areAbstract Algebra, Category Theory, Linear Algebra,andMatrix Theory, in that order (alphabetically).
To code this book, we note that its subject isMathematics, with topicAlgebra, and containing linear algebra and matrix theory, but notAbstract Algebra,or Category Theory. Thus, the Hathlor code for the book is M-ALG.0011
Many texts in mathematics contain material that spans topics. Our codes reflect this, and may be extended to include those additional topics in descending order of importance or inclusion to the work, separating theTopic.Subtopic codes by a colon. One may do this as many times as necessary to encapsulate all appropriate topics. Thus, we see that now the code may take the form of
Subject-PrimaryTopic.XXXX:SecondaryTopic.XX:...As mentioned before, we felt that the current systems in use both omit useful information regarding the content of the works and add extra information a user doesn't typically care about, such as the LCC's cutter number. In addition, a researcher or browser may simply have a general idea of the types of things he would like a text to contain, but neither the DDC nor the LCC provides a simple way to search for such things. Ours provides a way to search via a simple regular expression query, returning a set of texts previously unknown to the user that fit the subjects, topics, and subtopics he seeks, particularly books that contain all he seeks.
Though neither of us have formally worked in a library, nor do either of us hold any formal degrees in library science, we both have a deep and abiding passion for reading, mathematics, organization, and classification. Beyond that, our collection now spans over 220 books, so we definitely needed a better way to shelve our library. We both think it's a pity that very few technical libraries outside of universities exist anymore, particularly in the private sector. Company libraries for engineers and scientists such as the (highly underrated and unknown) library at NASA Ames Research Center should be cared for, revitalized, and restarted.