Abstract by Jonathon Edevold
Representing Knots in Computers
A knot is defined as a closed, non-self-intersecting curve that is embedded in three dimensions. Knots can be represented using diagrams, which can be transformed via sequences of elementary manipulations called Reidemeister moves. Both knots and Reidemeister moves can be represented using a pair of arrays called extended Gauss code. Extended Gauss code allows for reconstruction of well-defined knots up to topological equivalence. Representing knots this way provides a balance between spatial efficiency and cheap interaction with the knot in an abstract space. Figuring out how to perform Reidemeister moves on Gauss codes provides interesting challenges. Understanding these representations allows us to produce datasets for further studying knots using machine learning techniques.