Teaching

Below you can find a list of courses I am currently teaching as well as courses I have taught in the past. Courses marked with a * are new courses I have developed.

Current Courses (Tufts University, Fall 2026)

MATH 166 – Statistics

Course Description: Whenever we estimate a quantity from data, we have to ask how good the estimate is. How large is the error? How confident can we be in the result? Is an observed effect real, or could it be due to chance? This course covers the mathematical foundations of statistics that answer these questions: how to construct estimators, how to quantify their uncertainty, and how to draw conclusions from data.

Topics include a review of probability, including the law of large numbers and the central limit theorem; the basics of statistical inference; estimation of distribution functions and statistical functionals; the method of moments and maximum likelihood estimation; bias, variance, and mean squared error; confidence intervals and the delta method; hypothesis testing and p-values; tests for independence; Bayesian inference; and linear and nonparametric regression.

We study each topic from two angles: mathematically, by deriving estimators and proving their properties, and computationally, by using simulations in Python, MATLAB, or R to check analytical results. There are two midterm exams and a cumulative final exam.

Prerequisites: MATH 165 or EE 104 (credit or concurrent enrollment), or graduate standing.

Textbook: Wasserman, All of Statistics, Springer (2005).

Syllabus: The syllabus is posted on Canvas.

Class Time & Place: MW 4:30PM–5:45PM in Joyce Cummings Center (JCC), Room 180

Office Hours: MW 2:00PM–3:00PM or by appointment (andreas.mang@tufts.edu)

Code examples are available at github.com/andreasmang/stan.

Upcoming Courses (Tufts University, Spring 2027)

MATH 126 / CS 126 – Numerical Linear Algebra

Course Description: Fitting a model to data, simulating diffusion, or reconstructing a CT image all lead to solving Ax = b or computing the eigenvalues of a matrix. On a computer, the matrices are large and every operation is rounded. This raises questions that you do not see in a first course in linear algebra: How much work does an algorithm need? How accurate is the computed answer? Is the problem itself sensitive, or is the algorithm the issue? In this course, we develop, analyze, and implement algorithms that answer them.

Topics include floating-point arithmetic, norms, and condition numbers; stability of algorithms and backward error analysis; direct methods for linear systems (LU factorization with pivoting, Cholesky factorization); QR factorization and least-squares problems; the singular value decomposition; algorithms for eigenvalue problems (power iteration, inverse iteration, the QR algorithm); and iterative methods for large, sparse systems (Jacobi, Gauss–Seidel, GMRES, conjugate gradients). We will also look at connections to optimization and at randomized algorithms such as the randomized SVD.

We study each topic from two angles: mathematically, by deriving algorithms and proving that they work, and computationally, by implementing and testing them in MATLAB, Python, or Julia. Instead of a final exam, students complete a project in a small group and present it at the end of the semester.

Prerequisites: MATH 70 or 72 and CS 11 (recommended).

Textbooks: Börgers, Introduction to Numerical Linear Algebra, SIAM (2022); Trefethen and Bau, Numerical Linear Algebra, SIAM (2022); Boyd and Vandenberghe, Introduction to Applied Linear Algebra, Cambridge (2018).

Syllabus: The syllabus will be posted on Canvas at the start of the semester.

Class Time & Place: TBD

Office Hours: TBD

Code examples will be available at github.com/andreasmang/alan.

Past Courses (University of Houston)

Graduate Courses

MATH 6397 – Computational and Mathematical Methods in Data Science*

Rapid advancements in machine learning and data science have been fueled by significant advances in computing. In the age of big data, there is a push to integrate model-based and data-driven frameworks to enable real-time decision-making. This leads to the notion of digital-twin technologies. This course provides students with the mathematical background needed to analyze, implement, and further develop numerical methods at the heart of data-enabled sciences. It is geared towards students who are interested in strengthening their theoretical foundation and honing their skills as a computational scientist and computational mathematician in the emerging field of data science and machine learning. We will review traditional approaches and explore state-of-the-art methods. This course will be a hands-on experience; while the classes will cover both theory and implementation aspects, the main focus of the assignments will be on implementation aspects. Students will learn how to write mathematical code to solve data science problems. The focus is not to apply existing methods but rather to understand the foundational concepts by implementing mathematically sound methods from scratch.

Semesters taught:

Semester Syllabus
Fall 2025 Syllabus (PDF)
Spring 2024 Syllabus (PDF)
MATH 6397 – Bayesian Inverse Problems and UQ*

Inverse problems are of paramount importance and can be found in virtually all scientific disciplines with applications ranging from medicine, geophysics, to engineering. This course covers the mathematical background needed to analyze and further develop numerical methods for Bayesian (statistical) inverse problems and uncertainty quantification. First, we will revisit some theoretical foundations of inverse problems and strategies to their solution. Subsequently, we will transition to topics surrounding statistical inverse problems. Potential topics include relevant theory from discrete probability; statistical computing; sampling methods; modern regularization techniques; prior modeling; MAP estimation and Laplace approximation; variational inference; optimization under uncertainty; matrix data and latent factor models; and dimensionality reduction.

Semesters taught:

Semester Syllabus
Spring 2023 Syllabus (PDF)
MATH 6397 – Applied Inverse Problems*

Inverse problems are of paramount importance and can be found in virtually all scientific disciplines with applications ranging from medicine, geophysics, to engineering. This course introduces the theoretical foundations of inverse problems and strategies to their numerical solution. We will consider applications in data and physical sciences. Starting from first principles we will discuss how to design and analyze direct and iterative methods for efficiently solving different classes of inverse problems. Students will get to explore the design of computational strategies to solve these problems. Examples studied in the class will be selected from different areas of computational sciences and engineering, including deblurring, imaging, and continuum mechanics.

Semesters taught:

Semester Syllabus
Fall 2020 Syllabus (PDF)
MATH 6367 – Optimization Theory II

The course will start with some modern topics in convex optimization. We will discuss splitting methods, primal dual methods, and Bregman iterative methods. In addition, this course provides an introduction to the modern control theory of dynamic systems, emphasizing key results and characteristics. It covers both linear and nonlinear systems in continuous-time and discrete-time formats, focusing on finite state spaces within deterministic and stochastic frameworks. The course also addresses continuous-time stochastic control problems commonly encountered in modern control theory, as well as discrete-time Markovian decision problems typical in operations research. Additionally, simulation-based approximation techniques for dynamic programming are discussed.

Semesters taught:

Semester Syllabus
Spring 2025 Syllabus (PDF)
MATH 6366 – Optimization Theory I

This course introduces the theoretical foundations of optimization and strategies to its numerical solution. Starting from first principles we will discuss how to design and analyze simple iterative methods for efficiently solving a broad class of optimization problems. While the field of optimization is vast, there exists a small set of methods that achieve optimal performance. We will assess the efficiency of these techniques on prototypical optimization problems. This class will walk through classic results and provide a gateway to cutting edge research in the field.

Code examples are available at github.com/andreasmang/optik.

Semesters taught:

Semester Syllabus
Fall 2023 Syllabus (PDF)
Fall 2022 Syllabus (PDF)
Fall 2021 Syllabus (PDF)
Fall 2020 Syllabus (PDF)
Fall 2019 Syllabus (PDF)
Fall 2018 Syllabus (PDF)

Undergraduate Courses

MATH 3336 – Discrete Mathematics

This course is an introduction to proofs and the abstract approach that characterizes upper-level mathematics courses. It serves as a transition to advanced mathematics, and ideally is taken after the initial calculus sequence and before (or concurrently with) mid-level mathematics courses. The objective is for students to develop the skills and techniques they will need as they study any type of advanced mathematics, whether pure or applied. In particular, this course covers topics that are ubiquitous throughout mathematics (e.g., logic, sets, relations, functions) and helps prepare students for classes such as Real Analysis, Abstract Algebra, and Advanced Linear Algebra. The course provides a careful treatment of logic, proofs, sets, functions, and mathematical reasoning. Using this basis, counting techniques are studied thoroughly.

Semesters taught:

Semester Syllabus
Spring 2022 Syllabus (PDF)
Fall 2021 Syllabus (PDF)
Spring 2021 Syllabus (PDF)
MATH 2318 / MATH 2331 – Linear Algebra

Linear Algebra, rich in applications within mathematics and many other disciplines, is potentially the most interesting and worthwhile undergraduate mathematics course you will complete. For many of you this is the first course to begin bridging the gap between concrete computations and abstract reasoning. Later in your career, computers will do the calculations, but you will have to choose the calculations, know how to interpret the results, and then explain the results to others. Understanding the notions of vector spaces, linear (in)dependence, dimension, and linear transformations will help you make sense of matrix manipulations at a deeper level, clarifying the underlying structure. A key aim of this course is that you will not only be equipped with a computational ability but with the ability to use these notions in their natural scientific contexts, and with an appreciation of their mathematical beauty and power.

Textbook: Linear Algebra and its Applications by David C. Lay (4th Ed. for MATH 2331; 6th Ed. for MATH 2318).

Code examples are available at github.com/andreasmang/axisb.

Semesters taught:

Semester Syllabus
Spring 2024 (MATH 2318) Syllabus (PDF)
Spring 2023 (MATH 2318) Syllabus (PDF)
Spring 2020 (MATH 2331) Syllabus (PDF)
Spring 2019 (MATH 2331) Syllabus (PDF)
Spring 2018 (MATH 2331) Syllabus (PDF)
Fall 2017 (MATH 2331) Syllabus (PDF)

References

Below you can find a few references that I recommend related to either my research or courses I teach.

Inverse Problems
  • L. Tenorio, An Introduction to Data Analysis and Uncertainty Quantification for Inverse Problems, SIAM, 2017.
  • A. Kirsch, An Introduction to the Mathematical Theory of Inverse Problems, Springer, 1996.
  • C. Vogel, Computational Inverse Problems, SIAM, 2002.
  • J. Bardsley, Computational Uncertainty Quantification for Inverse Problems, SIAM, 2018.
  • P.C. Hansen, Discrete Inverse Problems: Insight and Algorithms, SIAM, 2010.
  • A. Tarantola, Inverse Problem Theory and Methods for Model Parameter Estimation, SIAM, 2004.
  • P.C. Hansen, Rank-Deficient and Discrete Ill-Posed Problems, SIAM, 1998.
  • R. C. Aster, B. Borchers, and C. H. Thurber, Parameter Estimation and Inverse Problems, Elsevier, 2019.
  • J. Kaipio and E. Somersalo, Statistical and Computational Inverse Problems, Springer, 2005.
Optimization
  • L. D. Berkovitz, Convexity and Optimization in R^n, John Wiley and Sons, 2002.
  • S. Boyd and L. Vandenberghe, Convex Optimization, Cambridge University Press, 2004.
  • A. Beck, Introduction to Nonlinear Optimization, SIAM, 2014.
  • Y. Nesterov, Lectures on Convex Optimization, Springer, 2018.
  • J. Nocedal and S. J. Wright, Numerical Optimization, Springer, 2006.
  • M. Hinze, R. Pinnau, M. Ulbrich, and S. Ulbrich, Optimization with PDE Constraints, Springer, 2009.
  • M. D. Gunzburger, Perspectives in Flow Control and Optimization, SIAM, 2003.
Uncertainty Quantification
  • L. Tenorio, An Introduction to Data Analysis and Uncertainty Quantification for Inverse Problems, SIAM, 2017.
  • C. Soize, Uncertainty Quantification: An Accelerated Course with Advanced Applications in Computational Engineering, Springer, 2017.
  • T. J. Sullivan, Introduction to Uncertainty Quantification, Springer, 2015.
Applied & Computational Mathematics
  • E. Haber, Computational Methods in Geophysical Electromagnetics, SIAM, 2015.
  • C. A. Bouman, Foundations of Computational Imaging: A Model-Based Approach, SIAM, 2022.