Paul's research is concerned primarily with computational complexity. His main interest is in proving lower bounds on the resources needed for solving computational problems. Such topics include communication complexity, time-space tradeoff lower bounds, proof complexity, and data structures. In addition, Paul is interested in problems related to formal reasoning and verification. He has worked on the application and extension of the techniques of symbolic model checking for the verification of software specifications.