The research interests of faculty in Theoretical Foundations of Computer Science cover a wide spectrum of topics. One unifying principle that ties the research of faculty together is the focus on concepts that lie at the core of computing and programming.See faculty in theoretical computer science
Focusing on the concepts at the core of computing
Programming Languages and Models of Computation
The mathematical analysis of computation requires the construction of abstract models that capture, in a selective and stylized way, properties of concrete computational processes. Big data, cloud applications, quantum and biological computing, and emerging technologies, are inducing novel research in new models of computation, which itself induces advances in novel programming abstractions.
Algorithm Design, Analysis & Computational Complexity
Study the complexity of algorithms and the amount of resources required to run it.
Applied Logic, Including Reasoning about Uncertainty
Apply logical and mathematical methods to foundational matters in computer science involving logical operations on data according to logical principles and quantifiable results. Provide semantic explanations about the origin and nature of uncertainty to represent uncertainty in formal language.