abstract image


The Theoretical Computer Science group explores the limits of computation in developing algorithms and protocols that provide provable performance guarantees such as correctness and privacy. We have strengths in developing algorithms that take advantage of geometric and topological properties to solve classic problems such as maximum flow and network design as well as more newly developed, applied problems, for example, in routing. We also develop cryptographic tools that allow sensitive data to be used in arbitrary computations while simultaneously maintaining privacy.

Sub Areas

  • Algorithms
  • Computational Geometry and Topology
  • Cryptography

Related Courses

  • CS 321: Introduction to the Theory of Computation
  • CS 325: Analysis of Algorithms
  • CS 420/520: Graph Theory with Applications to CS
  • CS 419/519: Introduction to Cryptography
  • CS 516: Theory of Computation & Formal Languages
  • CS 519: Advanced Cryptography
  • CS 515: Algorithms and Data Structures
  • CS 517: Theory of Computation
  • CS 519: Special Topics in Computational Geometry
  • CS 527: Error Correcting Codes
  • CS 523: Advanced Algorithms


Photo of Glencora Borradaile

Glencora Borradaile
Approximation algorithms; planar graphs; combinatorial algorithms

Photo of Paul Cull

Paul Cull
Algorithms, theory of computation, mathematical biology

Photo of Amir Nayyeri

Amir Nayyeri
Computational geometry; computational topology

Photo of Mike Rosulek

Mike Rosulek
Cryptography; secure multi-party computation

Photo of Eugene Zhang

Eugene Zhang
Computer graphics; visualization; geometry processing; computational topology

Affiliated Faculty

Photo of Liang Huang

Liang Huang
Natural language processing, including parsing and translation; structured machine learning; computational structural biology (RNA and protein folding); deep learning