Physical bookshelves may be described as a fixed partitioned set
S = {S1,S2, ... , Sn}
where the Si
are the fixed physical shelves defined by their length and height.
A collection of books may likewise be described as
B = {B1,B2, ... , Bm}
where now the Bj are components of a partition of the books into
categories; fiction, poetry, psychogeography, chess etc. This
partition is poorly defined as a given book may belong to more than
one category: so, does Offa and the Mercian Wars belong to
biography, or geography, or history, or politics? And as for Pond Life.
The whole scheme is ad hoc and pays no heed to
Melvil
Dewey at all. That's probably a mistake.
Anyway, the problem becomes that of finding an allocation A of the
Bj
to the
Si
in a manner that is coherent and pleasing. And so that you can
actually retrieve a book that you are certain you own, but cannot
find. This can be tricky and is probably a highly specialised variant
of the well-known
knapsack problem.
So when you have a solution, you cling on tight to it, even if Offa's Pond Life.
is confusingly located.
The problem is that the book set is dynamic, so properly, B = B(t): usually, the bookset grows, with occasional small contractions as you realise that you're better off not caught with certain volumes. but on the whole, B and Bj have monotonic increasing cardinality.
Then from time to time, as shelves fill, A stops being viable. When this happens, we need a new allocation A', or - more seriously - a redefintion of the Bj, or - very seriously - the aquisition of new components to S;
Sn+1, Sn+2,....
This happened today.