Norm Margolus

I am currently a Research Affiliate at the MIT Computer Science and Artificial Intelligence Laboratory. My CV.

My first love is the physics of information and computation, and the informational modeling of physics. This was the subject of my PhD thesis (published version, searchable version), and has been the focus of most of my subsequent research. I was privileged to work with Edward Fredkin, Tom Toffoli and Charles Bennett at the MIT Information Mechanics Group between 1980 and 1995, first as a PhD student, and then as a Research Scientist.

At MIT, in addition to (and often instead of) more theoretical work on physics and on reversible cellular automata, I worked with Tom Toffoli on the design and use of Cellular Automata Machines (book), and led the CAM-8 CA machine project, working closely with Tom. CAM-8 was a spatially-organized mesh-architecture multiprocessor that provided a tool for investigating the possibilities of the kind of large-scale fine-grained parallelism that is available in nature. It was successful in this, but DARPA canceled all of its parallel processing projects before CAM-8 machines had been built that were large enough to let us see into the previously inaccessible "band of the computational spectrum" that was our true target. My later SPACERAM design generalized CAM-8's architecture into an almost-ideally-efficient building-block for spatial SIMD computations and bit-mapped virtual reality, but has not yet been built.

My current research is again focused on theoretical questions at the interface between physics and computation. A finite physical system with finite energy has only a finite set of distinct (mutually orthogonal) quantum states, and changes between distinct states at only a finite rate. This finite-state character makes all physical systems close kin to digital computers, with fundamental physical quantities such as energy, momentum and action being generalizations of fundamental computing quantities. Classical spacetime is effectively discrete, because finite energy and momentum play the role of finite bandwidth in rate-limiting distinctness in the quantum wavefunction. Quantum uncertainty reflects a continuous description of discrete quantities. Classical finite-state models can play the same foundational role in dynamics that they do in statistical mechanics.

Some of my papers:

Physics and Computation

Physics-Like Models of Computation (from 1984, in Physica D, page 81).
Quantum Computation (from 1986, in New Techniques and Ideas in Quantum Measurement Theory, edited by Daniel Greenberger).
Physics and Computation (from 1987, MIT PhD thesis).
Cellular Automata Machines (with Toffoli, book published in 1987 by MIT Press).
Invertible Cellular Automata (with Toffoli, from 1990, in Physica D, page 229).
Parallel quantum computation (from 1990, in Complexity, Entropy, and the Physics of Information, edited by Wojciech Zurek).
A Bridge of Bits (from 1993, in Proceedings of the Workshop on Physics and Computation, edited by Doug Matzke).
Elementary gates for quantum computation (with Barenco et. al, from 1995, in Physical Review A, page 3457).
The maximum speed of dynamical evolution (with Levitin, from a conference in 1996, appears in Physica D, page 188, 1998).
Crystalline Computation (from 1999, in Feynman and Computation, edited by Anthony Hey).
Universal cellular automata based on the collisions of soft spheres (from a conference in 1999, appears in Collision-Based Computing, edited by Andrew Adamatzky, page 107, 2002; and in New Constructions in Cellular Automata, edited by David Griffeath and Cristopher Moore, page 231, 2003).
Looking at Nature as a Computer (from a workshop in 2001, appears in International Journal of Theoretical Physics 42:2, page 309, 2003).
Mechanical Systems that are both Classical and Quantum (based on a talk given at the Unconventional Computation Workshop, Santa Fe, March 22 2007). Roger Critchlow turned one of the examples in this paper into a cute quantum/classical clock demonstration in which the exact continuous motion of the clock's hands is displayed as a continuously evolving superposition of integer-time states.
Quantum emulation of classical dynamics (2011, provides an isomorphism between classical finite state dynamics and quantum finite-energy dynamics).
The ideal energy of classical lattice dynamics (2015, uses bounds on distinct change allowed by energy and momentum to define ideal energy and momentum for finite-state classical systems).
Finite-state classical mechanics (2018, discusses how a reversible lattice gas evolution can be equivalent to discrete samples of a continuous classical mechanical evolution, with energy and momentum tied to state change in a realistic manner. Fixing classical mechanics to be more realistic informationally and energetically is foundational for mechanics).
Counting distinct states in physical dynamics (2021. Counting is as fundamental in dynamics as it is in statistical mechanics -- it defines basic quantities. Counting distinct states refines our understanding of uncertainty and measurement and defines a finite classical resolution for space and time. Classical mechanics should be treated as maximally distinct, not infinitely distinct, and the least action principle counts distinct motion).

Lattice Architectures

Cellular-automata supercomputers for fluid dynamics modeling (with Toffoli and Vichniac, from 1986, in Physical Review Letters, page 1694).
Cellular Automata Machines (with Toffoli, book published in 1987 by MIT Press).
CAM-8: a computer architecture based on cellular automata (from 1993, in Pattern Formation and Lattice-Gas Automata, edited by A. Lawniczak and R. Kapral).
An FPGA architecture for DRAM-based systolic computations (from 1997, in Proceedings of the IEEE Workshop on FPGAs for Custom Computing Machines, edited by Arnold et. al., page 2).
An Embedded DRAM Architecture for Large-Scale Spatial-Lattice Computations (from 2000, in The 27th Annual International Symposium on Computer Architecture, page 149).
Mechanism for efficient data access and communication in parallel computations on an emulated spatial lattice (United States Patent 6,205,533 applied for in 1999, issued in 2001).


Emulating Physics: Cellular Automata that exhibit finite-state, locality, invertibility and conservation laws (a talk given at the Computing Beyond Silicon Summer School, CalTech, June 24, 2002).
Physical Worlds: Cellular Automata with computation universality at small and large scales (a talk given at the Computing Beyond Silicon Summer School, CalTech, June 25, 2002).
Spatial Computers: Architectures and algorithms for large-scale spatial computations (a talk given at the Computing Beyond Silicon Summer School, CalTech, June 26, 2002).
Nature as Computer / Computer as Physics: Physical concepts enter Computer Science and computer concepts enter Physics (a talk given at the Computing Beyond Silicon Summer School, CalTech, June 27, 2002).

Some Lattice Gas Movies

The models depicted in these movies are discussed in the paper "Crystalline Computation" listed above, and in the lecture "Emulating Physics." All simulations were performed on CAM-8.

A cautionary tale...

Superman 144 from Superman 144, April 1961

email: nhm at