...

Hi! I’m Dr. Jacob Dennerlein

Mathematics PhD
View my Resumé! Checkout my Github

Biography

About Me

I graduated with my Math PhD from the University of Tennessee, Knoxville on May 20th!

I'm interested in anything that has a good overlap between math and programming. I have strong problem solving skills and a serious drive to push through challenges. I'm also interested in origins of math words and conventions. If you know any interesting etymologies, let me know!

Research

My research focuses on computations in the ring of Witt vectors and canonical liftings of elliptic curves.

I successfully defended my dissertation, Computational Aspects of Mixed-Characteristic Witt Vectors and Denominators in Canonical Liftings of Elliptic Curves, on April 3rd, 2023! You can download it below. The final chapter of my dissertation, which focuses of the structure of the ring of Witt vectors, has been submitted for publishing.

Programming Languages and Tools

I have been programming since I was 11, when my dad taught me the basics of Lua, and I've been learning ever since.

Expert: Python, Sage, LaTeX
Proficient: C, C++, Java, Git
Familiar: OpenCV, R, Javascript, PHP, Lua

Education

Aug 2017 - May 2023 Ph.D. in Mathematics University of Tennessee, Knoxville
Aug 2013 - May 2017 B.S. in Computer Science and Mathematics Murray State University

Work

Aug 2017 - May 2023 Graduate Teaching Associate University of Tennessee, Knoxville
June 2021 - May 2022 C++ & R Programmer for Dr. Nina Fefferman University of Tennessee, Knoxville

Hobbies & Interests

  • Programming
  • Racquetball
  • Video Games
  • Hiking
  • Space
  • Board Games

Projects

Witt Vectors in SageMath

Open-Source Contribution

W_{p,n}(R) View on Github

An implementation of Witt vectors and their operations in SageMath. Includes optimizations from this paper by Dr. Finotti and original research of my own, which is summarized in this paper. The code is functional, but there are still tests and documentation to be written.

Advent of Code 2022

Programming Challenge

Advent of Code 2022 View on Github

From adventofcode.com: "Advent of Code is an Advent calendar of small programming puzzles for a variety of skill sets and skill levels that can be solved in any programming language you like." I completed all 50 problems in 2022 and wrote up some of my thoughts/solutions on the GitHub page.

Advent of Code 2021

Programming Challenge

Advent of Code 2021 View on Github

From adventofcode.com: I completed all 50 problems in 2021 too!

Project Euler

Math/Programming Challenges

Problems Solved View on Github

From projecteuler.net: "Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve." The image above shows the current state of my account. I haven't worked on these problems in a few years, but I would definitely recommend them to most mathematicians! The skills required are in my sweet spot.

Twitch Chat Bot

Volunteer Programming Work

Smiley Face View on Github

This was written for the (now inactive) Twitch streamer bounceyboy in 2020. At the time, he was playing a Super Mario Sunshine challenge run, and wanted a game where the chat would guess how many times Mario died during the run. I reached out to him and built this bot for his chat. You can see it in action here, under the username "honeyskipmaster."

Ultimate Tic-Tac-Toe

Hobby Programming

Smiley Face View on Github

Ultimate Tic-Tac-Toe is a much more interesting version of tic-tac-toe that has you playing on nine different boards simultaneously. Playing on paper gets a little tedious, so I decided to make a computerized version for myself and my friends. It also includes some (poor) netcode that works on a local network.

Toy Interpreter

Hobby Programming

Dollar Sign View on Github

I followed along with the first half of Crafting Interpreters to make this, including doing some of the "extra credit" to expand the language features. I always wanted to understand how the internals of a compiler worked, and Robery Nystrom's explanations were phenomenal. The compiler went from a black box to a clear box after I worked through this book. In fact, I think working through this improved my programming ability, as I now understand what's going on in the compiler's "head" when it throws an error.

Perler Bead Sorter

Hobby Programming

Colored Beads

Perler beads are small, meltable beads that can be used to make art projects. I find them incredibly fun to make things with, but the most common way to buy them is in huge, unsorted buckets. So this project was an attempt to make a sorting machine. I successfully built a prototype using a Raspberry Pi with a camera and an Arduino Uno as a servo microcontroller. I used OpenCV to detect the beads and L*a*b color difference to do the sorting.

Budget Software

Hobby Programming

Dollar Sign

I prefer what's known as envelope budgeting. While there is software available to do this, to get all the features usually requires a monthly fee. I decided that I could easily build the software to do this for me, so I did. It includes automatic monthly budgeting (because I currently get paid monthly) and also interacts with an iPhone automation to automatically add all my card transactions.

Math Research

Computational Aspects of Mixed-Characteristic Witt Vectors

Submitted April 2023.

Download PDF

Abstract: The ring of p-Witt vectors is typically difficult to study computationally, as the sum and product polynomials grow exponentially in both the prime p and the index n. However, some isomorphisms are known, e.g. W(𝔽q) for q = pr is isomorphic the unique unramified extension of the p-adic integers of degree r. In this paper, we find an analogous result for ℤ/pαℤ, including an explicit isomorphism that is computationally useful.

Computational Aspects of Mixed-Characteristic Witt Vectors and Denominators in Canonical Liftings of Elliptic Curves

Doctoral Dissertation (Defended April 3, 2023)

Download PDF

Abstract: Given an ordinary elliptic curve E over a field k of characteristic p, there is an elliptic curve E over the Witt vectors W(k) for which we can lift the Frobenius morphism, called the canonical lifting of E. The Weierstrass coefficients and the elliptic Teichmüller lift of E are given by rational functions over 𝔽p that depend only on the coefficients and points of E. Finotti studied the properties of these rational functions over fields of characteristic p ≥ 5. We investigate the same properties for fields of characteristic 2 and 3, make progress on some conjectures of Finotti, and introduce some conjectures of our own. We also investigate the structure of rings of Witt vectors over arbitrary commutative rings and give a computationally useful isomorphism for Witt vectors over ℤ/pαℤ.

Finiteness of Posets Structured by 2x2 Integer Matrices

Undergraduate Thesis (Presented April 2017)

Download PDF

Abstract: In the late 19th century, Wilhelm Killing discovered a famous classification of the finite-dimensional complex simple Lie algebras. This result was later refined by Élie Cartan and is now referred to as Killing–Cartan classification. This result inspired many other algebraic classification results, and also manifested itself in classifications of seemingly unrelated structures. In this paper we begin an attempt to extend Killing–Cartan to encompass a certain family of ranked partially-ordered sets. We specifically focus on those posets whose structure may be described with a 2×2 integer matrix, and analyze the (in)finiteness of said posets.

Knoxville skyline from Tennessee RiverAppalachianCentrist, CC BY-SA 4.0, via Wikimedia Commons

Don’t hesitate to contact me!

...

Please fill the form - I will response as fast as I can!