Mind the Gaps
Mathematics and computer science are like neighboring states of the European Union: Each is a sovereign territory with its own language and culture, but the borders between them are open, serving to connect rather than to separate. This simile occured to me as I was traveling to the Heidelberg Laureate Forum, a gathering that brings together distinguished representatives of both communities.
On arrival in Heidelberg I had my first chance to leaf through the program. Glancing at the abstracts of a few talks suggested that the borders between disciplines may be even more porous than my simile would suggest. For example, Leslie Lamport (ACM Turing Award 2013) offers this statement: “Mathematics provides what I believe to be the simplest and most powerful way to describe computer systems.” Furthermore, Lamport clearly holds dual citizenship: He was educated as a mathematician and taught mathematics, but his best-known work is in the theory of concurrency and distributed systems in computation. (Or maybe his best-known work is the LaTeX typesetting system, which brings together the disciplines in a different way, providing computer software for writing mathematics.)
Two more examples: The mathematician Vladimir Voevodsky (Fields Medal 2002) will be speaking on UniMath, a software package he has been developing (along with Benedikt Ahrens and Dan Grayson) for formalizing certain kinds of mathematics. And Len Adleman (Turing Award 2002), will be asking, “What would happen if a bunch of computer scientists who knew (and perhaps still know) next to nothing about complex analysis studied it for a decade?”
While crossing the Atlantic I had also been thinking about another distinction between math and CS. Among academic disciplines, computer science is one of the youngest, and mathematics is one of the oldest. Although origins are hard to pin down, it seems fair to say that computer science is no older than rock and roll; the first university departments were established when Elvis was strutting the stage. Mathematics, in contrast, has roots deep in antiquity, and it was already quite a mature field of study when Mozart was cavorting in Salzburg and Vienna.
Apparently my presuppositions about history are also going to be challenged here at the forum. Sir Antony Hoare (ACM Turing Award 1980) will be arguing that the true origins of computer science stretch back millennia, to Aristotle and Euclid.
In addition to bringing together two disciplines, the forum also brings together two generations. The 26 laureates attending are all senior figures in terms of experience and stature in their field. Many of them are also senior in terms of longevity; the median age of the group is 74.5. Also attending are 200 young investigators, mostly graduate students and postdocs in their 20s. (Having commented on others’ age, I am now obliged to mention my own: I am well above the median of the bloggers and other journalists present here, and perhaps represent an outlier.)
The opportunity to listen in on the conversation between generations is for me the premier attraction of this event. The generation gap seems especially wide in computer science. I have sometimes fretted that the elegant ideas I learned about on my first acquaintance with the field—automata theory, complexity theory, the hierarchy of formal languages, proofs of universality—would get lost in the underbrush as computers and tools for programming them became more powerful and automated, allowing us to hide all the details behind abstraction barriers. A few years ago I heard a young code enthusiast say dismissively, “No one cares much about LR(1) parsers anymore.” But on the bus from Frankfurt to Heidelberg yesterday I overheard a more cheering remark. Several of the young researchers attending the forum were speaking about career paths and challenges. One of them said of a particular job offer: “I would have to go back and spend some time with my undergraduate algorithms and data structures textbooks—and that would be great.”