Theory and Algorithms

Theory and Algorithms

Theory and Algorithms

Theory and algorithms form the mathematical core of computer science. While most areas in computer science study specific concrete systems, the goal of theory and algorithms is to abstract away these details in order to study the question: What sort of computations are possible to do, and possible to do efficiently, by any computer? In this way, discovering a faster algorithm for a problem, or discovering that there is no fast algorithm, is a statement about all computers and all computer programs. By understanding theory and algorithms, computer scientists are able to understand the fundamental abilities and limitations of the computational tools they work with, no matter the tools.



Optimization, Network Flow, Consensus Clustering


Communication Security, Authentication, Digital Privacy, Encryption, Protocols

Models of Computation

Keyword 1, Keyword 2, Keyword 3...

Network Science

Complex Networks, Social Networks

Quantum Computing

Quantum Complexity Theory, Post-Quantum Cryptography, Quantum Error Correcting Codes

Scientific Computing

Numerical Methods, Molecular Dynamics

Theory of Computing

Models of Compuation, Computability, NP-complete, Polynomial-time, Turing Machine

Theory and Algorithms Faculty


Portrait Image

Zhaojun Bai

Position Title
  • Distinguished Professor
Portrait Image

David Doty

Position Title
  • Associate Professor

Emeriti Faculty

Portrait Image

Dan Gusfield

Position Title
  • Distinguished Professor Emeritus