Wolfram Computation Meets Knowledge

Wolfram Summer School


Jack Heimrath

Science and Technology

Class of 2019


Jack Heimrath graduated from King’s College London with a degree in mathematics and he is currently doing Part III at the University of Cambridge. He is interested in analytic number theory, ergodic theory and the interplay between those two areas of research; for his PhD thesis he intends to study special cases of Sarnak’s Conjecture. His other mathematical interests include additive combinatorics, recreational mathematics, and more recently algebraic geometry. When he is not studying, he enjoys various sports (weightlifting, tennis, jogging and soccer), reading fantasy and playing computer games.

Computational Essay: Continued Fractions

Project: Implementing a LatticePlot function


A complete lattice is an additive subgroup of R^n that is isomorphic to Z^n. The goal of this project is to design a symbolic representation of arbitrary lattices of various dimensions in Wolfram Language and means to visualize tillings and filled vs empty cells to illustrate behavior of complicated systems like cellular automata.

Summary of Results

1. Implementation of a LatticePlot function which generates a 2 dimensional lattice with triangular, parallelogram, or hexagonal cells. Cell shapes can be specified by providing basis vectors. 2. Implementation of CAPlot and CAEvolution functions which generate Cellular Automata on the tillings made available with LatticePlot.

Future Work

The most obvious next step is extending the new functions to work in 3 and more dimensions. Other possible ideas include the ability to choose between von Neumann (the current default) and Moore neighborhoods as well as procedural cell neighborhood detection (currently neighborhoods are hard coded). Finally, the CAPlot and CAEvolution functions take quite long to evaluate so it would be useful to find ways of making them run faster.