UC Davis

Algorithms and Theory Laboratory

Welcome to the Algorithms and Theory Laboratory. Algorithms and theory covers a huge range of topics: classical complexity-theoretic and foundational questions; practical algorithms within specific problem domains; creating general-purpose tools and techniques; making abstract models that help one see into the heart of a problem. Theoretical computer science teaches a set of methods, ideas, and viewpoints that help us abstract problems from their messy human, scientific, or technological context, solve the problem, and re-inject the solution back into practice. That is what we like to do. If there’s an over-arching theme for our work, it is to develop and apply theory in a way that is interesting and useful; it is characteristic for the theory folks at UCD that our aesthetic sensibilities are informed by relevance (as well as by the math and wanting to have some fun).

In the last decade or so we have grown considerably, from three faculty to eight, with the growth occurring in computational biology, cryptography, and scientific computing. The following are some areas of particular interest by faculty members in the group: bioinformatics, combinatorial algorithms and optimization, computational biology, computational geometry, cryptography, data structures, distributed algorithms, graph algorithms, mathematical modeling, mathematical software, matrix computations, network phenomena, numerical linear algebra, parallel algorithms, provable security, scientific computing, string matching, and theoretical aspects of visualization. See faculty members’ individual web sites to get a feel for what we do.

While work in algorithms and theory can often be done under a tree as well or better than in a physical laboratory, we do have a physical lab where many of our graduate students live. It’s at 2235 Kemper Hall, phone +1 530 752 8819.


Graduate Students

Postdocs and Visitors


Comments or updates for this page should be directed to