# Project: Visualizing Fractals Using 3D Printing

**Project supervisor:** Olga Lukina

**Description:** Fractals are self-similar patterns that are created by repeating a geometric construction over and over at smaller and smaller scales. Patterns with fractal characteristics occur naturally in nature, for example, a snowflake or a leaf of a plant may have a structure resembling fractals. In mathematics, we can construct a variety of fractals using iterated function systems, or using substitutions. During this project we will use 3D printing to visualize simple fractals in three dimensions.

**Prerequisites:** Math 210. Some familiarity with computational packages such as Mathematica or Maple is preferred, but not required.

# Project: Destructive Topology: Slicing Surfaces in VR

**Project supervisor:** David Dumas

**Description:** Closed surfaces (like the torus shown above) can be constructed by stitching together the sides of a polygon according to a certain pattern. However, it can be difficult to visualize what a pattern drawn inside the polygon would look like when wrapped around the surface, or conversely, what a design on the surface would look like when unwrapped to the flat polygon.

The purpose of this project is to develop a virtual reality mathematical visualization and teaching tool that will allow users to explore this correspondence (between flat polygons and curved surfaces). Building on a prototype developed in Unity 3D by Professor Dumas, the student researchers in this project will create a virtual surface laboratory where the user can slice, stitch, paint, and manipulate surfaces in space while seeing the same operations performed on the corresponding flat polygons.

**Prerequisites:** Some 3D graphics programming experience is required. The ideal candidate would have experience with the Unity 3D engine, would be familiar with software version control systems (e.g. git), and would have taken a linear algebra course.

# Project: Subrings of ℤ^{n}

**Project supervisor:** Ramin Takloo-Bighash

**Description:** The set of all n-dimensional integer vectors, denoted ℤ^{n}, under componentwise addition is a commutative group. It is not very hard to determine all subgroups of ℤ^{n}, and in fact to count the number of subgroups which have index equal to a fixed integer *k*.

One can also think of ℤ^{n} as a ring equipped with componentwise addition and multiplication. The question of understanding subrings of ℤ^{n} has baffled mathematicians for a few decades. More generally, one can consider those rings *R* which are isomorphic to ℤ^{n} as additive groups, but have other multiplicative structures, and ask to understand their subrings. The only cases of these problems that are reasonably well understood are for n ≤ 5 (by works due to Manjul Bhargava and his collaborators, as well as Kaplan, Marcinek, and Takloo-Bighash, using completely different methods).

These problems have produced a large number of projects that are accessible via computer-based investigation. Here are two sample projects:

- There is reason to believe that the degenerate ring ℤ
^{n}/(x^{n}) has the highest number of subrings of a given index among all rings that are additively isomorphic to ℤ^{n}. Provide numerical evidence for this expectation. - Given a prime number p, let 𝔽
_{p}be the field with p elements. Investigate the number of subrings of 𝔽_{p}[x]/(x^{n}). How does it compare to the number of subrings of 𝔽_{p}^{n}as n and p vary?

**Prerequisites:** Abstract algebra I (Math 330) and Foundations of Number Theory (Math 435) or Codes and Cryptography (MCS 425).

# Project: Robot Kinematics

**Project supervisor:**Julius Ross

**Description:** Robot kinematics considers the following kinds of problems. Imagine a robot arm made up of a number of straight segments joined together by hinges. One end of the arm is fixed on a table and at the other end is a tip (or finger) of some kind. Suppose the robot wants to move its finger to a give point, then what angles must it choose for each of the joints? Is it the case that the robot can move its finger to any position, or are there some that it cannot reach? What about if it wants to move its finger to a given position and make it point in a given direction? One can ask this question in either two dimensions or three dimensions (or even more!).

This project will consider these questions by understanding the problem as finding solutions to a system of simultaneous polynomial equations, which then becomes a problem in numerical algebraic geometry.

**Prerequisites:** Math 310 or Math 320 (Linear Algebra).