June 1, 1996
You have been working on a book about science for some time. Can you sketch some of your ideas? Are there implications for symbolic computation and symbolic computation systems?
Well, that’s a whole other discussion. What I’m trying to do is a pretty big thing: I’m trying to build a whole new way of thinking about science. If you look at most of science for the past three hundred or so years, there’s been a common theme all the way through: that nature should be somehow or another be described by mathematical equations. The idea worked so well for people like Newton that I guess everyone’s been trying to do the same thing ever since. Well, the problem is that in a lot of areas mathematical equations haven’t ended up working—it’s been pretty much of a flop in areas like biology, for instance. So what I’ve been interested in for a long time is whether there is an alternative that one can find. And what I realized about 15 years ago is that yes, there is. Instead of using equations, one can use programs. The universe presumably follows some kind of definite rules. But why should those rules involve just things like integrals and derivatives—the kinds of constructs invented in human mathematics? Why not more general logical constructs—like the ones that we’re now familiar with in computer programs?
Well, thinking about that raises a very fundamental question: what do simple computer programs actually typically do? Usually we build programs to perform specific tasks. But what if we just started building programs at random? How would they behave? I started answering this question in the early eighties, with cellular automata. And I found some pretty surprising things. But what I’ve been doing the last few years is to try to really build a systematic science out of it all. It’s really fun—I guess it must be a bit like what happened a few hundred years ago when people first did the obvious physics experiments. I’m doing the obvious computer experiments. And the things I’m discovering are really interesting. In fact, I guess I keep on discovering such interesting stuff that I don’t feel ready to finish my book. But hopefully I’ll get it done before too long, and then other people will be able to get involved—which will be good.
You ask how what I’m doing might be relevant to symbolic computation. Well, I think I’ve discovered some things which will really change people’s view of what the process of computing is all about. But it’s a long story; another time.
How does it all relate to Mathematica? Well, it’s pretty straightforward—Mathematica is what’s allowed me to do the science I’m doing. I planned it this way—but it’s extremely satisfying to see that it’s really worked out. And in the long term I suspect that the science I’m doing could never have been discovered if I hadn’t taken all the time and effort it’s taken to build Mathematica.