He received his PhD in Computer Science in 1991 at the University of Arizona under Gene Myers, and did postdoctoral work at the Centre de Recherches Mathématiques of the Université de Montréal in 1991 with David Sankoff, and at the Department of Computer Science of the University of California at Davis from 1992-94 with Dan Gusfield.