Our groups employ and develop computational methods, based on classical, quantum and machine-learning approaches, to understand and predict chemical reactivity in complex environments, from solution phase reactions to enzyme catalysis. Alongside this, we also develop computational software to facilitate molecular design and reaction mechanism exploration. We work closely with leading experimental groups in these areas, helping them to interpret exciting new results and drive chemical discovery.