Is there a global theory for the shapes of fishes? It’s the kind of thing I might feel encouraged to ask by my explorations of simple programs and the forms they produce. But for most of the history of biology, it’s not the kind of thing anyone would ever have asked. With one notable exception: D’Arcy Wentworth Thompson.
And it’s now 100 years since D’Arcy Thompson published the first edition of his magnum opus On Growth and Form—and tried to use ideas from mathematics and physics to discuss global questions of biological growth and form. Probably the most famous pages of his book are the ones about fish shapes:
On August 21, 2017, there’s going to be a total eclipse of the Sun visible on a line across the US. But when exactly will the eclipse occur at a given location? Being able to predict astronomical events has historically been one of the great triumphs of exact science. But in 2017, how well can it actually be done?
The answer, I think, is well enough that even though the edge of totality moves at just over 1000 miles per hour it should be possible to predict when it will arrive at a given location to within perhaps a second. And as a demonstration of this, we’ve created a website to let anyone enter their geo location (or address) and then immediately compute when the eclipse will reach them—as well as generate many pages of other information.
I spend most of my time trying to build the future with science and technology. But for many years now I’ve also had two other great interests: people and history. And today I’m excited to be publishing my first book that builds on these interests. It’s called Idea Makers, and its subtitle is Personal Perspectives on the Lives & Ideas of Some Notable People. It’s based on essays I’ve written over the past decade about a range of people—from ones I’ve personally known (like Richard Feynman and Steve Jobs) to ones who died long before I was born (like Ada Lovelace and Gottfried Leibniz).
The Most-Used Mathematical Algorithm Idea in History
An octillion. A billion billion billion. That’s a fairly conservative estimate of the number of times a cellphone or other device somewhere in the world has generated a bit using a maximum-length linear-feedback shift register sequence. It’s probably the single most-used mathematical algorithm idea in history. And the main originator of this idea was Solomon Golomb, who died on May 1—and whom I knew for 35 years.
Solomon Golomb’s classic book Shift Register Sequences, published in 1967—based on his work in the 1950s—went out of print long ago. But its content lives on in pretty much every modern communications system. Read the specifications for 3G, LTE, Wi-Fi, Bluetooth, or for that matter GPS, and you’ll find mentions of polynomials that determine the shift register sequences these systems use to encode the data they send. Solomon Golomb is the person who figured out how to construct all these polynomials.
He also was in charge when radar was first used to find the distance to Venus, and of working out how to encode images to be sent from Mars. He introduced the world to what he called polyominoes, which later inspired Tetris (“tetromino tennis”). He created and solved countless math and wordplay puzzles. And—as I learned about 20 years ago—he came very close to discovering my all-time-favorite rule 30 cellular automaton all the way back in 1959, the year I was born. Continue reading
Edited transcript of a talk given on March 4, 2016, at the Computer History Museum, Mountain View, California.
I normally spend my time trying to build the future. But I find history really interesting and informative, and I study it quite a lot. Usually it’s other people’s history. But the Computer History Museum asked me to talk today about my own history, and the history of technology I’ve built. So that’s what I’m going to do here. Continue reading
I think it was 1979 when I first met Marvin Minsky, while I was still a teenager working on physics at Caltech. It was a weekend, and I’d arranged to see Richard Feynman to discuss some physics. But Feynman had another visitor that day as well, who didn’t just want to talk about physics, but instead enthusiastically brought up one unexpected topic after another.
That afternoon we were driving through Pasadena, California—and with no apparent concern to the actual process of driving, Feynman’s visitor was energetically pointing out all sorts of things an AI would have to figure if it was to be able to do the driving. I was a bit relieved when we arrived at our destination, but soon the visitor was on to another topic, talking about how brains work, and then saying that as soon as he’d finished his next book he’d be happy to let someone open up his brain and put electrodes inside, if they had a good plan to figure out how it worked.
Feynman often had eccentric visitors, but I was really wondering who this one was. It took a couple more encounters, but then I got to know that eccentric visitor as Marvin Minsky, pioneer of computation and AI—and was pleased to count him as a friend for more than three decades. Continue reading
Ada Lovelace was born 200 years ago today. To some she is a great hero in the history of computing; to others an overestimated minor figure. I’ve been curious for a long time what the real story is. And in preparation for her bicentennial, I decided to try to solve what for me has always been the “mystery of Ada”.
It was much harder than I expected. Historians disagree. The personalities in the story are hard to read. The technology is difficult to understand. The whole story is entwined with the customs of 19th-century British high society. And there’s a surprising amount of misinformation and misinterpretation out there.
But after quite a bit of research—including going to see many original documents—I feel like I’ve finally gotten to know Ada Lovelace, and gotten a grasp on her story. In some ways it’s an ennobling and inspiring story; in some ways it’s frustrating and tragic.
It’s a complex story, and to understand it, we’ll have to start by going over quite a lot of facts and narrative.
A hundred years ago today Albert Einstein published his General Theory of Relativity—a brilliant, elegant theory that has survived a century, and provides the only successful way we have of describing spacetime.
There are plenty of theoretical indications, though, that General Relativity isn’t the end of the story of spacetime. And in fact, much as I like General Relativity as an abstract theory, I’ve come to suspect it may actually have led us on a century-long detour in understanding the true nature of space and time.
I’ve been thinking about the physics of space and time for a little more than 40 years now. At the beginning, as a young theoretical physicist, I mostly just assumed Einstein’s whole mathematical setup of Special and General Relativity—and got on with my work in quantum field theory, cosmology, etc. on that basis.
But about 35 years ago, partly inspired by my experiences in creating technology, I began to think more deeply about fundamental issues in theoretical science—and started on my long journey to go beyond traditional mathematical equations and instead use computation and programs as basic models in science. Quite soon I made the basic discovery that even very simple programs can show immensely complex behavior—and over the years I discovered that all sorts of systems could finally be understood in terms of these kinds of programs.
Encouraged by this success, I then began to wonder if perhaps the things I’d found might be relevant to that ultimate of scientific questions: the fundamental theory of physics. Continue reading
Today is the 200th anniversary of the birth of George Boole. In our modern digital world, we’re always hearing about “Boolean variables”—1 or 0, true or false. And one might think, “What a trivial idea! Why did someone even explicitly need to invent it?” But as is so often the case, there’s a deeper story—for Boolean variables were really just a side effect of an important intellectual advance that George Boole made.
When George Boole came onto the scene, the disciplines of logic and mathematics had developed quite separately for more than 2000 years. And George Boole’s great achievement was to show how to bring them together, through the concept of what’s now called Boolean algebra. And in doing so he effectively created the field of mathematical logic, and set the stage for the long series of developments that led for example to universal computation.
When George Boole invented Boolean algebra, his basic goal was to find a set of mathematical axioms that could reproduce the classical results of logic. His starting point was ordinary algebra, with variables like x and y, and operations like addition and multiplication.
At first, ordinary algebra seems a lot like logic. After all, p and q is the same as q and p, just as p×q = q×p. But if one looks in more detail, there are differences. Like p×p = p2, but p and p is just p. Somewhat confusingly, Boole used the notation of standard algebra, but added special rules to create an axiom system that he then showed could reproduce all the usual results of logic.
Boole was rather informal in the way he described his axiom system. But within a few decades, it had been more precisely formalized, and over the course of the century that followed, a few progressively simpler forms of it were found. And then, as it happens, 16 years ago I ended up finishing this 150-year process, by finding—largely as a side effect of other science I was doing—the provably very simplest possible axiom system for logic, that actually happens to consist of just a single axiom.
“What is this a picture of?” Humans can usually answer such questions instantly, but in the past it’s always seemed out of reach for computers to do this. For nearly 40 years I’ve been sure computers would eventually get there—but I’ve wondered when.
I’ve built systems that give computers all sorts of intelligence, much of it far beyond the human level. And for a long time we’ve been integrating all that intelligence into the Wolfram Language.
Now I’m excited to be able to say that we’ve reached a milestone: there’s finally a function called ImageIdentify built into the Wolfram Language that lets you ask, “What is this a picture of?”—and get an answer.
In a few weeks it’ll be 25 years ago: June 23, 1988—the day Mathematica was launched.
Late the night before we were still duplicating floppy disks and stuffing product boxes. But at noon on June 23 there I was at a conference center in Santa Clara starting up Mathematica in public for the first time:
I’ve been curious about Gottfried Leibniz for years, not least because he seems to have wanted to build something like Mathematica and Wolfram|Alpha, and perhaps A New Kind of Science as well—though three centuries too early. So when I took a trip recently to Germany, I was excited to be able to visit his archive in Hanover.
Leafing through his yellowed (but still robust enough for me to touch) pages of notes, I felt a certain connection—as I tried to imagine what he was thinking when he wrote them, and tried to relate what I saw in them to what we now know after three more centuries:
Richard Crandall liked to call himself a “computationalist”. For though he was trained in physics (and served for many years as a physics professor at Reed College), computation was at the center of his life. He used it in physics, in engineering, in mathematics, in biology… and in technology. He was a pioneer in experimental mathematics, and was associated for many years with Apple and with Steve Jobs, and was proud of having invented “at least 5 algorithms used in the iPhone”. He was also an extremely early adopter of Mathematica, and a well-known figure in the Mathematica community. And when he died just before Christmas at the age of 64 he was hard at work on his latest, rather different, project: an “intellectual biography” of Steve Jobs that I had suggested he call “Scientist to Mr. Jobs”.
I first met Richard Crandall in 1987, when I was developing Mathematica, and he was Chief Scientist at Steve Jobs’s company NeXT. Richard had pioneered using Pascal on Macintoshes to teach scientific computing. But as soon as he saw Mathematica, he immediately adopted it, and for a quarter of a century used it to produce a wonderful range of discoveries and inventions.
He also contributed greatly to Mathematica and its usage. Indeed, even before Mathematica 1.0 in 1988, he insisted on visiting our company to contribute his expertise in numerical evaluation of special functions (his favorites were polylogarithms and zeta-like functions). And then, after the NeXT computer was released, he wrote what may have been the first-ever Mathematica-based app: a “supercalculator” named Gourmet that he said “eats other calculators for breakfast”. A couple of years later he wrote a book entitled Mathematica for the Sciences, that pioneered the use of Mathematica programs as a form of exposition.
Over the years, I interacted with Richard about a great many things. Usually it would start with a “call me” message. And I would get on the phone, never knowing what to expect. And Richard would be talking about his latest result in number theory. Or the latest Apple GPU. Or his models of flu epidemiology. Or the importance of running Mathematica on iOS. Or a new way to multiply very long integers. Or his latest achievements in image processing. Or a way to reconstruct fractal brain geometries. Continue reading
The announcement early yesterday morning of experimental evidence for what’s presumably the Higgs particle brings a certain closure to a story I’ve watched (and sometimes been a part of) for nearly 40 years. In some ways I felt like a teenager again. Hearing about a new particle being discovered. And asking the same questions I would have asked at age 15. “What’s its mass?” “What decay channel?” “What total width?” “How many sigma?” “How many events?”
When I was a teenager in the 1970s, particle physics was my great interest. It felt like I had a personal connection to all those kinds of particles that were listed in the little book of particle properties I used to carry around with me. The pions and kaons and lambda particles and f mesons and so on. At some level, though, the whole picture was a mess. A hundred kinds of particles, with all sorts of detailed properties and relations. But there were theories. The quark model. Regge theory. Gauge theories. S-matrix theory. It wasn’t clear what theory was correct. Some theories seemed shallow and utilitarian; others seemed deep and philosophical. Some were clean but boring. Some seemed contrived. Some were mathematically sophisticated and elegant; others were not.
By the mid-1970s, though, those in the know had pretty much settled on what became the Standard Model. In a sense it was the most vanilla of the choices. It seemed a little contrived, but not very. It involved some somewhat sophisticated mathematics, but not the most elegant or deep mathematics. But it did have at least one notable feature: of all the candidate theories, it was the one that most extensively allowed explicit calculations to be made. They weren’t easy calculations—and in fact it was doing those calculations that got me started having computers to do calculations, and set me on the path that eventually led to Mathematica. But at the time I think the very difficulty of the calculations seemed to me and everyone else to make the theory more satisfying to work with, and more likely to be meaningful. Continue reading
(This is an updated version of what I wrote for Alan Turing’s 98th birthday.)
Today (June 23, 2012) would have been Alan Turing’s 100th birthday—if he had not died in 1954, at the age of 41.
I never met Alan Turing; he died five years before I was born. But somehow I feel I know him well—not least because many of my own intellectual interests have had an almost eerie parallel with his.
And by a strange coincidence, Mathematica’s “birthday” (June 23, 1988) is aligned with Turing’s—so that today is also the celebration of Mathematica‘s 24th birthday.
I think I first heard about Alan Turing when I was about eleven years old, right around the time I saw my first computer. Through a friend of my parents, I had gotten to know a rather eccentric old classics professor, who, knowing my interest in science, mentioned to me this “bright young chap named Turing” whom he had known during the Second World War.
One of the classics professor’s eccentricities was that whenever the word “ultra” came up in a Latin text, he would repeat it over and over again, and make comments about remembering it. At the time, I didn’t think much of it—though I did remember it. Only years later did I realize that “Ultra” was the codename for the British cryptanalysis effort at Bletchley Park during the war. In a very British way, the classics professor wanted to tell me something about it, without breaking any secrets. And presumably it was at Bletchley Park that he had met Alan Turing.
A few years later, I heard scattered mentions of Alan Turing in various British academic circles. I heard that he had done mysterious but important work in breaking German codes during the war. And I heard it claimed that after the war, he had been killed by British Intelligence. At the time, at least some of the British wartime cryptography effort was still secret, including Turing’s role in it. I wondered why. So I asked around, and started hearing that perhaps Turing had invented codes that were still being used. (In reality, the continued secrecy seems to have been intended to prevent it being known that certain codes had been broken—so other countries would continue to use them.)
I’m not sure where I next encountered Alan Turing. Probably it was when I decided to learn all I could about computer science—and saw all sorts of mentions of “Turing machines”. But I have a distinct memory from around 1979 of going to the library, and finding a little book about Alan Turing written by his mother, Sara Turing.
And gradually I built up quite a picture of Alan Turing and his work. And over the 30+ years that have followed, I have kept on running into Alan Turing, often in unexpected places. Continue reading
(This is the second of a series of posts related to next week’s tenth anniversary of A New Kind of Science. The previous post covered developments since the book was published; the next covers its future.)
“You’re destroying the heritage of mathematics back to ancient Greek times!” With great emotion, so said a distinguished mathematical physicist to me just after A New Kind of Science was published ten years ago. I explained that I didn’t write the book to destroy anything, and that actually I’d spent all those years working hard to add what I hoped was an important new chapter to human knowledge. And, by the way—as one might guess from the existence of Mathematica—I personally happen to be quite a fan of the tradition of mathematics.
He went on, though, explaining that surely the main points of the book must be wrong. And if they weren’t wrong, they must have been done before. The conversation went back and forth. I had known this person for years, and the depth of his emotion surprised me. After all, I was the one who had just spent a decade on the book. Why was he the one who was so worked up about it?
And then I realized: this is what a paradigm shift sounds like—up close and personal. Continue reading
After 20 years of research, and nearly 11 years writing the book, I’d taken most things about as far as I could at that time. And so when the book was finished, I mainly launched myself back into technology development. And inspired by my work on the NKS book, I’m happy to say that I’ve had a very fruitful decade (Mathematica reinvented, CDF, Wolfram|Alpha, etc.).
I’ve been doing little bits of NKS-oriented science here and there (notably at our annual Summer School). But mostly I’ve been busy with other things. And so it’s been other people who’ve been having the fun of moving the science of NKS forward. But almost every day I’ll hear about something that’s been being done with NKS. And as we approach the 10-year mark, I’ve been very curious to try to get at least a slightly more systematic view of what’s been going on.
A place to start is the academic literature, where there’s now an average of slightly over one new paper per day published citing the NKS book—with that number steadily increasing. The papers span all kinds of areas (here identified by journal fields):
I’m so sad this evening—as millions are—to hear of Steve Jobs’s death. Scattered over the last quarter century, I learned much from Steve Jobs, and was proud to consider him a friend. And indeed, he contributed in various ways to all three of my major life projects so far: Mathematica, A New Kind of Science and Wolfram|Alpha.
I first met Steve Jobs in 1987, when he was quietly building his first NeXT computer, and I was quietly building the first version of Mathematica. A mutual friend had made the introduction, and Steve Jobs wasted no time in saying that he was planning to make the definitive computer for higher education, and he wanted Mathematica to be part of it. I don’t now remember the details of our first meeting, but at the end of it, Steve gave me his business card, which tonight I found duly still sitting in my files:
The precursors of what we’re trying to do with computable data in Wolfram|Alpha in many ways stretch back to the very dawn of human history—and in fact their development has been fascinatingly tied to the whole progress of civilization.
Last year we invited the leaders of today’s great data repositories to our Wolfram Data Summit—and as a conversation piece we assembled a timeline of the historical development of systematic data and computable knowledge.
The story the timeline tells is a fascinating one: of how, in a multitude of steps, our civilization has systematized more and more areas of knowledge—collected the data associated with them, and gradually made them amenable to automation. Continue reading
A hundred years ago this month the first volume of Whitehead and Russell’s nearly-2000-page monumental work Principia Mathematica was published. A decade in the making, it contained page after page like the one below, devoted to showing how the truths of mathematics could be derived from logic.
Principia Mathematica is inspiring for the obvious effort put into it—and as someone who has spent much of their life engaged in very large intellectual projects, I feel a certain sympathy towards it. Continue reading
Years ago I wondered if it would ever be possible to systematically make human knowledge computable. And today, one year after the official launch of Wolfram|Alpha, I think I can say for sure: it is possible.
It takes a stack of technology and ideas that I’ve been assembling for nearly 30 years. And in many ways it’s a profoundly difficult project. But this year has shown that it is possible.
Wolfram|Alpha is of course a very long-term undertaking. But much has been built, the direction is set, and things are moving with accelerating speed.
Over the past year, we’ve roughly doubled the amount that Wolfram|Alpha knows. We’ve doubled the number of domains it handles, and the number of algorithms it can use. And we’ve actually much more than doubled the amount of raw data in it.
Things seem to be scaling better and better. The more we put into Wolfram|Alpha, the easier it becomes to add still more. We’ve honed both our automated and human processes, progressively building on what Wolfram|Alpha already does.
When we launched Wolfram|Alpha a year ago, about 2/3 of all queries generated a response. Now over 90% do.
So, what are some of the things we’ve learned over the past year? Continue reading
At a first glance, the website looks pretty much as it did when it first launched—with the straightforward input field. But inside that simple exterior an incredible amount has happened. Our development organization has been buzzing with activity all summer. In fact, it’s clear from the metrics that the intensity is steadily rising, with things being added at an ever-increasing rate.
Wolfram|Alpha was always planned to be a very long-term project, and paced accordingly. We pushed very hard to get it launched before the summer so that we could spend the “quiet time” of our first summer steadily enhancing it, before more people start using it more intently in the fall.
Two really great things have happened as a result of actually getting Wolfram|Alpha launched. The first is that we’ve discovered that there’s a huge community of people out there who want to help the mission of Wolfram|Alpha. And we’re steadily ramping up our mechanisms for those people to contribute to the project. Continue reading
May 14, 2009 marks the 7th anniversary of the publication of A New Kind of Science, and it has been my tradition on these anniversaries to write a short report on the progress of NKS.
It has been fascinating over the past few years to watch the progressive absorption of NKS methods and the NKS paradigm into countless different fields. Sometimes there’s visible mention of NKS, though often there is not.
There has been an inexorable growth in the use of the types of models pioneered in NKS. There has been steadily increasing use of the kinds of computational experiments and investigations introduced in NKS. And the NKS way of thinking about computation and in terms of computation has become steadily more widespread. Continue reading
A few times a year they would arrive. Email dispatches from an adventurous explorer in the world of geometry. Sometimes with subject lines like “Phenomenal discoveries!!!” Usually with images attached. And stories of how Russell Towle had just used Mathematica to discover yet another strange and wonderful geometrical object.
Then, this August, another email arrived, this time from Russell Towle’s son: “…last night, my father died in a car accident”.
I first heard from Russell Towle thirteen years ago, when he wrote to me suggesting that Mathematica’s graphics language be extended to have primitives not just for polygons and cubes, but also for “polar zonohedra”.
I do not now recall, but I strongly suspect that at that time I had never heard of zonohedra. But Russell Towle’s letter included some intriguing pictures, and we wrote back encouragingly.
There soon emerged more information. That Russell Towle lived in a hexagonal house of his own design, in a remote part of the Sierra Nevada mountains of California. That he was a fan of Archimedes, and had learned Greek to be able to understand his work better. And that he was not only an independent mathematician, but also a musician and an accomplished local historian. Continue reading
Today is an important anniversary for me and our company.
Twenty years ago today—at noon (Pacific Time) on Thursday, June 23, 1988—Mathematica 1.0 was officially launched.
Much has changed in the world since then, particularly when it comes to computer technology.
But I’m happy to be able to say that Mathematica still seems as modern today as it did back then when it was first released. And if you take almost any Mathematica 1.0 program from 20 years ago, it’ll run without change in the latest Mathematica 6.0 today.
From the beginning, I had planned Mathematica for the long term. I wanted to build a system that could capture the essence of computation, and apply it wherever that became possible.
I spent great effort to get the fundamentals right—and to build the system on principles that would endure.
And looking back over the past two decades it’s satisfying to see how well that has worked out. Continue reading
New technology is often what has driven the creation of new science. And so it has been with Mathematica.
One of the main reasons I originally started building Mathematica was that I wanted to use it myself.
And having Mathematica was a bit like having one of the first telescopes: I could point it somewhere, and immediately see all sorts of new things that had never been seen before.
Much has been discovered with Mathematica in almost every area of science.
But my particular interest has been to create a new kind of science that is uniquely made possible by Mathematica: a science based on exploring the computational universe.
We are used to creating computer programs for particular purposes. But as a matter of basic science we can ask about the universe of all possible programs.
And with Mathematica it becomes easy to explore this.
A quarter of a century ago I had begun my exploration of the computational universe—and had glimpsed some remarkable phenomena.
Then, when Mathematica was built, I went back and started a systematic study of the computational universe.
The results were remarkable. Wherever I looked—even among the simplest of programs—I saw all sorts of complex and interesting behavior. And from what I found I could make progress on a remarkable range of longstanding questions across all sorts of areas.
For eleven years I worked to develop this. And finally, on May 14, 2002, I published what I had done in my book A New Kind of Science.
(This post was originally published on the NKS Forum.)
Last Friday (April 28, 2006) would have been Kurt Gödel’s 100th birthday. I agreed to try to write something about it for publication in a newspaper … which had the dual misfeatures that (a) I had to compress what I was saying and (b) that it didn’t actually get done…
Still, I thought people on the Forum might find my draft interesting … so here it is. Please recognize that this wasn’t polished for final publication…
When Kurt Gödel was born—one hundred years ago today—the field of mathematics seemed almost complete. Two millennia of development had just been codified into a few axioms, from which it seemed one should be able almost mechanically to prove or disprove anything in mathematics—and, perhaps with some extension, in physics too.
Twenty-five years later things were proceeding apace, when at the end of a small academic conference, a quiet but ambitious fresh PhD involved with the Vienna Circle ventured that he had proved a theorem that this whole program must ultimately fail.
In the seventy-five years since then, what became known as Gödel’s theorem has been ascribed almost mystical significance, sowed the seeds for the computer revolution, and meanwhile been practically ignored by working mathematicians—and viewed as irrelevant for broader science.
The ideas behind Gödel’s theorem have, however, yet to run their course. And in fact I believe that today we are poised for a dramatic shift in science and technology for which its principles will be remarkably central.
Gödel’s original work was quite abstruse. He took the axioms of logic and arithmetic, and asked a seemingly paradoxical question: can one prove the statement “this statement is unprovable”? Continue reading
(This post was originally published on the NKS Forum.)
Today (December 28, 2003) would have been John von Neumann’s 100th birthday—if he had not died at age 54 in 1957. I’ve been interested in von Neumann for many years—not least because his work touched on some of my most favorite topics. He is mentioned in 12 separate places in my book—second in number only to Alan Turing, who appears 19 times.
I always feel that one can appreciate people’s work better if one understands the people themselves better. And from talking to many people who knew him, I think I’ve gradually built up a decent picture of John von Neumann as a man.
He would have been fun to meet. He knew a lot, was very quick, always impressed people, and was lively, social and funny. Continue reading