The primary focus of my research is the computer-aided verification and validation of computer systems, including concurrent and distributed systems; security, network and wireless protocols; software systems; biological systems; and safety-critical and embedded systems. Throughout my career, I have been interested in both the computational complexity and algorithmica of verification, striving to provide e.g. NP- and PSPACE-hardness proofs for those verification problems that are computationally intractable, and efficient (and sometimes parallel) algorithms for those that are not.