My main areas of interest is algebraic combinatorics. In the past I've also worked in algorithms, bioinformatics, group theory in physics, and combinatorial design theory.
My research supports the creation, discovery, and application of new results in combinatorics and algorithms. Combinatorics and algorithms work hand in hand to increase understanding of various objects in computer science--networks, data structures, and permutations. Combinatorics provides the structure and framework necessary for these objects as well as the means of analyzing the structure. Algorithms provide the means of manipulating these objects. Combinatorics supplies a unique way of looking at the world; algorithms supply a unique way of interacting with the world. Together they allow fundamental insights and establish essential connections.
Algebraic combinatorics uses the power of combinatorics to break open difficult problems in algebra. Sometimes these problems have no algebraic proof; sometimes they have an algebraic proof but the combinatorial proof provides more insight to the structure of the objects and the problem. One of the essential techniques in algebraic combinatorics is the bijective proof. This is a proof that provides a one-to-one mapping from one combinatorial object to another, thus revealing deep structural connections between them. The main thread running through this particular research is the concept of combinatorial statistics. A combinatorial statistic is a parameter or attribute associated to a combinatorial object, e.g. length, number of descents, number of -1's, etc, and the study of combinatorial statistics reveals much about the special structure of the associated objects.