Surprise! Mathematica 7.0 Released Today!

In the middle of last year, we finished our decade-long project to reinvent Mathematica, and we released Mathematica 6.

We introduced a great many highly visible innovations in Mathematica 6—like dynamic interactivity and computable data. But we were also building a quite unprecedented platform for developing software.

And even long before Mathematica 6 was released, we were already working on versions of Mathematica well beyond 6.

And something remarkable was happening. There’d been all sorts of areas we’d talked about someday being in Mathematica. But they’d always seemed far off.

Well, now, suddenly, lots of them seemed like they were within reach. It seemed as if everything we’d built into Mathematica was coming together to make a huge number of new things possible.

All over our company, efforts were starting up to build remarkable things.

It was crucial that over the years, we’d invested a huge amount in creating long-term systems for organizing our software development efforts. So we were able to take those remarkable things that were being built, and flow them into Mathematica.

And at some point, we realized we just couldn’t wait any longer. Even though Mathematica 6 had come out only last year, we had assembled so much new functionality that we just had to release Mathematica 7.

So 18 months after the release of Mathematica 6, I’m happy to be able to announce that today Mathematica 7 is released!

Wolfram Mathematica 7
Continue reading

Russell Towle: 1949–2008

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

Mathematica Turns 20 Today

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.

ut 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

Ten Thousand Hours of Design Reviews

It’s not easy to make a big software system that really fits together. It’s incredibly important, though. Because it’s what makes the whole system more than just the sum of its parts. It’s what gives the system limitless possibilities—rather than just a bunch of specific features.

But it’s hard to achieve. It requires maintaining consistency and coherence across every area, over the course of many years. But I think it’s something we’ve been very successful at doing with Mathematica. And I think it’s actually one of the most crucial assets for the long-term future of Mathematica.

It’s also a part of things that I personally am deeply involved in.

Ever since we started developing it more than 21 years ago, I’ve been the chief architect and chief designer of Mathematica‘s core functionality. And particularly for Mathematica 6, there was a huge amount of design to do. Actually, I think much more even than for Mathematica 1.

In fact, I just realized that over the course of the decade during which were developing Mathematica 6—and accelerating greatly towards the end—I spent altogether about 10,000 hours doing what we call “design reviews” for Mathematica 6, trying to make all those new functions and pieces of functionality in Mathematica 6 be as clean and simple as possible, and all fit together.

At least the way I do it, doing software design is a lot like doing fundamental science.

In fundamental science, one starts from a bunch of phenomena, and then one tries to drill down to find out what’s underneath them—to try to find the root causes, the ultimate primitives, of what’s going on.

Well, in software design, one starts from a bunch of functionality, and then one needs to drill down to find out just what ultimate primitives one needs to support them.

In science, if one does a good job at finding the primitives, then one can have a very broad theory that covers not just the phenomena one started from, but lots of others too.

And in software design, it’s the same kind of thing.

If one does a good job at finding the primitives, then one can build a very broad system that gives one not just the functionality one was first thinking about, but lots more too.
Continue reading

Mathematics, Mathematica and Certainty

Not a lot gets written in the general press about foundational issues in mathematics, but this afternoon I found myself talking to a journalist about the subject of certainty in mathematics.

It turned out to be a pretty interesting conversation, so I thought I’d write here about a few things that came up.

Mathematics likes to think of itself as a very certainty-based business. If you’ve “proved something mathematically”, then it’s supposed to just be true. No ifs or buts. Complete certainty.

But in practice that’s not quite how it works—at least the way mathematics has traditionally been done. Because in reality a mathematical proof of the kind people publish in papers is something much more social. It’s a vehicle for convincing other humans—one’s fellow mathematicians—that something is true.

There’ve been a few million mathematical proofs published over the past century or so. Essentially all of them are written in a kind of human-compatible mixture of mathematical formalism and ordinary natural language.

They’re intended for human consumption. For people to read, and process. The best of them aren’t just arguments for some particular theorem. Instead they’re expositions that illuminate some whole mathematical structure.

But inevitably they require effort to read. It’s not just a mechanical matter. Instead, every reader of every proof has to somehow map what the proof is saying into their particular patterns of thought. So that they can personally be convinced that the proof is true.

And of course, in practice, proofs written by humans have bugs. Somewhere between the imprecision of ordinary language, and the difficulty of really thinking through every possible eventuality, it’s almost inevitable that any long proof that’s been published isn’t perfect. And even with an army of people to check it, not every bug will be found.

So how do computers—and Mathematica change this picture?

Continue reading

Simple Turing Machines, Universality, Encodings, etc.

(This post was originally posted on the NKS Forum.)

The following are some remarks that I made on the Foundations of Math (FOM) mailing list in connection with discussion of the Wolfram 2,3 Turing Machine Prize. Though much of what I say is well understood in the NKS community, I thought it might nevertheless be of interest here.


Several people forwarded me the thread on this mailing list about our 2,3 Turing machine prize.

I’m glad to see that it has stimulated discussion. Perhaps I can make a few general remarks.

What do we learn from simple universal Turing machines?

John McCarthy wrote:

In the 1950s I thought that the smallest possible (symbol-state product) universal Turing machine would tell something about the nature of computation. Unfortunately, it didn’t.

I suspect that what was imagined at that time was that by finding the smallest universal machines one would discover some “spark of computation”—some critical ingredient in the rules necessary to make universal computation possible. (At the time, it probably also still seemed that there might be a “spark of life” or a “spark of intelligence” that could be found in systems.)

I remember that when I first heard about universality in the Game of Life in the early 1970s, I didn’t think it particularly significant; it seemed like just a clever hack.

But a few decades later—after building up the whole framework in A New Kind of Science, I have a quite different view. Continue reading

The Prize Is Won; The Simplest Universal Turing Machine Is Proved

(Main prize page: The Wolfram 2,3 Turing Machine Research Prize)

“And although it will no doubt be very difficult to prove, it seems likely that this Turing machine will in the end turn out to be universal.”

So I wrote on page 709 of A New Kind of Science (NKS).

I had searched the computational universe for the simplest possible universal Turing machine. And I had found a candidate—that my intuition told me was likely to be universal. But I was not sure.

And so as part of commemorating the fifth anniversary of A New Kind of Science on May 14 this year, we announced a $25,000 prize for determining whether or not that Turing machine is in fact universal.

I had no idea how long it would take before the prize was won. A month? A year? A decade? A century? Perhaps the question was even formally undecidable (say from the usual axioms of mathematics).

But today I am thrilled to be able to announce that after only five months the prize is won—and we have the answer: the Turing machine is in fact universal!

Alex Smith—a 20-year-old undergraduate from Birmingham, UK—has produced a 40-page proof.

I’m pleased that my intuition was correct. But more importantly, we now have another piece of evidence for the very general Principle of Computational Equivalence (PCE) that I introduced in A New Kind of Science.

We are also at the end of a quest that has spanned more than half a century to find the very simplest universal Turing machine.

Here it is. Just two states and three colors. And able to do any computation that can be done.

2, 3 Turing machine Continue reading

My Hobby: Hunting for Our Universe

Note: The ideas here have now been developed much further in the Wolfram Physics Project.
See the announcement: Finally We May Have a Path to the Fundamental Theory of Physics… and It’s Beautiful (April 14, 2020)

I don’t have much time for hobbies these days, but occasionally I get to indulge a bit. A few days ago I did a videoconference talking about one of my favorite hobbies: hunting for the fundamental laws of physics.

Physics was my first field (in fact, I became a card-carrying physicist when I was a teenager). And as it happens, the talk I just gave (for the European Network on Random Geometry) was organized by one of my old physics collaborators.

Physicists often like to think that they’re dealing with the most fundamental kinds of questions in science. But actually, what I realized back in 1981 or so is that there’s a whole layer underneath.

There’s not just our own physical universe to think about, but the whole universe of possible universes.

If one’s going to do theoretical science, one had better be dealing with some kind of definite rules. But the question is: what rules?

Nowadays we have a great way to parametrize possible rules: as possible computer programs. And I’ve built a whole science out of studying the universe of possible programs—and have discovered that even very simple ones can generate all sorts of rich and complex behavior.

Well, that’s turned out to be relevant in modeling all sorts of systems in the physical and biological and social sciences, and in discovering interesting technology, and so on.

But here’s my big hobby question: what about our physical universe? Could it be operating according to one of these simple rules? Continue reading

The Space of All Possible Bridge Shapes

When I hear about something like Wednesday’s bridge collapse, I immediately wonder whether any of the science I’ve worked on can be of any help.

Bridge design is one of the classic—almost iconic—successes of traditional mathematical science.

And when I first talked about A New Kind of Science, a not uncommon reaction was precisely, “But can it help build better bridges?”

Well, as a matter of fact, I rather suspect it can.

Bridges have a long history. Early on, only a few types seem to have been used. But with the arrival of iron structures in the 1800s there was a kind of “Cambrian explosion” of different types of truss bridges:

Bridge structures

But what is the very best bridge structure, say from the point of view of robustness? There’s a huge universe of possibilities. But so far, only a tiny corner has been explored—and that mostly in the 1800s. Continue reading