How We Got Here: The Backstory of the Wolfram Physics Project

The Wolfram Physics Project


I’ve been saying it for decades: “Someday I’m going to mount a serious effort to find the fundamental theory of physics.” Well, I’m thrilled that today “someday” has come, and we’re launching the Wolfram Physics Project. And getting ready to launch this project over the past few months might be the single most intellectually exciting time I’ve ever had. So many things I’d wondered about for so long getting solved. So many exciting moments of “Surely it can’t be that simple?” And the dawning realization, “Oh my gosh, it’s actually going to work!”

Physics was my first great intellectual passion. And I got started young, publishing my first paper when I was 15. I was lucky enough to be involved in physics in one of its golden ages, in the late 1970s. Not that I was trying to find a fundamental theory of physics back then. Like essentially all physicists, I spent my time on the hard work of figuring out the consequences of the theories we already had.

But doing that got me progressively more involved with computers. And then I realized: computation is its own paradigm. There’s a whole way of thinking about the world using the idea of computation. And it’s very powerful, and fundamental. Maybe even more fundamental than physics can ever be. And so it was that I left physics, and began to explore the computational universe: in a sense the universe of all possible universes.

This essay is also in:
SoundCloud »

That was forty years ago, and much has happened since then. My science led me to develop technology. The technology led me to more science. I did big science projects. I did big technology projects. And between the science and the technology, I felt like I was gradually building a tower that let me see and do more and more.

I never forgot physics, though. And as I studied the computational universe I couldn’t help wondering whether maybe somewhere, out in this abstract computational world, might be our physical universe, just waiting to be discovered. Thirty years ago I had my first idea about how this might work. And over the decade that followed I figured out quite a bit—found some encouraging signs—and eventually started to tell the world about it.

I kept on thinking about really pushing it further. I’d talk about it when I could, sometimes in very public venues. But I was off doing other, very satisfying things. It so happened that technology I’d built became very widely used by physicists. But to most of the physics community I was basically an ex-physicist, who sometimes said strange and alien things about fundamental physics.

Meanwhile, two decades went by. I always hoped that one day I’d get to do my physics project. But I didn’t know when, and my hopes were dimming. But then, a bit more than a year ago, I had a little idea that solved a nagging problem I’d had with my approach. And when I talked about it with two young physicists at our annual Summer School they were so enthusiastic. And I realized, “Yes, there are people who really want to see this problem solved.” And after everything I’ve built and thought about, I have a responsibility to see if it can be done. Oh, and by the way, I really want to do it! It just seems like such a fun and fascinating thing. So why not just do it?

We got started in earnest late last fall. I started doing lots of new computer experiments. New ideas started flowing. And it was incredible. We started to figure out so much. My plan had been that we’d mostly just describe as clearly as possible what I basically already knew, then launch it as a project for other people to get involved. But it was just too easy and too fun to figure things out. We had a new paradigm and things just started tumbling out. In all my years of doing science and technology, I’ve never seen anything like it. It’s been wonderful.

But the plan was always to share the fun, and now we’re ready to do that. We’re publishing everything we’ve done so far (including all the tools, archives, even working-session videos), and we’re looking forward to seeing if this is the time in history when we finally get to figure out the fundamental theory for our universe. Oh, and I finally get to bring to closure something I’ve wanted to do for more than half my life, and that in some ways I’ve spent half a century preparing for.

Why Wasn’t This Already Figured Out?

People have thought about what we’d now call the fundamental theory of physics throughout recorded history. From creation myths, to philosophy, to science, it’s been a long story. And most of the time, it’s actually seemed as if the answer was not far away, at least to the standards of explanation of the day. But it never quite got solved.

And if—as I believe—our project is finally on the right track, we kind of now know why. We just didn’t have the modern paradigm of computation before, and so we didn’t have the right way of thinking about things. Looking back, though, there were an awful lot of good ideas, that were very much in the right direction. And particularly in recent times, there was an awful lot of mathematical methodology developed that’s very relevant and on target.

What does it matter what the fundamental theory of physics is? It’d certainly be an impressive achievement for science to figure it out. And my guess is that knowing it is eventually going to have some far-reaching long-term consequences for our general ways of thinking about things. Conceivably the theory will have near-term applications too. But in terms of what’s done year after year in developing technology, doing science or even understanding theological questions, knowing the fundamental theory of physics isn’t directly relevant; it’s more like an ultimate “background question”. And that’s realistically pretty much how it’s been treated throughout most of history.

Back in ancient Greek times, almost every serious Greek philosopher seems to have had a theory. The details were different. But there was a theme. That somehow everything in the universe consists of the same thing or things repeated over and over again. Maybe it was all water. Maybe it was four elements. Maybe Platonic solids. Maybe atoms. Maybe the world is assembled like sentences from a grammar. To us today these seem quite vague and almost allegorical. But there was an important idea: that everything we see in the world might actually be the result of something simple and formalizable underneath.

As the centuries went by, the idea of “natural laws” sharpened, sometimes with an almost computational feel. “God can only run the world by natural laws”, or “The universe is the thoughts of God actualized”. The 1600s brought the whole idea of describing the world using what amount to mathematical models. But while this had a huge effect on what could be studied and computed in physics, it didn’t immediately change the thinking that much about what the universe might ultimately be made of. It was still just tiny corpuscles (AKA atoms), though now presumed to be bound by gravitational forces.

But what did begin to change was the whole idea that there should be any kind of “explicit explanation” for the universe that one could reason about: maybe there were just equations that were true about the universe, and that was all that could be said, a bit like Euclid’s axioms for geometry. But around the same time, systematic experimental science began to rise—and there implicitly emerged the picture (charmingly resonant with modern debates about machine learning) that physics should consist of finding equations that would represent theories that could fit experimental data.

In the 1800s, as mathematical physics reached the point where it could deal with partial differential equations, and the notion of fields became popular, there started to be ideas about the universe being “all fields”. First there was the ether (along with the rather good idea that atoms might be knotted vortices in the ether). Later people wondered if the electromagnetic field could underlie everything. When the electron was discovered people wondered if perhaps everything was in fact made of electrons. And so on. But a key theme was that to figure out things about the universe, you should either just do experiments, or you should take known equations and compute: you weren’t expected to be able to reason about the universe.

That made special relativity in 1905 quite a shock: because, once again, one was figuring out physics by abstract reasoning. But somehow that just reinforced the “trust the mathematics” idea, and for example—in what I consider to be one of the most important wrong turns in the history of physics—there emerged the idea of a mathematical notion of “spacetime”, in which (despite our strong intuitive sense to the contrary) space and time are treated as “the same kind of thing”.

The introduction of general relativity in 1915—in addition to giving us the theory of gravity—brought with it the notion that “high-end” modern mathematics (in this case tensors and differential geometry) could inform physics. And that was an important piece of methodological input when quantum mechanics, and soon quantum field theory, were developed in the 1920s. Yes, it was difficult to “understand” the theory. But really the mathematics was the intellectual meat of what was going on, and should guide it. And that was what let one calculate things anyway. “Interpretation” was more philosophy than physics.

The question of what space “is” had been discussed by philosophers since antiquity. Euclid had implicitly made a pretty definitive statement with his very first definition “a point is that which has no part”: i.e. there is no discreteness to points, or, in other words, space is continuous. And by the time calculus arose in the late 1600s, it was pretty much taken for granted that space was continuous, and position was a continuous variable.

At different times, Descartes, Riemann and Einstein all had their doubts. But the force of the mathematical methodology provided by calculus was just too great. Still, in the 1930s there started to be problems with infinities in quantum calculations—and with quantization all the rage it started almost being assumed that space must be quantized too. But with the calculus-based thinking of the time nobody managed to make that work. (Graph theory was presumably too immature—and basically unknown—for the idea of space as a graph to arise.) Then in the 1940s the mathematical problems with infinities were avoided (by the idea of renormalization), and—with some important exceptions—the notion that space might be discrete basically disappeared from physics.

Meanwhile, mathematical methods based on calculus were doing great in advancing physics. Quantum electrodynamics (QED) and general relativity were both particularly successful, and it started to seem as if figuring out everything in physics was just a question of doing the math well enough.

But then there were the particles. The muon. The pion. The hyperons. For a while it had seemed that electrons, photons, protons and neutrons were what everything was made of. But by the 1950s particle accelerators were starting to discover many tens of new “elementary” particles. What were all these things?

Oh, and they were all tied up with the strong nuclear force that held nuclei together. And despite all its success in QED, quantum field theory and its “just-work-everything-out-step-by-step” mathematics just didn’t seem to apply. So a different approach developed: S-matrix theory. It was mathematically elaborate (functions of many complex variables), in some ways elegant, but in a sense very formal. Instead of saying “this is how things are built up from something underneath” it basically just said “Here are some mathematical constraints. Whatever solutions they have are what will happen. Don’t ask why.”

And when it came to the particles, there were two approaches. One—roughly allied with quantum field theory—said that inside all these particles was something more fundamental, a new kind of particle called a quark. The other approach—allied with S-matrix theory—imagined something more “democratic” with different particles all just related by some kind of consistency condition.

Through the 1960s these two approaches duked it out. S-matrix theory was definitely ahead—notably spawning Regge theory and what later became string theory. There were quantum-field-theory ideas like what became QCD, but they didn’t look promising. But by the early 1970s it began to be clear that quarks were something real, and in 1973 the phenomenon of asymptotic freedom was discovered, and quantum field theory was saved.

In 1974 came the surprise discovery of a new kind of quark, and physics entered a golden age of rapid progress, essentially powered by quantum field theory. (And, yes, I was involved in that, and it was a lot of fun.) Soon the Standard Model emerged, and everything seemed to be fitting together, and it seemed once again that it was just a matter of calculating, and everything could be figured out.

There were still mysteries: for example, why these particular particles, with these particular masses? But there was a methodology, and there was a sense that somehow this would all work out. An important piece of the story was the use of the theory of Lie groups (a piece of “high-end math” that made its way into physics in the 1950s). Which group was the one for the universe? The Standard Model involved three groups: SU(3), SU(2) and U(1). But could these all be combined into a single, bigger group, perhaps SU(5) or SO(10)—a single “grand unified” model? Around 1980 it all looked very promising.

But there was one key prediction: the proton should be unstable, decaying, albeit very slowly. But then the experiments started coming in: no proton decay. What was particle physics to do? There were new theories, with new particles. But no new particles showed up. Meanwhile, people kept computing more and more with the Standard Model. And everything kept on working. One decimal place, two, three, four.

It was difficult—but somehow routine—to do these calculations. And it seemed like particle physics had entered a phase like atomic physics and nuclear physics before it, where it was really just a question of calculating what one needed.

But there was a crack in all of this. And it was gravity. Yes, quantum field theory had worked well in particle physics. But when it was applied to gravity, it really didn’t work at all. That wasn’t important for computing things about the Standard Model. But it showed there was something else that had to be figured out in physics.

Meanwhile, the theory of gravity had steadily been developing, based on general relativity, which was unchanged since 1915. Until about the 1950s, there had been hopes of generalizing general relativity to make a “unified field theory” that could encompass “matter” as well as gravity. (And in fact, once again, there were good ideas here, about “everything being made of space”.) But it hadn’t worked out—though for example Einstein remarked that perhaps that was because it was being incorrectly assumed that space is continuous.

General relativity is a difficult mathematical theory, fraught with issues of what is real, and what is “just math”. It didn’t get nearly as much attention as quantum field theory, but by the 1960s it was becoming better understood, there were starting to be sensitive experimental tests, and it was pretty clear that things like black holes were real predictions of the theory. And the discovery of the cosmic microwave background heightened interest in cosmology in general, and in the early universe in particular.

In a way, particle physics had been propelled at the end of World War II by the success of the Manhattan Project. But a generation had passed, and by the end of the 1980s it no longer seemed compelling to spend billions of dollars to build the next particle accelerator. But right around then, there started to be more and more done in cosmology. More and more details about the early universe. More and more mystery about the dark matter that seems to exist around galaxies.

And somehow this progress in cosmology just emphasized the importance of figuring out how particle physics (and quantum field theory) could be brought together with general relativity. But what was to be done?

At the tail end of the 1970s-golden-age of particle physics there was another injection of “fancy math”, this time around fiber bundles and algebraic topology. The original application (instanton solutions to the equations of QCD) didn’t work out. But there began to develop a new kind of interchange between the front lines of pure mathematics and theoretical physics.

And as traditional particle physics plateaued, there was more and more emphasis on quantum gravity. First there was supergravity—a kind of extension of the quark model and group theory “let’s just figure out more particles” tradition. But soon the focus turned to something new: string theory. Well, actually, it wasn’t new at all. String theory had been developed, and rejected, as part of the S-matrix initiative in the 1960s. But now it was retooled, and directed at quantum gravity with enough vigor that by the end of the 1980s a large fraction of all particle physicists were working on it.

It didn’t really connect to anything experimentally visible. And it also had all sorts of weird problems—like implying that the universe should really be 26-dimensional, or maybe 10-dimensional. But the physics community was committed to it, and the theory kept on getting patched, all the while becoming more complicated. But even though the physics wasn’t terribly compelling, there were starting to be some spinoffs in math, that made elegant—and important—connections across different areas of high-end pure mathematics.

And in the mid-1990s the high-end math paid back to physics again, bringing M-theory—which seemed to miraculously weave together disparate directions in string theory. For a while there were claims that M theory would be “it”—the fundamental theory of physics. But gradually the hopes faded, with rather little to show.

There was another frontier, though. In the 1970s an initially rather rickety calculation had suggested that black holes—instead of being “completely black”—should emit particles as a result of quantum mechanics. For a while this was basically a curiosity, but slowly the calculations became more streamlined—and it began to look as if whole black holes in a sense had enough mathematical perfection that they could actually be studied a bit like little particles. And in the late 1990s from the mathematics of string theory there emerged the so-called AdS/CFT correspondence—an elaborate mathematical connection between a limiting case of general relativity and a limiting case of quantum field theory.

I don’t think anyone would claim that AdS/CFT is itself anything like a fundamental theory of physics. But in the past 20 years it’s steadily grown to become perhaps the central hope for fundamental physics, mathematically hinting at a variety of deep connections—which, as it happens, look like they may actually dovetail quite beautifully with what we’ve recently figured out.

The last time there was a widespread “we’re almost there” feeling about the fundamental theory of physics was probably around 1980, with another blip in the mid-1990s. And since then the focus of physics has definitely turned elsewhere. But there have been some initiatives—many actually dating from the 1970s and before—that have still continued in various pockets of the physics and math communities. Twistor theory. Causal set theory. Loop quantum gravity. Spin networks. Non-commutative geometry. Quantum relativity. Typically these have seemed like increasingly disconnected—and sometimes almost quixotic—efforts. But one of the wonderful things that’s come out of our project so far is that actually the core formalisms of a surprising number of these initiatives look to be directly and richly relevant.

But what about other approaches to finding a fundamental theory of physics? Realistically I think the landscape has been quite barren of late. There’s a steady stream of people outside the physics community making proposals. But most of them are deeply handicapped by not connecting to quantum field theory and general relativity. Yes, these are mathematically sophisticated theories that pretty much take a physics PhD’s worth of study to understand. But they’re the best operational summaries we have right now of what’s known in physics, and if one doesn’t connect to them, one’s basically throwing away everything that was achieved in 20th-century physics.

Is it surprising that a fundamental theory of physics hasn’t been found yet? If—as I think—we’re now finally on the right track, then no, not particularly. Because it requires ideas and paradigms that just hadn’t been developed until quite recently. Of course, to find a fundamental theory of physics you have to go to the effort of trying to do it, and you have to believe it’s possible. And here perhaps the biggest impediment has been the sheer size of physics as an enterprise. After its successes in the mid-20th century, physics became big—and being a physicist became a top aspiration. But with size came institutionalization and inertia.

About a hundred years ago it was a small collection of people who originally invented the two great theories (general relativity and quantum field theory) that have basically defined fundamental physics for the past century. I don’t think it would have been a great surprise to any of them that to make further progress one would need new ideas and new directions. But to most modern physicists—perhaps six or seven academic generations removed from the founders of these fields, and embedded in a large structure with particular ways of doing things—the existing ideas and directions, and the kinds of things that can be done with them, just seem like the only way it can be. So if in the normal course of science, a fundamental theory of physics does not appear—as it did not—there ends up being almost a collective conclusion that to find it must be too hard, or even impossible. And not really what physics, or physicists, should be doing.

So who will do it? There’s a pretty thin set of possibilities. It pretty much has to be someone who knows the methods and achievements of mainstream physics well, or, essentially, someone who has been a physicist. It also pretty much has to be someone who’s not too deeply embedded in the current world of physics and its existing ideas, prejudices and “market forces”. Oh, and it requires tools and resources. It doesn’t hurt to have experience in doing and leading large projects. And it requires the confidence and resolve to try a big and difficult project that few people will believe in—as well, of course, as a deep interest in actually finding out the answer.

The project that we’re now launching almost didn’t happen. And if a few more years had gone by, it’s pretty certain it wouldn’t have. But things lined up in just such a way that a small window was opened. And I’m thrilled at the way it’s turning out. But let me now tell a little more of the story of how it got here.

The Beginning of the Story

As a young kid growing up in England in the 1960s I viewed the space program as a kind of beacon of the future, and I intently followed it. But when I wanted to know how spacecraft and their instruments worked I realized I had to learn about physics—and soon I left space behind, and was deeply into physics.

I was probably 11 years old when I started reading my first college physics textbook, and when I was 12 I compiled a “Concise Directory of Physics” with 111 pages of carefully typed information and data about physics:

Concise Directory of Physics

All this information collection had definite shades of “Wolfram|Alpha-ism”. And the “visualizations” presaged a lifelong interest in information presentation. But my Concise Directory also had something else: pages listing the “elementary particles”. And soon these became my great obsession. The pions. The kaons. The muon. The cascade hyperons. To me they were the ultimate story in science, and I was soon learning all their quirks (“The K zero isn’t its own antiparticle!” “The omega minus has strangeness -3!”)

I spent the summer when I was 13 writing the 132-page, single-spaced, typed “The Physics of Subatomic Particles”. At the time, I basically showed it to no one, and it’s strange to look at it now—47 years later. It’s basically an exposition of particle physics, told in a historical arc. Some of it is shockingly similar to what I just wrote in the previous section of this piece—except for the change of tense and the Americanization:

The Physics of Subatomic Particles

It’s charming to read my 13-year-old self’s explanation of quantum field theory (not bad), or my authoritative description of a just-proposed theory of the muon that I’m guessing I found out about from New Scientist, and that turned out to be completely wrong.

By the next summer I was writing a 230-page treatise “Introduction to the Weak Interaction”, featuring some of my most favorite elementary particles, and showing a pretty good grasp of quantum mechanics and field theory:

Introduction to the Weak Interaction

Pretty soon I had reached the edge of what was known in particle physics, but so far what I had done was basically exposition; I hadn’t really tried to figure out new things. But by the summer of 1974 it was increasingly clear that something unexpected was going in physics. Several experiments were showing an unanticipated rise in the electron-positron annihilation cross-section—and then, rather dramatically, in November, the J/ψ particle was discovered. It was all a big surprise, and at first people had no idea what was going on. But 14-year-old me decided I was going to figure it out.

Those were days long before the web, and it wasn’t easy to get the latest information. But from where I lived when I wasn’t at school, it was about a 6-mile bicycle ride to the nearest university library, and I did it often. And pretty soon I had come up with a theory: maybe—contrary to what had long been believed—the electron is not in fact a point particle, but actually has internal structure.

By then, I had read many academic papers, and pretty soon I had written one of my own. It took two tries, but then, there it was, my first published paper, complete—I now notice—with some self-references to earlier work of mine, in true academic style:

Hadronic Electrons?

It was a creative and decently written paper, but it was technically a bit weak (heck, I was only 15), and, at least at the time, its main idea did not pan out. But of course there’s an irony to all this. Because—guess what—45 years later, in our current model for fundamental physics, the electron is once again not a point particle! Back in 1975, though, I thought maybe it had a radius of 10-18 meters; now I think it’s more likely 10-81 meters. So at the very least 15-year-old me was wrong by 63 orders of magnitude!

Being a “teenage physicist” had its interesting features. At my boarding school (the older-than-the-discovery-of-America Eton), there was much amusement when mail came addressed to me as “Dr. S. Wolfram”. Soon I started doing day trips to go to physics seminars in Oxford—and interacting with “real physicists” from the international physics community. I think I was viewed as an exotic phenomenon, usually referred to in a rather Wild-West way as “The Kid”. (Years later, I was amused when one of my children, precocious in a completely different domain, earned the very same nickname.)

I really loved physics. And I wanted to do as much physics as I could. I had started using computers back in 1973—basically to do physics simulations. And by 1976 I’d realized something important about computers. The one thing I didn’t like about physics was that it involved doing all sorts of—to me, tedious—mathematical calculations. But I realized that I could get computers to do those for me. And, needless to say, that’s how, eventually, Mathematica, Wolfram|Alpha, etc. came to be.

I left high school when I was 16, worked doing physics at a government lab in England for about 6 months, and then went to Oxford. By this point, I was producing physics papers at a decent rate, and the papers were getting progressively better. (Or at least good enough that by age 17 I’d had my first run-in with academic thievery.)

Mostly I worked on particle physics—at that time by far the hottest area of physics. But I was also very interested in questions like the origin of the Second Law of thermodynamics, and particularly its relation to gravity. (If things always become more disordered, how come galaxies form, etc.?) And from this (as well as questions like “where’s the antimatter in the universe?”) I got interested in cosmology, and, inevitably, in connecting it to particle physics.

Nowadays everyone knows about that connection, but back then few people were interested in it.

Particle physics, though, was a completely different story. There were exciting discoveries practically every week, and the best and brightest were going into the field. QCD (the theory of quarks and gluons) was taking off, and I had a great time doing some of the “obvious” calculations. And of course, I had my secret weapon: computers. I’ve never really understood why other people weren’t using them, but for me they were critical. They let me figure out all this stuff other people couldn’t. And I think the process of writing programs made me a better physicist too. Looking at my papers from back then, the notation and structure got cleaner and cleaner—as might befit a future lifelong language designer.

After a bit more than a year in Oxford, and now with ten physics papers to my name, I “dropped out of college”, and went to Caltech as a graduate student. It was a very productive time for me. At the peak I was writing a physics paper every couple of weeks, on quite a range of topics. (And it’s nice to see that some of those papers still get referenced today, 40 years later.)

Caltech was at the time a world center for particle physics, with almost everyone who was someone coming through at one time or another. Most of them were much older than me, but I still got to know them—not just as names in the physics literature but as real people with their various quirks.

Murray Gell-Mann and Richard Feynman were the two biggest names in physics at Caltech at the time. I got on particularly well with Feynman, even if—in his rather competitive way—he would often lament that he was three times my age. (In the way these things come around, I’m now the same age as he was when I first met him…)

After a bit more than a year, I put together some of the papers I’d written, officially got my PhD, and took up a nice research faculty position at Caltech. I’d had the goal of “being a physicist” since I was about 10 years old, and now, at age 20, I was actually officially a physicist.

“So what now?” I wondered. There were lots of things I wanted to do in physics. But I felt limited by the computer tools I had. So—actually within a couple of weeks of getting my PhD—I resolved that I should spend the time just to build the tools I needed. And that’s how I came to start developing my first big computer system and language.

I approached it a bit like a problem in natural science, trying to develop a theory, find principles, etc. But it was different from anything I’d done before: it wasn’t constrained by the universe as the universe is. I just had to invent abstract structures that would fit together and be useful.

The system I built (that I called SMP, for “Symbolic Manipulation Program”) had all sorts of ideas, some good, some not so good. One of the most abstract—and, arguably, obscure—ideas had to do with controlling how recursive evaluation works. I thought it was neat, and perhaps powerful. But I don’t think anyone (including me) ever really understood how to use it, and in the end it was effectively relegated to a footnote.

But here’s the irony: that footnote is now a front-and-center issue in our models of fundamental physics. And there’s more. Around the time I was building SMP I was also thinking a lot about gauge theories in physics. So there I was thinking about recursion control and about gauge invariance. Two utterly unrelated things, or so I thought. Until just recently, when I realized that in some fundamental sense they’re actually the same thing!

“You Can’t Leave Physics”

It took a couple of years to build the first version of SMP. I continued to do particle physics, though I could already feel that the field was cooling, and my interests were beginning to run to more general, theoretical questions. SMP was my first large-scale “practical” project. And not only did it involve all sorts of software engineering, it also involved managing a team—and ultimately starting my first company.

Physicists I knew could already tell I was slipping away from physics. “You can’t leave physics”, they would say. “You’re really good at this.” I still liked physics, and I particularly liked its “let’s just figure this out” attitude. But now I wasn’t just applying that methodology in quantum field theory and cosmology; I was also using it in language design, in software development, in entrepreneurism, and in other things. And it was working great.

The process of starting my first company was fraught with ahead-of-my-time-in-the-interaction-between-companies-and-universities issues, that ultimately caused me to leave Caltech. And right in the middle of that, I decided I needed to take a break from my mainline “be a physicist” activities, and just spend some time doing “something fun”.

I had been thinking for a long time about how it is that complex things manage to happen in nature. My two favorite examples were neural networks (yes, back in 1981, though I never figured out how to make them do anything very useful back then) and self-gravitating gases. And in my “just have fun” approach I decided to try to make the most minimal model I could, even if it didn’t really have much to do with either of these examples, or officially with “physics”.

It probably helped that I’d spent all that time developing SMP, and was basically used to just inventing abstract things from scratch. But in any case, what I came up with were very simple rules for arrays of 0s and 1s. I was pretty sure that—as such—they wouldn’t do anything interesting. But it was basically trivial for me to just try running them on a computer. And so I did. And what I found was amazing, and gradually changed my whole outlook on science and really my whole worldview—and sowed the seeds that have now, I believe, brought us a path to the fundamental theory of physics.

What I was looking at were basically some of the very simplest programs one can imagine. And I assumed that programs that simple wouldn’t be able to behave in anything other than simple ways. But here’s what I actually saw in my first computer experiment (here rendered a bit more crisply than in my original printouts):


  Table[ArrayPlot[CellularAutomaton[n, {{1}, 0}, {40, All}]], {n, 0, 
    63}], 8], ImageSize -> Full]

Yes, some of the behavior is simple. And some of it involves nice, recognizable fractal patterns. But then there are other things going on, like my all-time favorite—what I called “rule 30”:

ArrayPlot[CellularAutomaton[30, {{1}, 0}, 200]]

ArrayPlot[CellularAutomaton[30, {{1}, 0}, 200]]

At first, I didn’t understand what I was seeing, and I was convinced that somehow the simplicity of the underlying rules must ultimately force the behavior to be simple. I tried using all sorts of methods from physics, mathematics, computer science, statistics, cryptography and so on to “crack” these systems. But I always failed. And gradually I began to realize that something fundamental was going on—that somehow in just running their rules, simple as they were, these systems were intrinsically creating some kind of irreducible complexity.

I started writing papers about what I’d discovered, at first couched in very physics-oriented terms:

Statistical Mechanics of Cellular Automata

The papers were well received—in physics, in mathematics, and in other fields too, like biology. (Where perhaps it helped that—in a nod to historical antecedents—I called my models “cellular automata”, though I meant abstract cells, not biological ones.)

Meanwhile, I had moved to the Institute for Advanced Study, in Princeton (where there were still people telling stories about their interactions with Kurt Gödel and “Johnny” von Neumann and his computer, and where, yes, my office was upstairs from where Einstein had once worked). I started building up a whole effort around studying “complexity” and how it could arise from simple rules. And gradually I started to realize that what I’d seen in that little computer experiment in 1981 was actually a first sign of something very big and very important.

Looking back, I see that experiment as my personal analog of turning a telescope to the sky and seeing the moons of Jupiter. But the challenge was really to understand the significance of what I’d seen—which in the end took me decades. But the first step was just to start thinking not in terms of the kinds of methods I’d used in physics, but instead fundamentally in terms of computation, treating computation not just as a methodology but a paradigm.

The summer of 1984 was when I think I finally began to seriously understand computation as a paradigm. Early that summer I’d finally recognized rule 30 for what it was: a powerful computational system. Then—in writing an article for Scientific American (nominally on “Computer Software in Science and Mathematics”)—I came up with the term “computational irreducibility”, and began to understand its significance.

That fall I wrote a short paper that outlined the correspondence with physics, and the fundamental implications (which now loom large in our current project) of computational irreducibility for physics:

Undecidability and Intractability in Theoretical Physics

One of the nice things for me about the Institute for Advanced Study is that it was a small place, with not only physicists, but also lots of world-class mathematicians. (I had interacted a bit with Michael Atiyah and Roger Penrose about mathematics-for-physics when I was in Oxford, but at Caltech it was physics and nothing but.) Two top-of-the-line mathematicians, John Milnor and Bill Thurston, both got interested in my cellular automata. But try as they might, they could prove pretty much nothing; they basically hit a wall of computational irreducibility.

Yes, there is undecidability in mathematics, as we’ve known since Gödel’s theorem. But the mathematics that mathematicians usually work on is basically set up not to run into it. But just being “plucked from the computational universe”, my cellular automata don’t get to avoid it. And ultimately our physics project will run into the same issues. But one of the wonderful things that’s become clear in the last few months is that actually there’s quite a layer of computational reducibility in our models of physics—which is critical for our ability to perceive the world coherently, but also makes math able to be useful.

But back to the story. In addition to my life doing basic science, I had a “hobby” of doing consulting for tech companies. One of those companies was a certain ultimately-poorly-named Thinking Machines Corporation, that made massively parallel computers that happened to be ideally suited to running cellular automata. And in an effort to find uses for their computers, I decided to see whether one could model fluid flow with cellular automata. The idea was to start not with the standard physics equations for fluid flow, but instead just to have lots of computational particles with very simple rules, and then see whether on a large scale fluid flow could emerge.

As it turned out, with my interest in the Second Law of thermodynamics, I’d actually tried something quite similar back in 1973, as one of the very first programs I ever wrote. But I hadn’t seen anything interesting then, partly because of what one might think of as a piece of technical bad luck, but probably more importantly because I didn’t yet grasp the paradigm that would allow me to understand what was going on. But in 1985 I did understand, and it was neat: from tiny computational rules that didn’t immediately have physics in them was emerging a piece of physics that was normally described with the equations of physics. And, yes, now it looks like that’s how all of physics may work—but we’ll come to that.

By 1985 I was pretty clear on the notion that one could use the computational paradigm and the methods around it to explore a wide range of phenomena and questions. But for me the “killer app” was understanding the origins of complexity, and trying to build a general “theory of complexity”. It wasn’t physics, it wasn’t mathematics, it wasn’t computer science. It was something new. I called it “complex systems theory” (avoiding, at least for a while, a preexisting and completely different field of computer science called “complexity theory”).

I was 25 years old but already pretty established in science, with “mainstream cred” from my early work in physics, and a lot of momentum from my work in complexity and in practical computing. I liked a lot doing complex systems research myself, but I thought that to really make progress more people needed to be involved. So I started organizing. I launched a journal (which is still thriving today). And then I talked to universities (and other places) to see where the best place to start a research center would be.

Eventually I picked the University of Illinois, and so in the fall of 1986 there I went, themed as a professor of physics, mathematics and computer science, and director of the Center for Complex Systems Research. It was a good setup, but I quickly realized it wasn’t a good fit for me. Yes, I can organize things (and, yes, I’ve been a CEO now for more than half my life). But I do best when I’m organizing my own things, rather than being inside another organization. And, most important, I like actually doing things—like science—myself.

So rather quickly, I went to Plan B: instead of trying to get lots of other people to help push forward the science I wanted to see done, I’d set myself up to be as efficient as possible, and then I’d try to just do what I thought should be done myself. But the first thing I needed was good computational tools. And so it was that I started to build Mathematica, and what’s now the Wolfram Language, and to start my company, Wolfram Research.

We launched the first version of Mathematica in June 1988, and I think it’s fair to say that it was an instant hit. Physicists were particularly keen on it, and rather quickly it induced an interesting transition. Before Mathematica, if a typical physicist needed to compute something on a computer, they’d delegate it to someone else to actually do. But Mathematica for the first time made computing “high level” enough that physicists themselves could do their own computations. And it’s been wonderful to see over the years immense amounts of physics research done with the tools we’ve built. (It’s very nice to have been told many times that, apart from the internet, Mathematica is the largest methodological advance in the doing of physics in this generation.)

For a few years, the rapid development of Mathematica and our company entirely consumed me. But by 1991 it was clear that if I concentrated full-time on it, I could generate far more ideas than our company—at the size it then was—could possibly absorb. And so I decided it was time for me to execute the next step in my plan—and start actually using the tools we’d developed, to do the science I wanted to do. And so in 1991 I became a remote CEO (as I still am) and started work on my “science project”.

Maybe It Could Apply to Physics

Pretty quickly I had a table of contents for a book I planned to write—that would work through the consequences of the computational paradigm for complexity and other things. Part of it was going to be exploration: going out into the computational universe and studying what programs do—and part of it was going to be applications: seeing how to apply what I’d learned to different areas of science, and beyond. I didn’t know what I’d end up discovering, but I figured the process of writing the book would take a year or two.

My first question was just how general the phenomena I’d discovered in cellular automata actually were. Did they depend on things updating in parallel? Did they depend on having discrete cells? And so on. I started doing computer experiments. Often I’d think “this is finally a kind of system that isn’t going to do anything interesting”. And I kept on being wrong. I developed a mantra, “The computational animals are always smarter than you are”. Even when you can give all sorts of arguments about why such-and-such a system can’t do anything interesting, it’ll find a way to surprise you, and do something you’d never predict.

What was going on? I realized it was something very general, and very fundamental to basically any system. I call it the Principle of Computational Equivalence, and it’s now the guiding principle for a lot of my thinking. It explains computational irreducibility. It gives us a way to organize the computational universe. It tells us about the power of minds. It shows us how to think about the possibilities of artificial intelligence. It gives us perspectives on alien intelligence. It gives us a way to think about free will. And now it seems to give us a way to understand some ultimate questions about our perception of possible physical universes.

I think it was in 1990, right before I began the book project, that I started wondering about applying my ideas to fundamental physics. There’d been a whole “digital physics” movement (particularly involving my friend Ed Fredkin) around using cellular automata to model fundamental physics. But frankly it had put me off. I’d hear “I’ve discovered an electron in my cellular automaton”, but it just sounded like nonsense to me. “For goodness’ sake, learn what’s already known in physics!”, I would say. Of course I loved cellular automata, but—particularly with their rigid built-in notions of space and time—I didn’t think they could ever be more than allegories or toy models for actual physics, and pushing them as more than that seemed damaging, and I didn’t like it.

But, OK, so not cellular automata. But what underlying computational structure might actually work? I was pretty sure it had to be something that didn’t have its own built-in notion of space. And immediately I started thinking about networks.

Things like cellular automata are very clean and easy to define, and program on a computer. Networks—at least in their most obvious form—aren’t. My first foray into studying network-based systems was in 1992 and wound up as part of “Chapter 5: Two Dimensions and Beyond”. And like every other kind of system I studied, I found that these network systems could generate complex behavior.

Network systems

By 1993 I’d studied lots of kinds of abstract systems. And I was working down the table of contents of my planned book, and starting to ask questions like: “What can all this tell us about biology?” “What about human perception?” “Mathematics?” And it was quite exciting, because every time I’d look at a new area I’d realize “Yes, the things I’ve found in the computational universe really tell us new and interesting things here!”

So finally in 1994 I decided to try and tackle fundamental physics. I’ve got this whole shelf of drafts of what became my book, and I just pulled down the versions from 1994. It’s already got “Chapter 9: Fundamental Physics”, but the contents are still embryonic. It gradually grows through 1995 and 1996. And then in 1997, there it is: “Space as a Network”, “Time and Causal Networks”, etc.

Space as a Network

Time and Causal Networks

I’d figured out the story of how space could be made as the limit of a discrete network and how different possible updating sequences for graphs led to different threads of time. And I’d come up with the idea of causal invariance, and realized that it implied special relativity. I’d also begun to understand how curvature in space worked, but I didn’t yet “have” general relativity.

I’ve got all my notebooks from those times (and they’re even now in our online archives). It’s a little weird to pull them up now, and realize how tiny screens were back then. But for the most part everything still runs, and I can see how I started to do searches for “the rule” that could build something like our universe.

By then I was in year 6 of my “one-year” book project. At the beginning I’d called my book A Science of Complexity. But even by 1994 I’d realized that it was a bigger story than that—and I’d renamed the book A New Kind of Science. There was a whole intellectual edifice to discover, and I was determined to work through all the “obvious questions” so I could coherently describe it.

From a personal point of view it’s certainly the hardest project I’ve ever done. I was still remote-CEOing my company, but every day from early in the evening until perhaps 6 am I’d work on science, painstakingly trying to figure out everything I could. On a good day, I’d write a whole page of the book. Sometimes I’d spend the whole day just computing one number that would end up in tiny print in the notes at the back.

When I first embarked on the book project I talked to people quite a bit about it. But they’d always be saying “What about this? What about that?” But no! I had a plan and if I was ever going to get the project done, I knew I had to stick to it, and not get distracted. And so I basically decided to become a hermit, focus intensely on doing the project, and not talk to anyone about it (except that I did have a sequence of research assistants, including some very talented individuals).

The years went by. I’d started the book not long after I turned 30. Now I was approaching 40. But, slowly, inexorably, I was working through the table of contents, and getting towards the end. It was 2001 when I returned to put the finishing touches on Chapter 9. By then I had a pretty good idea how general relativity could work in my model, but in 2001 I got it: a derivation of general relativity that was kind of an analog for the emergence of spacetime from networks of my derivation from 16 years earlier of the emergence of fluid flow from simple cellular automata.

And finally, in 2002, after ten and a half years of daily work, my book was finished. And what I had imagined might be a short “booklet” of perhaps 150 pages had become a 1280-page tome, with nearly a third of a million words of detailed notes at the back. I intended the book to be a presentation (as its title said) of a new kind of science, based on the computational paradigm, and informed by studying the computational universe of simple programs.

But I had wanted to include some “use cases”, and physics was one of those, along with biology, mathematics and more. I thought what I had done in physics was a pretty interesting beginning, and gave great evidence that the computational paradigm would provide an important new way to think about fundamental physics. As I look back now, I realize that a whole 100 pages of A New Kind of Science are devoted to physics, but at the time I think I considered them mostly just a supporting argument for the value of the new kind of science I was developing.

“Please Don’t Do That Project”

A New Kind of Science launched on May 14, 2002, and quickly climbed onto bestseller lists. I don’t think there’s a perfect way to deliver big ideas to the world, but all the trouble I’d taken trying to “package” what I’d figured out, and trying make my book as clear and accessible as possible, seemed to be paying off. And it was great: lots of people seemed to get the core ideas of the book. Looking back, though, it’s remarkable how often media coverage of the book talked about physics, and the idea that the universe might be described by a simple program (complete with headlines like “Is the Universe a Computer?” and “The Cosmic Code”).

But as someone who’d studied the history of science for a long time, I full well knew that if the new paradigm I was trying to introduce was as important as I believed, then inevitably it would run into detractors, and hostility. But what surprised me was that almost all the hostility came from just one field: physics. There were plenty of physicists who were very positive, but there were others for whom my book somehow seemed to have touched a nerve.

As an almost lifelong lover of physics, I didn’t see a conflict. But maybe from the outside it was more obvious—as a cartoon in a review of my book in the New York Times (with a remarkably prescient headline) perhaps captured:

“You Know That Space-Time Thing? Never Mind”

If social media had existed at the time, it would undoubtedly have been different. But as it was, it was a whole unchecked parade: from Nobel prizewinners with pitchforks, to a then-graduate-student launching their career by “proving” that my physics was “wrong”. Why did they feel so strongly? I think they thought (and some of them told me as much) that if I was right, then what they’d done with their traditional mathematical methods, and all the wonderful things they’d built, would get thrown away.

I never saw it that way (and, ironically, I made my living building a tool used to support those traditional mathematical methods). But at the time—without social media—I didn’t have a useful way to respond. (To be fair, it often wasn’t clear there was much to say beyond “I don’t share your convictions”, or “Read what the book actually says… and don’t forget the 300,000 words of notes at the back!”.)

But there was unfortunately a casualty from all this: physics. As it now turns out (and I’m very happy about it), far from my ideas being in conflict with what’s been done in physics, they are actually beautifully aligned. Yes, the foundations are different. But all those traditional mathematical methods now get extra power and extra relevance. But it’s taken an additional 18 years for us to find that out. And it almost didn’t happen at all.

It’s been interesting to watch the general progression of the ideas I discussed in A New Kind of Science. What’s been most dramatic (and I’m certainly not solely responsible) has been the quiet but rapid transition—after three centuries—of new models for things being based not on equations but instead on programs. It’s happened across almost every area. With one notable exception: fundamental physics.

Perhaps it’s partly because the tower of mathematical sophistication in models is highest there. Perhaps it’s because of the particular stage of development of fundamental physics as a field, and the fact that, for the most part, it’s in a “work out the existing models” phase rather than in a “new models” phase.

A few months after my book appeared, I did a big lecture tour of universities and the like. People would ask about all kinds of things. But pretty much everywhere, some people (quite often physicists) would ask about fundamental physics. But, somewhat to my disappointment, their questions tended to be more philosophical than technical. Somehow the notion of applying these ideas to fundamental physics was just a little too dangerous to discuss.

But I decided that whatever other people might think, I should see what it would take to make progress. So in 2004 I set about expanding what I’d figured out so far. I made my explorations more streamlined than before, and pretty soon I was beginning to write summaries of what was out there:

Network Substitution Systems

But there was something that bugged me. Somehow my model felt a bit fragile, a bit contrived. At least with the formalism I had, I couldn’t just “write down any rule”; it was a bit like writing down numbers, but they had to be prime. And there was another, more technical, problem as well. For my derivations of special and general relativity to work, I needed a model that was causal invariant, and my searches were having a hard time finding nontrivial examples.

And right in the middle of trying to figure out what to do about this, something else happened: I started working on Wolfram|Alpha. In a sense Wolfram|Alpha was an outgrowth of A New Kind of Science. Before the book I had assumed that to build a serious computational knowledge engine (which is something I had, in one form or another, been interested in since I was a kid) one would first have to solve the general problem of AI. But one of the implications of my Principle of Computational Equivalence is that there is no bright line between “intelligence” and “mere computation”. And that meant that with all our computational capabilities we should already be able to build a computational knowledge engine.

And so I decided to try it. Of course at the beginning we didn’t know if it would work. (Is there too much data in the world? Is it too hard to make it computable? Is it too hard to understand natural language? Etc.) But it did work. And in 2009 we launched Wolfram|Alpha.

But I was still enthusiastic about my physics project. And in February 2010 I made it a major part of a talk I gave at TED, which the TED team initially titled “Computing a Theory of Everything” (confusingly, there also now seems to be a version of the same talk with the alternate title “Computing a Theory of All Knowledge”). And—as I was recently reminded—I told the audience that I was committed to seeing the project done, “to see if, within this decade, we can finally hold in our hands the rule for our universe”.

Computing a Theory of Everything

OK, well, it’s now April 2020. So we didn’t make it “within the decade”. Though, almost exactly 10 years later, we’re now launching the Wolfram Physics Project and I think we’re finally on a path to it.

So why didn’t this happen sooner? Frankly, in retrospect, it should have. And if I’d known what I know now, I absolutely would have done it. Yes, our Wolfram Language technology has gotten better in the course of the decade, and that’s made the project considerably easier. But looking back at what I had done even in 2004, I can now see that I was absolutely on the right track, and I could have done then almost everything I’m doing now.

Most of the projects I’ve ever done in my life—from my “Concise Directory of Physics” onward—I’ve done first and foremost because I was interested in them, and because I thought I would find them intellectually fulfilling. But particularly as I’ve gotten older, there’s been another increasingly important factor: I find I get pleasure out of doing projects that I think other people will find useful—and will get their own fulfillment out of. And with the tools I’ve built—like Mathematica and Wolfram|Alpha and the Wolfram Language—as well as with A New Kind of Science and my other books and writings, that’s worked well, and it’s been a source of great satisfaction to me.

But with the physics project, there was a problem. Because after I effectively “tested the market” in 2002, it seemed as if my core “target customers” (i.e. physicists interested in fundamental physics) didn’t want the project. And in fact a few of them came right out and said it: “Please don’t do that project”.

I personally thought the project would be really interesting. But it wasn’t the only project I thought would be interesting. And basically I said “Nah, let me not put lots of effort into a project people basically don’t want”.

What did I do instead? The most important theme of the past decade for me has been the emergence of the Wolfram Language as a full-scale computational language, and my increasing realization of the significance of having such a language. I view it as being a key step in the development of the computational paradigm—and the crucial link between what computation makes possible, and the way we humans think about things.

It provides a way for us to express ourselves—and organize our thoughts—in computational terms. I view it in some ways as analogous to the creation of mathematical notation four centuries or so ago. And just as that launched the modern development of mathematical science and mathematical thinking, so now I believe that having a full-scale computational language will open up the development of all the “computational X” fields, and the full potential of computational thinking. And this is not something just limited to science. Through ideas like computational contracts I think it’s going to inform a lot of how our world operates in the years to come, and how we want to shape (through ethics, etc.) what AIs do, and how we define the future of the human condition.

It’s not yet nearly as obvious as it will become. But I think computational language is eventually going to be seen as a pivotal intellectual idea of our times. It also has the rare and interesting feature of being something that is both fundamental and creative. It’s about “drilling down” to find the essence both of our thinking and of what computation makes possible. But it’s also about the creative design of a language.

And for me personally it’s in many ways the ideal project. It involves developing deep understanding across as many areas as possible. It involves the continual exercise of creativity. And it’s also a big project, that benefits from organizational skills and resources. And I’m very happy indeed to have spent the past decade on it.

Sometimes I’ve thought about how it compares as a project to fundamental physics. At a practical level, building a computational language is like building a progressively taller tower—from which one can progressively see further, and occasionally reach major new kinds of applications and implications. Fundamental physics is much more of a one-shot project: you try an approach to fundamental physics and either it works, or it doesn’t; there’s not the same kind of feeling of progressively building something.

Computational language also began to feel to me like an ultimately more fundamental project—at least for us humans—than fundamental physics. Because it’s about the generality of computation and the generality of our ways of thinking, not the specifics of the physical universe in which we “happen to exist”. And as I thought about the distant future (complete with my “box of a trillion souls” image), the physical universe seemed less and less relevant to the essence of the human condition. As a kind of “disembodied digital soul”, it doesn’t matter what the underlying “machine code” of the universe is; you’re operating just at the level of abstract computation. So maybe the fundamental theory of physics is ultimately just an “implementation note”. (As I now realize from our recent discoveries, the actual situation is more nuanced, and much more philosophically fascinating.)

But even though my main focus has been computational language and its implications, I’ve been doing quite a few other things. Occasionally I’ve even written about physics. And I’ve kept thinking about the fundamental physics project. Is there a “positive” way, I wondered, to do the project, so as many people as possible will be pleased to see it done?

I wondered about offering a prize for finishing what I had started. I had a great experience with something like that in 2007, when Alex Smith won the prize I had set up for proving my conjecture that a particular Turing machine was universal, thereby establishing what the very simplest possible universal Turing machine is. And in fact last fall I put up some new prizes for longstanding questions about rule 30. But for fundamental physics, I didn’t think a prize could work. For the Turing machine problem or the rule 30 problems it’s realistic for someone to just “swoop in” and figure it out. For fundamental physics, there’s a big a tower of ideas to learn just to get started.

From time to time I would talk to physicist friends of mine about the fundamental physics project. (I usually didn’t even try with physicists I didn’t know; they would just give me quizzical looks, and I could tell they were uncomfortably wondering if I had lost my marbles.) But even with my friends, when I started to describe the details of the project, I don’t think over the course of 18 years I managed to keep anyone’s attention for more than 15 minutes. And quite soon I would just ask “So, what’s new in physics as far as you are concerned?”, and off we would go talking about string theory or particle phenomenology or conformal field theory or whatever. (And sometimes they would say, surprised that I cared, “Wow, you still really know about this stuff!”)

Finally, though, a few years ago I had an idea about the fundamental physics project: why not just do the project as an educational project? Say, more or less, “We’re going to try to climb the Mount Everest of science. We don’t know if we’ll succeed, but you might enjoy seeing what we do in trying to make the climb.” After all, when I talked to non-physicists—or kids–about the project, they were often very excited and very curious. And with all the effort put into STEM education, and into encouraging people to learn about science, I thought this would be a good opportunity. But whenever I really thought about doing the project (and I was still assuming that we’d just be “starting the climb”; I had no idea we’d be able to get as far as we have now), I came back to the “problem of the physicists” (or “phyzzies” as I nicknamed them). And I didn’t have a solution.

And so it was that year after year, my project of trying to find the fundamental theory of physics languished.

Two Young Physicists and a Little Idea

Every year for the past 17 years—starting the year after A New Kind of Science was published—we’ve held an annual summer school. It always ends up with an outstanding group of students (mostly college, grad and postdoc). And for me (and also some of our R&D staff) it’s become a once-a-year three-week opportunity to explore all sorts of new ideas. In the early years, the Summer School concentrated specifically on what was in my book (it was originally designed to solve the problem of people asking us for guidance on how to do the kind of science in the book). In more recent years, it’s basically become about all aspects of the methodology that I and our company have developed.

But from the beginning until now, there’ve always been a few students each year who say they want to work on “Chapter 9”. Many interesting projects have come out of that, though few really used the full network models I’d developed, basically because those were too technically difficult to use in projects that could get done in three weeks.

In 2014, though, a young student just graduating with a degree in physics from Moscow State University (and with various competitive coding achievements to his name) came to the Summer School, determined to work on network-based models of fundamental physics. As the beginning of his project description put it: “The ultimate goal is to figure out the fundamental theory of physics.” His actual project was a nice study of the longtime behavior of networks with planarity-preserving rules. The next year, having now completed a master’s degree in physics in Moscow, the same student—whose name is Max Piskunov—came to the Summer School a second time (something we rarely allow), to continue his work on network-based models of fundamental physics.

After the Summer School, he was very keen to continue working on these models, and asked me if I could be a PhD advisor for him. I said that unfortunately I wasn’t in that business anymore, and that even more unfortunately I didn’t know any currently active physicists who’d be suitable. As it turned out, he succeeded in finding a university where there were physicists who were now working on “network science”—though eventually they apparently told him “It’s too risky for you to work on network models for physics; there isn’t a well-defined criterion for success”.

From time to time I would ask after Max, and was a little disappointed to hear that he was off doing a PhD on “traditional” cosmology-meets-particle-physics. But then, in 2018 Max showed up again as a visitor at our Summer School—still really wanting to work on network-based models of fundamental physics. I said I’d really like to work on them too, but just didn’t see a way to do it. He said he at least wanted to try his hand at writing more streamlined code for them.

Over the next couple of months I would occasionally talk to Max on the phone, and every time I felt more and more like I really should actually try to do something on the project; I’d been putting it off far too long.

But then I had a little idea. I’d always been saying that I wanted models that are as minimal and structureless as possible. And then I’d say that networks were the best way I knew to get these, but that there were probably others. But even though I thought about lots of abstract structures through my work on the Wolfram Language, I never really came up with anything I was happy with. Until September 9, 2018.

I was asking myself: what lies at the heart of abstract representations, in computation, in mathematics, and so on? Well, I realized, I should know! Because in a sense that’s what I’ve been trying to model all these years in the Wolfram Language, and in SMP before it. And, actually, for more than 40 years, everything I’ve done has basically been built on the same ultimate underlying answer: transformation rules for symbolic expressions.

It’s what the Wolfram Language is based on (and it’s what SMP was based on too). So why hadn’t I ever thought of using it for models of fundamental physics? The main reason was that somehow I never fully internalized that there’d be something useful left if one “took all the content out of it”. Most of the time we’re defining transformation rules for symbolic expressions that are somehow useful and meaningful to us—and that for example contain functions that we think of as “representing something”.

It’s a little shocking that after all these years I could basically make the same mistake again: of implicitly assuming that the setup for a system would be “too simple for it to do anything interesting”. I think I was very lucky all those years ago with cellular automata, that it was so easy to try an experiment that I did it, just “on a whim”.

But in September 2018 I think I was feeling more motivated by the abstract aesthetics than anything else. I realized there might be an elegant way to represent things—even things that were at least vaguely similar to the network-based models I had studied back in the 1990s. My personal analytics record that it took about 8 minutes to write down the basics:

Relation nets

There it was: a model defined by basically a single line of Wolfram Language code. It was very elegant, and it also nicely generalized the network models I had long thought about. And even though my description was written (for myself) in language-designer-ese, I also had the sense that this model had a certain almost-mathematical purity to it. But would it do anything interesting? Pretty soon I was doing what I basically always seem to end up doing: going out into the computational universe of possibilities and exploring. And immediately I was finding things like:

The computational universe of possibilities and exploring

When one looks at the array of squares produced, say, by cellular automata, our human visual system is pretty good at giving us an impression of how much complexity is involved. But that works much less well for things like graphs and networks, where in particular there is inevitably much more arbitrariness in their rendering.

I wanted to do more systematic studies, but I expected it was going to be somewhat complicated, and I was in the middle of working on the final stages of design for Version 12 of the Wolfram Language. Meanwhile, Max took it upon himself to create some optimized low-level code. But in the fall of 2018 he was taking a break from graduate school, working at Lyft in Silicon Valley on machine vision for autonomous driving. Still, by January 2019 he had code running, and within a few minutes of trying it out, I was finding things like:

More discoveries

This was going to be interesting. But I was still in the middle of other things, and Max was going to come to the Summer School again—so I put it aside again for a few months.

Then on May 24 Murray Gell-Mann, the inventor of quarks, and a physicist I had known at Caltech, died. And as has become something of a tradition for me, I spent some days writing an obituary piece about him. And in doing that, I began thinking about all those things I had liked so much so long ago in particle physics. But what had happened to them in the past 40 years?

I started looking around on the web. Some things had definitely advanced. The mass of the lambda, that I had always known as 1115 MeV, was now measured as 1115.683 MeV. Calculations that I’d done to a first order of approximation had now been done to three orders. But in general I was shocked, and saddened. Things that had generated so much excitement and had been the pride of particle physics were now barely making it as stubs on Wikipedia. What had happened to this beautiful field? It felt like I was seeing what had once been a bustling and glorious city, now lying almost abandoned, and in some ways in ruins.

Of course, this is often the rhythm of science: some methodological advance sparks a golden age, and once everything easily accessible with that methodology has been done, one is faced with a long, hard slog that can last a century before there is some new methodological advance.

But going to the Summer School in June, I was again thinking about how to do my fundamental physics project.

Max was there. And so—as an instructor—was Jonathan Gorard. Jonathan had first come to the Summer School in 2017, just before his last year as an undergraduate in mathematics (+ theoretical physics, computer science and philosophy) at King’s College London. He’d been publishing papers on various topics since he was 17, most recently on a new algorithm for graph isomorphism. He said that at the Summer School he wanted to work either on cosmology in the context of “Chapter 9”, or on something related to the foundations of mathematics.

I suggested that he try his hand at what I considered something of an old chestnut: finding a good symbolic way to represent and analyze automated proofs, like the one I had done back in 2000 of the simplest axiom system for logic. And though I had no idea at the time, this turned out to be a remarkably fortuitous choice. But as it was, Jonathan threw himself into the project, and produced the seeds of what would become through his later work the Wolfram Language function FindEquationalProof.

Jonathan had come back to the Summer School in 2018 as an instructor, supervising projects on things like infinite lists and algebraic cryptography. And now he was back again as an instructor in 2019, having now also become a graduate student at Cambridge, with a nice fellowship, and nominally in a group doing general relativity.

It had been planned that Jonathan, Max and I would “talk about physics” at the Summer School. I was hopeful, but after so many years a bit pessimistic. I thought my little idea defined a new, immediate path about what one might do. But I still wasn’t convinced there was a “good way to do the project”.

But then we started discussing things. And I started feeling a stronger and stronger sense of responsibility. These ideas needed to be explored. Max and Jonathan were enthusiastic about them. What excuse did I have not to pursue the ideas, and see where they could go? Wouldn’t it be terrible if we failed to find the fundamental theory of physics just because I somehow got put off working on it?

Of course, there were technical, physics issues too. One of the big ones—which had got me stuck back in 2004—was that I’d had difficulty finding examples of rules that both had nontrivial behavior, and showed the property of causal invariance needed to basically “generate a single thread of time”. Why did I care so much about causal invariance? First, because it gave me derivations of both special and general relativity. But philosophically even more important to me, because it avoided something I considered highly undesirable: a view of quantum mechanics in which there is a giant tree of possible histories, with no way to choose between them.

Jonathan had said a few times early in the Summer School that he didn’t see why I was so concerned about causal invariance. I kept on pushing back. Then one day we went on a long walk, and Jonathan explained an idea he had (which, knowing him, he may have just come up with right there). What if the underlying rules didn’t need to have causal invariance, because us observers would implicitly add it just by the way we analyze things?

What was this idea really? It was an application of things Jonathan knew from working on automated theorem proving, mixing in ideas from general relativity, and applying them to the foundations of quantum mechanics. (Basically, his concept was that we observers, because we’re branching just like the system we’re observing, effectively define “lemmas” to help us make sense of what we observe, and these lead to effective rules that have causal invariance.)

At first I was skeptical. But the issue with not finding enough causal invariance had been a blocker 16 years earlier. And it felt like a big weight lifted if that issue could be removed. So by the end of the walk I was convinced that, yes, it was worth looking at rules even if they were not explicitly causal invariant, because they could still be “saved” by the “Jonathan Interpretation of Quantum Mechanics” as I called it (Jonathan prefers the more formal term “completion interpretation”, referring to the process of creating lemmas, which is called “completion” in automated theorem proving). As it turns out, the jury is still out on whether causal invariance is intrinsic or “in the eye of the observer”. But Jonathan’s idea was crucial as far as I was concerned in clearing the way to exploring these models without first doing a giant search for causal invariance.

It took another month or so, but finally on August 10 I sent back to Jonathan and Max a picture we had taken, saying “The origin picture … and …. *I’m finally ready to get to work*!”

The origin picture

Oh My Gosh, It’s Actually Going to Work!

August 29, 2019, was a big birthday for me. Shockingly quickly I had gone from being “the youngest person in the room” to the oldest. But now I was turning 60. I did a “looking to the future” livestream that day, and a few days later I gave a speech at my birthday party. And both times I said that now, finally, I was going to make a serious effort on my project to find the fundamental theory of physics. And to myself I was saying “This is something I’ve been talking about doing for more than half my life; if I don’t do it now, it’s time to give up on the idea that I ever will.”

“Maybe it’ll work, maybe it won’t”, I was thinking to myself. “But this is sort of the last chance for me to find out, so let’s give it a try.” And so we started. My original plan was in a sense fairly modest. I wanted to take the things I’d already investigated, and “spruce them up” in the context of my new models—then get everything out there for other people to help in what I expected would be a long, hard grind towards a fundamental theory of physics.

The first step was to build tools. Nice, streamlined Wolfram Language tools. Max had already written some core simulation functions. But now it was a question of figuring out about visualizations, enumerations and various forms of analysis. How do you best display a hypergraph? What’s the right way to enumerate rules? And so on.

But by the middle of October we had the basics, and by the end of October I’d pretty much cleared my calendar of everything but the “bare CEO essentials”, and was ready to just “do physics” for a while. It felt a little like being back where I was in the 1970s. Except for one huge difference: now I had the whole technology tower I’d spent most of the intervening 40 years building. No scratch paper. No handwritten calculations. Just notebooks and Wolfram Language. A medium for thinking directly in computational terms.

And it was exhilarating. Everything went so fast. I was basically forming my thoughts directly in the language, typing as I went, then immediately having the computer show me the results. It felt as if the computer was providing about as direct an amplification of my cognitive abilities as I could imagine. And I even started to feel a bit better about the multi-decade delay in the project. Because I realized that even if my only goal from the beginning had been to just do this project, my best chance would pretty much have been to build the Wolfram Language first.

There was something that made me nervous, though. Back in 1991 when I started working on A New Kind of Science, I’d also had the experience of rapid discovery. But what had happened then was that I hadn’t been able to stop—and I’d just dug in and gone on and on discovering things, for a decade. Intellectually it had been very rewarding, but personally it was extremely grueling. And I didn’t want to go through anything like that again. So I resolved that instead of going on until we’d “answered all the obvious questions”, we’d just figure out the minimum needed to coherently explain the ideas, then turn it over to the world to share the fun of taking it further.

Pretty soon we started outlining the website. There’d be lots of technical information and exposition. There’d be a Registry of Notable Universes for candidate models we’d identified. To lighten the load of what I thought might be a project with glacially slow progress to report, there’d be “universe swag”. And on the front of the website I was planning to write, a little apologetically: “We’re going to try to find a fundamental theory of physics. It may be the wrong approach, or the wrong century, but we’re going to try anyway”.

But meanwhile I was spending almost every waking hour doing that “trying”. I was looking at thousands of rules, slowly building up intuition. And we were talking about how what I was seeing might relate to things in physics, like space and time and quantum mechanics and general relativity. And it got more and more interesting.

Things I’d thought vaguely about in the past we were now starting to see very explicitly in the rules I was running. We knew enough to know what to look for. But thinking abstractly about something is very different from seeing an actual example. And there were many surprises. So many “I never thought it might do that”s. But having seen examples one could then start to build up an abstract framework. Without the examples one wouldn’t ever have had the imagination to come up with it. But once one saw it, it often seemed maddeningly “obvious”.

Our first big target was to understand the nature of space. How could the mathematical structures that have been used to characterize space emerge from our simple rules? I thought I already knew the basic answer from what I did back in the 1990s. But now I had a more streamlined model, and more streamlined tools, and I wanted to tighten my understanding.

I generated thousands of screenfuls of visualizations:

Screenfuls of visualizations

I think if I had lived a century earlier I would have been a zoologist. And what I was doing here was a kind of zoology: trying to catalog the strange forms and habits of these rules, and identify their families and phyla. It was a glimpse into an unseen part of the computational universe; a view of something there was no particular reason that us humans would have a way to understand. But I was pretty sure that at least some of these rules would connect with things we already knew. And so I started to hunt for examples.

Most of what I do on a daily basis I can do on just one computer. But now I needed to search millions of cases. Conveniently, there’s pretty seamless support for parallel computation in the Wolfram Language. So soon I’d commandeered about 100 cores, and every computation I could immediately parallelize. (I was also set up to use external cloud services, but most of the time I was doing computations that with the 100X speedup were either taking only seconds, and were part of my “interactive thinking loop”, or were easy enough to run overnight on my own machines, with the minor thrill of seeing in the morning what they’d produced.)

Back when I was studying things like cellular automata in the 1980s and 1990s I used to print out endless arrays of little thumbnails, then look through them, and type in the identifiers for ones I thought were worth another look. Now that was all a lot more streamlined, with images in notebooks, selectable with a simple click. But how could I automate actually looking through all these rules?

One of the things I’ve learned from decades of studying the computational universe is to take seriously my mantra “The computational animals are always smarter than you are”. You think you’ve come up with a foolproof test for catching rules that have such-and-such a behavior. Well, some rule will turn out to have a way around it, doing something you never thought about. And what I’ve found is that in the end the best way to have a chance of catching the unexpected is to use the “broadest spectrum” tools one has, which typically means one’s own eyes.

Pretty soon one begins to have a mental classification of the kinds of forms one’s seeing. And if one verbalizes it, one ends up describing them in terms of objects we’re used to (“ball of wool”, “sea urchin”, etc.) And in modern times that suggests a way to get some help: use machine learning that’s been trained, like we have, to distinguish these different kinds of things. And so instead of just making simple arrays of pictures, I often made feature space plots, where forms that “seem similar” were grouped together.

And that meant that in just a glance I could typically see what unexpected outliers there might be. I looked through a particular collection of 79 million rules this way (with just a little additional filtering). First I found this—something that might seem more in line with my childhood interest in space, as in spacecraft, than with space in fundamental physics:


  "WolframModel"][{{1, 2, 3}, {1, 4, 5}} -> {{3, 3, 6}, {6, 6, 5}, {4,
     5, 6}}, {{0, 0, 0}, {0, 0, 0}}, 500, "FinalStatePlot"]

And pretty soon things I also found things like these:


These are not things I could ever guess would be there. But having found them, they can be connected to existing mathematical ideas (in this case, about manifolds). But seeing these examples embedded in so many others that don’t immediately connect to anything we know immediately makes one wonder whether perhaps our existing mathematical ideas can be generalized—and whether maybe this could be the key to understanding how space can emerge from our underlying rules.

Both in its early history, and in modern times, mathematics has been inspired by the natural world. Now we’re seeing it inspired by the computational world. How does one generalize curvature to fractional-dimensional space? What does it mean to have a space with smoothly varying dimension? And so on. They’re elegant and interesting mathematical questions raised by looking at the computational world.

It could have been that everything in the computational world of our models would immediately run into computational irreducibility, and that mathematical ideas would be essentially powerless—as they were when I was studying cellular automata in the 1980s. But by November of last year, it was beginning to become clear that things were different now, and that there was a chance of a bridge between the mathematical traditions of existing theoretical physics and the kinds of things we needed to know about our models.

Once there’s sophisticated mathematics, we can begin to rely on that. But to explore, we still have to use things like our eyes. And that makes visualization critical. But in our models, what’s ultimately there are graphs, or hypergraphs. Nowadays we’ve got good automated tools in the Wolfram Language for coming up with “good” ways to lay out graphs. But it’s always arbitrary. And it would be much better if we could just “intrinsically” understand the graph. But unfortunately I don’t think we humans are really built for that. Or at least I’m not. (Though years ago, before computers could do automated graph layout, I once looked for a human “graph detangler” and found a young student who was spectacularly better than everyone else. Interestingly, she later became a distinguished knitwear designer.)

But to try to help in “understanding” graphs I did have one plan—that actually I’d already hatched when I was first thinking about these things in the early 1990s: use VR to really “get inside” and experience graphs. So now—with VR back in vogue—I decided to give it a try. We’re still working on a fully interactive VR environment for manipulating graphs, but to start off I tried just using VR to explore static graphs. And, yes, it was somewhat useful. But there was a practical problem for me: rapid descent into motion sickness. An occupational hazard, I suppose. But not one I expected in studying fundamental physics.

Given a better understanding of space in our models, we started looking more carefully at things like my old derivation of the Einstein equations for gravity. Jonathan tightened up the formalism and the mathematics. And it began to become clear that it wasn’t just a question of connecting our models to existing mathematical physics: our models were actually clarifying the existing mathematical physics. What had been pure, abstract mathematics relying on potentially arbitrary collections of “axiomatic” assumptions one could now see could arise from much more explicit structures. Oh, and one could check assumptions by just explicitly running things.

Doing something like deriving the Einstein equations from our models isn’t at some level particularly easy. And inevitably it involves a chain of mathematical derivations. Pure mathematicians are often a little horrified by the way physicists tend to “hack through” subtle mathematical issues (“Do these limits really commute?” “Can one uniquely define that parameter?” Etc.). And this was in many ways an extreme example.

But of course we weren’t adrift with no idea whether things were correct—because at least in many cases we could just go and run a model and measure things, and explicitly check what was going on. But I did feel a little bad. Here we were coming up with beautiful mathematical ideas and questions. But all I could do was barbarically hack through them—and I just kept thinking “These things deserve a mathematician who’ll really appreciate them”. Which hopefully in time they’ll get.

As we went through November, we were starting to figure out more and more. And it seemed like every conversation we had, we were coming up with interesting things. I didn’t know where it would all go. But as a committed preserver of data I thought it was time to start recording our conversations, as well as my own experiments and other work on the project. And altogether we’ve so far accumulated 431 hours of recordings.

We’re going to make these recordings available online. And with Wolfram Language speech-to-text it’s easy to process their audio, and to get word clouds that indicate some of the flow of the project:


What Terrible Timing!

So there we were in the middle of February. Things had gone better than I’d ever imagined they could. And we were working intensely to get everything ready to present to the world. We set a date: March 16, 2020. We were planning announcements, technical documents, an 800ish-page book, an extensive website, livestreams, outreach. All the kinds of things needed to launch this as a project, and explain it to people.

But meanwhile—like so many other people—we were watching the developing coronavirus epidemic. I’d asked the data science and biology teams at our company to start curating data and making it available. I’d been looking at some epidemic modeling—some of it even done with cellular automata. I’d noted that the spreading of an epidemic in a human network was bizarrely similar to the growth of geodesic balls in hypergraphs.

What should we do? We kept going, steadily checking off items on our project-management tracking list. But as March 16 approached, it was clear there was now a pandemic. The US began to shut down. I did an AMA on my experience as a 29-year work-from-home CEO. Meetings about physics were now interspersed with meetings about shutting down offices. Numerous people at our company pointed out to me that Isaac Newton had come up with the core ideas for both calculus and his theory of gravity in 1665, when Cambridge University had been closed because of the plague.

I oscillated between thinking that in the midst of such a worldwide crisis it was almost disrespectful to be talking about something like a fundamental theory of physics, and thinking that perhaps people might like an intellectual distraction. But in the end we decided to wait. We’d get everything ready, but then pause.

And after all, I thought, after waiting more than thirty years to do this project, what’s a few more weeks?

What Happens Now

If you’re reading this, it means our project is finally released. And we begin the next stage in the long journey I’ve described here. I can’t help echoing Isaac Newton’s words from the 1686 preface to his Principia: “I heartily beg that what I have done here may be read with forbearance; and that my labors in a subject so difficult may be examined, not so much with a view to censure, as to remedy their defects.”

But the world has changed since then, and now we can send out tweets and do livestreams. I’m thrilled about what we’ve been able to figure out, not least because I consider it so elegant and so intellectually satisfying. Sometimes back when I was doing particle physics, I’d think “That’s a bit hacky, but if that’s how our universe works, so be it”. Now I feel a certain pride that we seem to live in a universe that works in such an elegant way.

Forty years ago I thought I’d spend my life as a physicist. Things didn’t work out that way, and I’m very happy with what happened instead. But now after decades “in the wilderness” I’m back. Not just “doing physics”, but trying to attack the very center of it. I’m quite certain that if I’d spent the past 40 years as a physicist nothing like this would have been possible. It’s one of those cases where it’s almost inevitable that making progress will need that strange combination of having inside knowledge yet “being an outsider”.

Of course, we’re not finished. I think we finally have a path to a fundamental theory of physics. But we’re not there yet. And what I’m hoping now is that we can mount a project that will succeed in getting us there.

It’s going to take physicists, mathematicians, computer scientists and others. It’s going to take ideas and work, and perhaps quite a bit of time. I hope it will be a worldwide effort that can happen across a spectrum of academic and other environments. Most of it will be a decentralized effort.

I personally look forward to continuing to be deeply involved—and I’m hoping that we’ll be able to set up a substantial centralized effort to apply the decades of experience we’ve had in doing highly challenging R&D projects to make progress as rapidly as possible on this project.

It’s been a great privilege for me to be “in the right place at the right time” to discover what we’ve discovered. Physics did so much for me in my early years, and I’m thrilled to have the opportunity to “give something back” so many years later. I can’t wait to see what will develop as we home in on a fundamental theory of physics. But at this stage in my life perhaps my greatest pleasure is to see others get excitement and fulfillment from things I put into the world. And to provide something for the next generation of 12-year-old physics wannabes.

So let’s all go and try to find the fundamental theory of physics together! It’s going to be great!

Stephen Wolfram (2020), "How We Got Here: The Backstory of the Wolfram Physics Project," Stephen Wolfram Writings.
Stephen Wolfram (2020), "How We Got Here: The Backstory of the Wolfram Physics Project," Stephen Wolfram Writings.
Wolfram, Stephen. "How We Got Here: The Backstory of the Wolfram Physics Project." Stephen Wolfram Writings. April 14, 2020.
Wolfram, S. (2020, April 14). How we got here: The backstory of the Wolfram Physics Project. Stephen Wolfram Writings.

Posted in: Big Picture, Computational Science, Historical Perspectives, Life & Times, Physics


  1. Congratulations! This gives me chills…

  2. Hi Steve.. nice bio..
    about “trying to attack the very center of it”

    the centre may be a torus.. not a point;

  3. Okay, challenge accepted: how shall we play?

  4. Congratulations! , finally – long time coming…

  5. I’m bewildered, fascinated and excited … I lack the scientific and math training to follow all the analysis and explanations in the preface, but I am so excited to continue!

  6. Looking forward to where this leads. We must be bold enough to question, but timid enough to know we are enlightened towards progress by participation.

  7. What a fulfilling journey to be part of….mp

  8. I am inspired to see a totally different approach to physics.

  9. Interestingly overwhelming! My favorite part is “”I can’t help echoing Isaac Newton’s words from the 1686 preface to his Principia: “I heartily beg that what I have done here may be read with forbearance; and that my labors in a subject so difficult may be examined, not so much with a view to censure, as to remedy their defects.”” Lets do this guys. Are we already? Go!!!

  10. Let me guess; This fundamental theory of everything may not lie in particle physics domain. What do you guys think?

  11. Wonderful piece. It is amazing how it played out, and with the technology available now thoughts can really flow from the mind and not be hindered in the pursuit of discovery. Looking forward to more insights. Looking forward to the book.

  12. Brilliant! Looking at these problems from a new angle is precisely what needs to be done!

    Good luck – I will follow your progress.

  13. Steve—sounds like the back drop to our conversation traveling from Boston to ATLANTA, your first leg of your trip to Brazil. I am excited for you on something that has been brewing within you for years and for the end product that I am sure will deliver for you and many others. Congrats !!!

  14. If you could take a picture of a black hole from the other side would it be a mirror image?

  15. Congratulations!

  16. Thank you Stephen. Mind appropriately blown.

  17. This seems like the real version Permutation City. I think you’re onto something with computational languages. As you said, programming languages and their libraries just aren’t generic enough yet to create a clean emergence of a level above. Reminds me of something I read about in I am A Strange Loop about Godel incompleteness theorem and how that emerged from complexity created from basic axioms. Machine learning needs to emerge from its static hyper specialized state and become fluid like human thought itself.

  18. I’m so stoked — now to finally learn to use the Wolfram Language!