AddComb.js

About

AddComb.js is a javascript library for additive combinatorics computation. The code can be found on GitHub. The functions provided in the library can be used synchronously, but du to the sometimes long run times, asynchrounous execution is helpful and easy. This website has four additive combinatorics tools:

  • a function calculator (for a large list of the functions listed here),
  • a sumset calculator (for computing sumsets of a given set, in a given group),
  • a table generator (for doing multiple computations at once and displaying the results in a grid),
  • and a Jupyter-style notebook playground (for interacting with the AddComb.js code directly).
Since the code runs in the user's browser, there is also a tool for checking your computer's computation speed. The documentation for AddComb.js along with test cases and examples can be found in Docs & Tests.

Additive Combinatorics: A Menu of Research Problems

This work is inspired and based on the content of the book, Additive Combinatorics: A Menu of Research Problems, by Dr. Béla Bajnok, who is currently a Professor of Mathematics at Gettysburg College. Below is a word from Professor Bajnok.

This book deals with additive combinatorics, a vibrant area of current mathematical research. Additive combinatorics—an offspring of combinatorial number theory and additive number theory—can be described as the study of combinatorial properties of sumsets (collections of sums with terms from given subsets) in additive structures. For example, given a subset \(A\) in an abelian group \(G\), one can consider the sumset \(A+A\) consisting of all two-term sums of the elements of \(A\), and then ask how small this sumset may be; furthermore, given that \(A+A\) is small, one can examine what can be said about the structure of \(A\).

Additive combinatorics is a rather new field within mathematics that is just now coming to its own; although some of its results have been known for a very long time, many of its most fundamental questions have only been settled recently or are still unsolved. For example, the question about the minimum size of \(A+A\) mentioned above was first determined in groups of prime order by Cauchy in 1813 (then re-discovered by Davenport over a hundred years later), but it has only been determined in the general setting in the twenty-first century. For this and many other reasons, additive combinatorics provides an excellent area for research by students of any background: it has intriguing and promising questions for everyone.

About the Programmers

I (Peter E. Francis) began development on this tool as an undergraduate Mathematics Major at Gettysburg College while taking a research course in 2019. I would like to thank Matthew Torrence who developed an open source version of this program written in Rust and Python, which can be found at https://github.com/Torrencem/addcombq.