Spring 2023

This course covers the mathematical foundations of the theory of computation, a branch of mathematics and computer science focused on different models of computation and their ability to solve problems. Possible topics may include: finite state automata and regular expressions; push down automata and context-free grammars; Turing machines and the Church-Turing thesis; computability; undecidability; and Godel's Incompleteness Theorem. The course will also include applications of several of these topics to other areas, particularly the mathematical field of combinatorics.

Spring 2023

Foundational methods and techniques of scientific computing in the mathematical and statistical sciences. This course will cover fundamental computational algorithms aimed toward applications in science and engineering. Students will implement algorithms, and visualize and validate their outcomes. Further, students will be introduced to and implement best programming practices.

Fall 2022

Functions of one variable, limits, and continuity. The derivative and the definite integral with applications.

Fall 2022

This course is an introduction to abstract mathematics through the lens of discrete mathematics, a field centered on the study of mathematical objects such as sets, functions, and graphs. We will learn many techniques that allow one to rigorously prove mathematical facts, and we will apply those techniques to the study of discrete mathematics. Emphasis is placed on logical, abstract thinking and clear and precise mathematical writing.

Spring 2022

Permutations and combinations, recurrence relations, inclusion and exclusion, Polya's theory of counting, graph theory, transport networks, matching theory.

Spring 2022

Foundational methods and techniques of scientific computing in the mathematical and statistical sciences. This course will cover fundamental computational algorithms aimed toward applications in science and engineering. Students will implement algorithms, and visualize and validate their outcomes. Further, students will be introduced to and implement best programming practices.

Spring 2021

Functions of one variable, limits, and continuity. The derivative and the definite integral with applications.

Spring 2021

Foundational methods and techniques of scientific computing in the mathematical and statistical sciences. This course will cover fundamental computational algorithms aimed toward applications in science and engineering. Students will implement algorithms, and visualize and validate their outcomes. Further, students will be introduced to and implement best programming practices.

Fall 2020

Functions of one variable, limits, and continuity. The derivative and the definite integral with applications.

Fall 2020

This course is an introduction to abstract mathematics through the lens of discrete mathematics, a field centered on the study of mathematical objects such as sets, functions, and graphs. We will learn many techniques that allow one to rigorously prove mathematical facts, and we will apply those techniques to the study of discrete mathematics. Emphasis is placed on logical, abstract thinking and clear and precise mathematical writing.

Fall 2019

This course is an introduction to abstract mathematics through the lens of discrete mathematics, a field centered on the study of mathematical objects such as sets, functions, and graphs. We will learn many techniques that allow one to rigorously prove mathematical facts, and we will apply those techniques to the study of discrete mathematics. Emphasis is placed on logical, abstract thinking and clear and precise mathematical writing.

Fall 2019

The main theme of this course is foundational linear algebra considered from a numerical viewpoint. We focus on solutions of linear systems of equations, eigenvalues and eigenvectors, and transformations. The course emphasizes and illustrates proof and numerical implementation using problems arising in applications. Multivariable calculus and linear algebra are prerequisites.

Spring 2019

Spring 2019

The main theme of this course is foundational linear algebra considered from a numerical viewpoint. We focus on solutions of linear systems of equations, eigenvalues and eigenvectors, and transformations. The course emphasizes and illustrates proof and numerical implementation using problems arising in applications. Multivariable calculus and linear algebra are prerequisites.

Fall 2018

Spring 2018 (Dartmouth College)

Math 60 is an honors version of Math 20. It covers the material of Math 20 but in more depth and from a much more theoretical perspective, with an emphasis on formal proofs. Several additional topics (including generating functions, branching processes, random walks) are added.

Summer 2017 (Dartmouth College)

Our capacity to fathom the world around us hinges on our ability to understand quantities which are inherently unpredictable. Therefore, in order to gain more accurate mathematical models of the natural world we must incorporate probability into the mix. This course will serve as an introduction to the foundations of probability theory. Topics covered will include some of the following: discrete and continuous random variables, random vectors, multivariate distributions, expectations; independence, conditioning, conditional distributions and expectations; strong law of large numbers and the central limit theorem; random walks and Markov chains.

Summer 2017 (Dartmouth College)

This course will provide an introduction to fundamental algebraic structures, and may include significant applications. The majority of the course will consist of an introduction to the basic algebraic structures of groups and rings. Additional work will consist either of the development of further algebraic structures or applications of the previously developed theory to areas such as coding theory or crystallography.

Spring 2017 (Dartmouth College)

In this course we'll learn about Language Theory as a tool for solving combinatorial problems. The course will cover many classical topics---finite automata, regular automata, and context-free grammars---as well as a selection of more advanced topics, including transducers, Ogden's Lemma, and decidability problems. Along the way, we'll present many applications of language theory to combinatorial problems.

Winter 2017 (Dartmouth College)

Combinatorics is the study of structures in mathematics. This course starts by developing basic set theory and counting principles, and proceeds to the study of graphs, permutations, lattice walks, and more. Other topics that include proof techniques (induction, etc.), probability, and generating functions.

Fall 2016 (Dartmouth College)

This course is a sequel to Math 8 and provides an introduction to calculus of vector-valued functions. Topics include differentiation and integration of parametrically defined functions with interpretations of velocity, acceleration, arc length and curvature. Other topics include iterated, double, triple and surface integrals including change of coordinates. The remainder of the course is devoted to vector fields, line integrals, Green's theorem, curl and divergence, and Stokes' theorem.

Spring 2016 (Dartmouth College)

This course presents the fundamental concepts and applications of linear algebra with emphasis on Euclidean space. Significant goals of the course are that the student develop the ability to perform meaningful computations and to write accurate proofs. Topics include bases, subspaces, dimension, determinants, characteristic polynomials, eigenvalues, eigenvectors, and especially matrix representations of linear transformations and change of basis. Applications may be drawn from areas such as optimization, statistics, biology, physics, and signal processing.

Winter 2016 (Dartmouth College)

This course starts by covering the symbolic method of Flajolet and Sedgewick, the asymptotic analysis of generating functions, and selected applications to combinatorial problems.

Fall 2015 (Dartmouth College)

This course can be viewed as equivalent to Math 13, but is designed especially for first-year students who have successfully completed a BC calculus curriculum in secondary school. In particular, as part of its syllabus it includes most of the multivariable calculus material present in MATH 8. Topics include vector geometry, equations of lines and planes, and space curves (velocity, acceleration, arclength), limits and continuity, partial derivatives, tangent planes and differentials, the Chain Rule, directional derivatives and applications, and optimization problems. It continues with multiple integration, vector fields, line integrals, and finishes with a study of Green's and Stokes' theorem.

2011-2015 (University of Florida)

Notes from a few of the courses that I took as a graduate student are available.