Tom is well known for several notable contributions in the area of large-scale nonlinear optimization. The Coleman-Conn method (1982) that showed how to correctly handle the second order information in the Lagrangians for nonlinear programming problems to exploit the L1 penalty function is a fundamental component of penalty methods and sequential quadratic programming methods in nonlinear optimization. Tom realized early in his career that graph theory could play an important role in sparse optimization, and with J. Moré, he pioneered the use of graph colouring to efficiently compute derivative matrices. Tom's students have gone on to pursue the use of graph-theoretic methods in optimization and scientific computing, and have founded the combinatorial scientific computing community (CSC).
In the area of Automatic Differentiation (AD), Tom was the creator of first the ADMIT and then ADMAT toolboxes for AD in Matlab, and his book on this topic has been accepted for publication by SIAM. The Coleman-Verma decomposition was a key idea to make AD more tractable, and permits the simultaneous use of "forward" and "backward" modes in the same computation. Tom was also very influential in popularizing the technique with application scientists.
Tom's 1999 paper on estimating volatility has become the definitive method for this problem, and is widely adopted in the computational finance community. He has also significantly advanced the concept of conditional value at risk, a key tool in the financial sector for measuring risk of a portfolio.
Tom is the Ophelia Lazaridis Research Chair in the Department of Combinatorics & Optimization at the University of Waterloo, and is the director of the Waterloo Research Institute in Insurance, Securities and Quantitative Finance (WatRISQ). He served as the Dean of Mathematics at Waterloo from 2005 to 2010. Prior to returning to Waterloo in 2005, he was a professor in the Department of Computer Science at Cornell University, where he directed the Theory Center and oversaw Cornell's supercomputing center.