[ Jocelyn Ireson-Paine's Home Page | Publications | Dobbs Code Talk Index | Dobbs Blog Version ]

One Sum He's Owed, By Any Road

I was seeking a way to explain why programmers should study the category-theoretic concept of "colimit". Answer: colimits have simple properties, well understood by mathematicians, that can model "glueing together" programs and "glueing together" data. Database joins are colimits. (By the way, Wiktionary says "glueing" is an obsolete spelling. Wiktionary is wrong.) In cognitive science, colimits may help us understand how the brain glues together perceptions. But why, in general, is it useful to model things mathematically, and how can you justify this to non-mathematicians? Here's an example of what happens when you don't understand the maths. It's from Carl E. Linderholm's book Mathematics Made Difficult .


Addition, like mathematics, occurs on various cultural levels. A perfect example is provided by a certain meal in a restaurant in Athens. The diners at the table near the back are mathematicians. According to the custom of the place, when they have finished the waiter asks them what they have had, takes down the items on his pad at dictation, affixing the prices, and adds up. At that point, for some reason, one of the mathematicians remembers — "Oh, yes. And besides all that, I also had a beer." In such an eventuality, even in Athens, a waiter will commonly add the price of one beer to the sum already obtained and present the corrected bill. This waiter, instead, tore up the incorrect bill and added up the whole meal again with the extra beer included. When the diners explained what was the more usual procedure in such cases, and suggested that it also produced the correct sum, the man in question admitted that that might theoretically be as they said. But he still stuck fast to his own method. "I have a restaurant to run; I am not a philosopher."