# Potential Topics

Here is a list of potential topics. You may also consider browsing topics by tag. First-year students may wish to browse our list of first-year-friendly topics. We have 76 potential topics for you to choose from, or you could create your own! Once you have found a topic, whether a suggested topic or one of your own choosing, please fill out the form to submit a talk proposal.

Remember these topics are meant as suggestions to spark ideas! Feel free to take any topic mentioned here and make it your own. Click each topic for more information.

- Kolmogorov complexity
- secret sharing scheme
- branch prediction
- blockchain
- bloom filter
- forcing
- brachistochrone
- p-adic number
- functional programming
- fuzzy logic
- cake cutting
- dynamical system

### Abstraction in Technical Computing

Scientists, mathematicians, and engineers have an increasing need to write efficient computer programs but they tend to use specific languages for technical computing like Matlab or Mathematica rather than general purpose languages. The suggested reference discusses the properties a general purpose language would need to be able to also handle technical computing – one possibility for allowing efficient technical computing involves a powerful type system and dispatch system to enable generic, staged, and higher-order programming.

**Required** **Background:** First year CS at the level of CS 135 and 136.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

Tech Talks computer science first year friendly polymorphism programming language type theory

### Almost Integers and Pisot Numbers

Sometimes some non-integers like $e^{π} - π = 19.9990999791...$ are curiously close to integers. While often this is just a numerical coincidence, sometimes there is a clear mathematical reason for certain numbers to be almost integers. Pisot numbers, which are special types of algebraic integers, provide a systematic means to construct almost integers that approximate integers at an exponential rate. Of course, Pisot numbers are interesting on their own right and an interested speaker can also venture into the connections to Beta expansions (see the 2nd and 3rd references below), or fractals (see the 4th reference below).

**Required Background:** Basic analysis at the level of 147 and 138, algebra at the level of 145. Any other background depends on the direction the speaker takes with this topic.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra algebraic number number theory recreational mathematics

### Automated Verification of Computational Systems

It was realized in the 1960s that mathematical logic provides a suitable language to formulate properties of programs. This idea was formalized by Hoare who developed *Hoare logic* as a means to prove program correctness. However, this technique didn't apply directly to concurrent programs. An alternative approach called *Temporal Logic* was proposed by Amir Pneuli in 1977 which did provide a means to reason about concurrent programs. This topic studies this and then delves into the fundamental ideas behind model checking.

**Required Background:** Basics of computer science at the level of CS 146, Logic at the level of CS 245.

Possible reference materials for this topic include

Grumberg, O., & Veith, H. (Eds.). (2008). 25 years of model checking: history, achievements, perspectives (Vol. 5000). Springer.

Quick links: Google search, arXiv.org search, propose to present a talk

computer science logic model checking

### Completeness, Incompleteness, and Turing Machines

This topic studies the connection between Gödel’s incompleteness theorems and turing machines and how each implies the other

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

computability computer science incompleteness logic theoretical computer science turing machine

### Complex Event Processing Systems

The ever-increasing amount of information that needs to be processed has led to the development of Complex Event Processing systems such as Apache Storm or Twitter Heron. These systems distribute a workload over many machines in a cluster, and offer both efficiency and fault-tolerance.

Possible reference materials for this topic include

Kulkarni, S., Bhagat, N., Fu, M., Kedigehalli, V., Kellogg, C., Mittal, S., ... & Taneja, S. (2015, May). Twitter heron: Stream processing at scale. In Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data (pp. 239-250). ACM. doi:10.1145/2723372.2742788

Quick links: Google search, arXiv.org search, propose to present a talk

Tech Talks computer science data science distributed system first year friendly parallel computing statistics

### Complexity of Matrix Multiplication

Volker Strassen showed that $n^3$ matrix multiplication was not optimal in 1969. Since then, new algorithms such as Coppersmith-Winograd have further improved the time complexity of matrix multiplication. It is conjectured that matrix multiplication is possible in $O(n^{2+ɛ})$ for any $ɛ>0$, however small. This is one of the few remaining open problems in finite-dimensional linear algebra.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra algorithm computational mathematics computer science group theory linear algebra open problem

### Compressed Sensing

Compressed sensing is about minimizing the information gathered and stored by sensors, reducing the need for file compression later on for transmission. This can reduce costs for certain applications, such as non-visible wavelength cameras.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra information theory linear algebra signal processing statistics

### Constructive Mathematics

Constructive mathematics, or mathematics without the law of the excluded middle, is becoming more popular thanks to connections with computer science, category theory, and topology. Its logical foundations may be initially difficult to grasp for those used to a classical system.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

computability computer science constructive mathematics logic philosophy topology type theory

### Continued Fractions and Hyperbolic Geometry

This topic studies the beautiful connection between continued fractions and the famous Farey tessekation of the hyperbolic plane.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra geometry hyperbolic geometry number theory

### Conway’s Game of Life

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

automaton cellular automaton computer science first year friendly recreational mathematics theoretical computer science

### Costas Arrays

Permutation matrices for which all $\frac{n(n-1)}{2}$ displacements between all pairs of 1s are distinct are known as Costas arrays, and these have important applications in sonar. The Welch construction of Costas arrays uses concepts from number theory, whereas the Lempel-Golomb construction uses concepts from field theory.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra field theory number theory prime number

### Curry–Howard–Lambek Correspondence

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

category theory computer science logic

### Dealing with Missing Data

Data are rarely perfect. Robust data science tools must have ways to deal with missing data. However, this is not always easy. A balance must be struck between performance and convenience.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

Tech Talks computer science data science efficiency first year friendly statistics

### Differential Equations on Fractals

Possible reference materials for this topic include

Robert Strichartz : Differential Equations on Fractals - A tutorial

Quick links: Google search, arXiv.org search, propose to present a talk

analysis differential equation fractal

### Dirichlet's Theorem on Primes in Arithmetic progression

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

analysis analytic number theory complex analysis number theory

### Distribution of Primes Modulo p

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

number theory open problem prime number

### Down with Determinants

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Entropy in Mathematics and Information Theory

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

information theory probability statistics

### Expander Graphs and Applications

Expander graphs are sparse graphs with strong connectivity properties and finds applications in complexity theory, designing of computer networks and the theory of error-correcting codes.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

coding theory complexity theory graph theory theoretical computer science

### Fermi Estimation

Physicist Enrico Fermi was known for his impressive order-of-magnitude estimation. He was famously able to estimate the yield of the Trinity test atomic bomb to about a factor of two. Why is Fermi estimation so useful and accurate? What are the techniques to make better approximations? How can and do scientists, mathematicians, engineers, and others use Fermi estimation in their work?

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

approximation physics statistics

### Galois Field Arithmetic

A Galois field is a finite field and are used in a variety of applications, including in classical coding theory and cryptography algorithms. This topic studies how to efficiently optimize arithmetic in such fields.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra algorithm computer science cryptography efficiency field theory

### Geographic Authentication Schemes

Users often choose passwords that are easy to remember but also easy to guess. Both textual and graphical passwords have failed to provide a viable solution to this usability-security tension. It thus remains a critical challenge in password research to design an authentication scheme that is resilient to guessing attacks while offering good memorability.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

computer science encryption human-computer interaction security

### Geometry and Billiards

The second topic studies which billiard table shapes are optimal.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

classical mechanics differential geometry geometry mechanics physics

### Gillespie Algorithm

The Gillespie Algorithm for stochastic equations is used heavily in a number of fields of applied mathematics, in particular computational systems biology.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algorithm applied mathematics biology computational biology computational mathematics computer science differential equation probability stochastic equation

### Hindley–Milner Type System

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Hyperbolic Geometry

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### IEEE 754-2008: Floating Point Arithmetic

Most programming languages provide a floating-point type. What is floating point, and how does it work? What caveats should programmers be aware of?

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

Tech Talks computational mathematics computer science first year friendly floating point number

### Integrals and Graph Theory

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

analysis combinatorics graph theory integration

### Iterated function systems

Aesthetically appealing fractal art can be created through interesting mathematical processes, including contraction mappings on metric spaces. Several well known fractals can be formalized mathematically and also appreciated visually. A talk on this subject would explore both mathematical and artistic aspects.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

analysis art fractal metric space topology

### Jupyter Notebooks

Jupyter Notebooks are a must-have for any data scientist or engineer. They are available for a wide variety of programming languages, particularly Python.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

Tech Talks data science first year friendly statistics tutorial

### Lattices, Linear Codes, and Invariants

This topic studies sphere packing and the connection to lattices and linear codes.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra coding theory geometry number theory

### Lindenmeyer systems

Originally developed to model plant growth, L-systems are a logical approach to various scientific questions, as well as one of many ways to generate artistically pleasing fractals.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

art biology botany computability computer science fractal logic theoretical computer science

### Lindstrom-Gessel-Viennot Lemma

This topic studeis an interesting connection between combinatorics and determinants.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Low Dimensional Geometry

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

geometric topology geometry multivariate calculus topology

### Markov Equation and Irrational Numbers

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Molecular Set Theory

In 1960, A.F. Bartholomay wrote about a mathematical model of chemical reaction mechanisms using set theory.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

applied mathematics biology category theory chemistry set theory

### Monsky's Theorem

This topic studies the proof of Monsky's theorem that it is not possible to dissect a square into an odd number of triangles of equal area.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra combinatorics geometry

### Optimal Stopping Theory and the Secretary Problem

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

decision theory probability statistics

### P vs. NP

Possible reference materials for this topic include

Arora, Bazak: Computational Complexity

Quick links: Google search, arXiv.org search, propose to present a talk

computability computational complexity computer science open problem theoretical computer science

### Patterns in Primes

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

first year friendly number theory prime number

### Penrose Tilings

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

geometric topology geometry topology

### Plausible Conjectures

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

first year friendly open problem

### Predicate Dispatch

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Presburger Arithmetic

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

computability computational complexity computer science logic theoretical computer science

### Principle of Least Action

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Protein Structure Prediction

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

biology chemistry computer science optimization

### Purely Functional Data Structures

Persistent (or purely function) data structures are those whose operations do not mutate the existing data structure, but rather create a new data structure that might share some state. These data structures are useful because there is no need to copy memory; rather the data structure can be shared among multiple objects. Techniques for making these data structures fast, memory-efficient, or real-time are an active area of research in functional programming.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

computer science data structure functional programming

### Queueing Theory

Queueing theory is the mathematical study of waiting lines, or queues. In queueing theory, a model is constructed so that queue lengths and waiting time can be predicted. Queueing theory is generally considered a branch of operations research because the results are often used when making business decisions about the resources needed to provide a service.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Quivers and Platonic Solids

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra combinatorics geometry graph theory linear algebra representation theory

### Random Walks and Self-Avoiding Walks

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Rational Tangles and Conway's Theorem

Possible reference materials for this topic include

C. C. Adams : The Knot Book: An elementary introduction to the mathematical theory of knots

Quick links: Google search, arXiv.org search, propose to present a talk

geometric topology knot theory topology

### Rental Harmony Theorem

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

economics optimization social choice

### Representation Theory and Voting Theory

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra economics linear algebra representation theory social choice voting theory

### Separating Words Problem

Given two strings, we can write a computer program to tell them apart. A special kind of very simple computer program that accepts or rejects strings, using only a finite number of states while reading the string, is called a deterministic finite automaton. (These deterministic finite automata can also be expressed as a regular expression.) For any two strings of length $n$, there is some deterministic finite automaton (or regular expression) that recognizes one and not the other, and there is some smallest one. In the worst case, it is known (Robson 1989) that any two strings of length $n$ can be separated by an automaton of size $O(n^{2/5} (\log n)^{3/5})$, but this is not known to be optimal. The optimal upper bound remains an open problem.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

automaton computer science open problem theoretical computer science

### Sparse Matrices

Sparse matrices are frequently used in scientific and numerical computation. How do they work? What new findings have there been? Speakers are encouraged to specialize this broad topic to a particular subfield of interest.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra computational mathematics computer science linear algebra

### Sphere Packing, Lattices, and Groups

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

### Symmetric Groups, Young Tableaux and Representation Theory

Possible reference materials for this topic include

Bruce Sagan : The Symmetric Group: Representations, Combinatorial Algorithms, and Symmetric Functions

Quick links: Google search, arXiv.org search, propose to present a talk

algebra group theory representation theory

### Symmetries and their Role in Physics

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

classical mechanics mechanics physics

### The Angel Problem

A game is played by two players called the angel and the devil. It is played on an infinite chessboard (or equivalently the points of a 2D lattice). The angel has a power k (a natural number 1 or higher), specified before the game starts. The board starts empty with the angel at the origin. On each turn, the angel jumps to a different empty square which could be reached by at most k moves of a chess king, i.e. the distance from the starting square is at most k in the infinity norm. The devil, on its turn, may add a block on any single square not containing the angel. The angel may leap over blocked squares, but cannot land on them. The devil wins if the angel is unable to move. The angel wins by surviving indefinitely.

The angel problem is: can an angel with high enough power win?

**Required Background:** Basic analysis at the level of 147 and algebra at the level of 145.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

combinatorial game theory combinatorics game theory research problem

### The Hyperbolic Crochet Coral Reef

Naturally growing coral and crochet share an interesting trait in common: they help visualize hyperbolic planes. This talk might explore aspects of geometry, art and craft, or biology.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

art biology geometry hyperbolic geometry recreational mathematics

### The Jordan Curve Theorem

Quick links: Google search, arXiv.org search, propose to present a talk

algebra algebraic topology geometric topology homology topology

### The Joy of Factoring

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algorithm computer science cryptography number theory quantum algorithm

### The Mathematics of Gerrymandering

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

economics geometry social choice voting theory

### The Nine Point Circle

Quick links: Google search, arXiv.org search, propose to present a talk

### The Riemann Hypothesis

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

number theory open problem prime number

### The Stochastic Lotka-Volterra Equation

The famous Lotka-Volterra equations model the population of a predator and a prey, which are of course closely related. Stochastic variations on the Lotka-Volterra equations can be an illuminating introduction to the methods used to solve stochastic differential equations.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

applied mathematics differential equation ecology stochastic equation

### The Strong Law of Small Numbers

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

first year friendly number theory recreational mathematics

### The Winding Number

Quick links: Google search, arXiv.org search, propose to present a talk

algebra algebraic topology analysis differential geometry geometric topology geometry topology

### Tropical geometry and Computational Biology

Tropical geometry is a combinatorial shadow of algebraic geometry, offering new polyhedral tools to compute invariants of algebraic varieties. It is based on tropical algebra, where the sum of twonumbers is their minimum and the product is their sum. This turnspolynomials into piecewise-linear functions, and their zero sets into polyhedralcomplexes.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algebra algebraic geometry applied mathematics biology computational biology computer science geometry

### Understanding LLVM

The LLVM Compiler Infrastructure Project now powers a wide variety of software, including major programming languages including Rust and Julia, as well as compilers for the popular C and C++ programming languages. Understanding how LLVM works, and being able to read some LLVM bytecode, is extremely useful for optimizing code.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

Tech Talks compiler computer science efficiency first year friendly programming language

### Unique Games Conjecture

The Unique Games Conjecture, if true, implies that many problems that lack exact polynomial time solutions also lack approximate polynomial time solutions. It was formulated by Subhash Khot in 2002 and is still unsolved.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

computational complexity computer science open problem theoretical computer science

### Waring's Problem and writing numbers as sums of powers

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

additive number theory number theory

### What is Area?

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

analysis first year friendly geometry measure theory

### Why are some functions not integrable in terms of elementary functions?

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

analysis first year friendly integration

### Wilf zeilberg method to computer verify combinatorial identities

One of the most exciting mathematical discoveries in the early 1990s was the Wilf-Zeilberger (WZ) algorithm that can be used for proving, evaluating, and discovering identities involving hypergeometric terms automatically by computer. And unlike computerized proof techniques in other areas, the computerized proofs generated by this method provides a *certificate* for the validity of a combinatorial identity, called a *WZ-pair*.

**Required Background**: Combinatorics at the level of Math 249, Calculus at the level of Math 147.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

algorithm combinatorics computer algebra

### Zero-Cost Abstraction

Computer science is, fundamentally, about abstraction and efficiency. A programmer would rather use high-level bricks to build a product than worry about low-level details. Regrettably, the use of high-level bricks often comes at a cost in efficiency, forcing programmers to worry about low-level details. Recently, many programming languages have begun to stress the importance of zero-cost abstractions: ways to construct high-level bricks with zero efficiency cost.

Possible reference materials for this topic include

Quick links: Google search, arXiv.org search, propose to present a talk

Tech Talks abstraction computer science efficiency first year friendly