John C. Mitchell
John Mitchell is the Mary and Gordon Crary Family Professor, professor of computer science, and by courtesy professor of electrical engineering and professor of education at Stanford University. His previous appointments at Stanford include Vice Provost for Online Learning (2012-2015) and Vice Provost for Teaching and Learning (2015-2018).
Significant contributions to several areas of computer science, drawing on methods of mathematical logic to explore practical issues related to programming languages, software systems, and security. His contributions to the type theoretic foundations of programming languages include characterizations and analysis of various forms of polymorphism, data abstraction, and object-oriented constructs. His contributions to the complexity of symbolic computation and deduction include lower bounds that were surprising and contradictory to popular expectation at the time they were announced. Additionally, with collaborators he developed several complementary methods for analyzing security properties of network protocols. The simplest, finite-state model checking, leverages standard analysis tools but adds specific methods for security analysis and the concept of rational reconstruction, the systematic exploration of the reason for each part of a protocol.