Above the Fold: Mathematica Transforms Ancient Art of Origami

"The wonderful thing about using Mathematica is that it is so versatile, and one can move seamlessly among different types of computation."

Robert J. Lang is a master of mathematical origami. He has cataloged and diagrammed more than 500 designs, including a series of math-inspired tessellations. He's also the author of a number of origami books, articles and videos, such as Folding Paper: The Infinite Possibilities of Origami.

At the heart of Lang's work is the understanding that mathematics is ideal for describing the fundamental rules of origami and that Mathematica allows him "to write code in a way that best fits the particular problem at hand."

To realize his artistic visions, Lang uses Mathematica in many ways: to set up and solve mathematical equations that define the forms he wants, to compute the coordinates of vertices in crease patterns and to carry out algebraic analysis and check any analysis he does by hand.

One of his favorite works, "3^7 Hyperbolic Limit," is folded from a single, round, serrated-edge sheet of paper and is based on a tiling of hexagons and heptagons in the hyperbolic plane. The design was originally generated in Mathematica using the L2Primitives package and later turned into an origami tessellation by Lang.

Starting with Mathematica 5, Lang began developing Tessellatica—a Mathematica package inspired by Combinatorica and other Mathematica packages—to design origami tessellations. Originally created for private use, Lang says he always envisioned that he would eventually release the package publicly. Toward the end of 2014, he plans to do just that.

Lang credits Mathematica for not only making Tessallatica possible, but for making it easy to write clear and readable code, an essential part of the package he's been working with and using for over a decade. "Mathematica supports a wide range of programming models, so I can mix and match classic procedural, list-processing, functional programming, pattern-matching and more," says Lang.

Mathematica's versatility is also essential to his work. He adds, "I can carry out analytic analysis, then do numerical computation, then 3D rendering, then file import and export and easily move back and forth between all of these activities."