Teaching

Graduate Teaching Assistant for CS 150 Theoretical Computer Science Toolkit

Undergraduate course (Spring 2024), Tufts University, Department of Computer Science

Course description: In this course, we will explore various methods and techniques that are useful in various areas of computation theory. We will see how combinatorial and probabilistic technique, polynomial approach, Fourier analysis and linear algebraic technique can be applied to solve various problems in theoretical computer science. We will illustrate the techniques by the examples in theory of algorithms, computational complexity, learning theory, property testing and other areas.

Graduate Teaching Assistant for CS 150 Quantum Computer Science

Undergraduate course (Spring 2023), Tufts University, Department of Computer Science

Course description: The universe at the sub-atomic scale is governed by quantum mechanical laws, which fundamentally differ from classical laws of motion. What is the nature of computation in such scales? Can we use quantum mechanical particles to perform computations? These are the core questions of the field of quantum computing. In this course, we present an elementary-level introduction to the computer science foundations of quantum computing. Topics include Hilbert spaces, quantum entanglement, quantum measurements, quantum circuits, quantum protocols and algorithms, Hamiltonians and the ground state problem, and quantum error-correcting codes. Students from different areas of engineering and sciences, such as computer science, physics, electrical engineering, mathematics, or chemistry, who wish to learn about the computer science foundations of quantum computers can benefit from this class. The main focus of this course is on the theoretical foundations of quantum computing; mathematical enthusiasm and knowledge in areas such as linear algebra, algorithms, discrete mathematics, and calculus are required.

Graduate Teaching Assistant for CS 170 Computation Theory

Undergraduate course (Fall 2022), Tufts University, Department of Computer Science

Course description: This course is intended as an introduction to the theory of computation for senior level undergraduates and graduate students looking for background material in theory. The major topics within the course include: models of computation, finite automata, regular languages, context free grammars, turing machines, undecidability, infeasibility, diagonalizations, nondeterminism, information theory, time vs space, and complexity classes.