Stephen Cook
Stephen Arthur Cook, OC, OOnt (born December 14, 1939) is an American-Canadian computer scientist and mathematician who has made major contributions to the fields of complexity theory and proof complexity. He is a university professor at the University of Toronto, Department of Computer Science and Department of Mathematics.
Stephen Cook | |
---|---|
Cook in 2008 | |
Born | Stephen Arthur Cook December 14, 1939 |
Alma mater | Harvard University University of Michigan |
Known for | NP-completeness Propositional proof complexity Cook-Levin theorem |
Awards | Turing Award (1982) CRM-Fields-PIMS prize (1999) John L. Synge Award (2006) Bernard Bolzano Medal Gerhard Herzberg Canada Gold Medal for Science and Engineering (2012) Officer of Order of Canada (2015) BBVA Foundation Frontiers of Knowledge Award (2015) |
Scientific career | |
Fields | Computer Science |
Institutions | University of Toronto University of California, Berkeley |
Thesis | On the Minimum Computation Time of Functions (1966) |
Doctoral advisor | Hao Wang |
Doctoral students | Mark Braverman[1] Toniann Pitassi Walter Savitch Arvind Gupta Anna Lubiw |
Biography
Cook received his Bachelor's degree in 1961 from the University of Michigan, and his Master's degree and Ph.D. from Harvard University, respectively in 1962 and 1966, from the Mathematics Department.[2] He joined the University of California, Berkeley, mathematics department in 1966 as an assistant professor, and stayed there until 1970 when he was denied reappointment. In a speech celebrating the 30th anniversary of the Berkeley EECS department, fellow Turing Award winner and Berkeley professor Richard Karp said that, "It is to our everlasting shame that we were unable to persuade the math department to give him tenure."[3] Cook joined the faculty of University of Toronto, Computer Science and Mathematics Departments in 1970 as an associate professor, where he was promoted to professor in 1975 and Distinguished Professor in 1985.
Research
Stephen Cook is considered one of the forefathers of computational complexity theory.
During his PhD, Cook worked on complexity of functions, mainly on multiplication. In his seminal 1971 paper "The Complexity of Theorem Proving Procedures",[4][5] Cook formalized the notions of polynomial-time reduction (a.k.a. Cook reduction) and NP-completeness, and proved the existence of an NP-complete problem by showing that the Boolean satisfiability problem (usually known as SAT) is NP-complete. This theorem was proven independently by Leonid Levin in the Soviet Union, and has thus been given the name the Cook-Levin theorem. The paper also formulated the most famous problem in computer science, the P vs. NP problem. Informally, the "P vs. NP" question asks whether every optimization problem whose answers can be efficiently verified for correctness/optimality can be solved optimally with an efficient algorithm. Given the abundance of such optimization problems in everyday life, a positive answer to the "P vs. NP" question would likely have profound practical and philosophical consequences.
Cook conjectures that there are optimization problems (with easily checkable solutions) which cannot be solved by efficient algorithms, i.e., P is not equal to NP. This conjecture has generated a great deal of research in computational complexity theory, which has considerably improved our understanding of the inherent difficulty of computational problems and what can be computed efficiently. Yet, the conjecture remains open and is among the seven famous Millennium Prize Problems.[6][7]
In 1982, Cook received the Turing award for his contributions to complexity theory. His citation reads:
For his advancement of our understanding of the complexity of computation in a significant and profound way. His seminal paper, The Complexity of Theorem Proving Procedures, presented at the 1971 ACM SIGACT Symposium on the Theory of Computing, laid the foundations for the theory of NP-Completeness. The ensuing exploration of the boundaries and nature of NP-complete class of problems has been one of the most active and important research activities in computer science for the last decade.
In his "Feasibly Constructive Proofs and the Propositional Calculus"[8] paper published in 1975, he introduced the equational theory PV (standing for Polynomial-time Verifiable) to formalize the notion of proofs using only polynomial-time concepts. He made another major contribution to the field in his 1979 paper, joint with his student Robert A. Reckhow, "The Relative Efficiency of Propositional Proof Systems",[9] in which they formalized the notions of p-simulation and efficient propositional proof system, which started an area now called propositional proof complexity. They proved that the existence of a proof system in which every true formula has a short proof is equivalent to NP = coNP. Cook co-authored a book with his student Phuong The Nguyen in this area titled "Logical Foundations of Proof Complexity".[10]
His main research areas are complexity theory and proof complexity, with excursions into programming language semantics, parallel computation, and artificial intelligence. Other areas which he has contributed to include bounded arithmetic, bounded reverse mathematics, complexity of higher type functions, complexity of analysis, and lower bounds in propositional proof systems.
Some other contributions
He named the complexity class NC after Nick Pippenger. The complexity class SC is named after him.[11] The definition of the complexity class AC0 and its hierarchy AC are also introduced by him.[12]
According to Don Knuth the KMP algorithm was inspired by Cook's automata for recognizing concatenated palindromes in linear time.[13]
Awards and honors
Cook was awarded an NSERC E.W.R. Steacie Memorial Fellowship in 1977, a Killam Research Fellowship in 1982, and received the CRM-Fields-PIMS prize in 1999. He has won John L. Synge Award and Bernard Bolzano Medal, and is a fellow of the Royal Society of London and Royal Society of Canada. Cook was elected to membership in the National Academy of Sciences (United States) and the American Academy of Arts and Sciences.
Cook won the ACM Turing Award in 1982. Association for Computing Machinery honored him as a Fellow of ACM in 2008 for his fundamental contributions to the theory of computational complexity.[14]
The Government of Ontario appointed him to the Order of Ontario in 2013, the highest honor in Ontario.[15] He has won the 2012 Gerhard Herzberg Canada Gold Medal for Science and Engineering, the highest honor for scientist and engineers in Canada.[16] The Herzberg Medal is awarded by NSERC for "both the sustained excellence and overall influence of research work conducted in Canada in the natural sciences or engineering".[17] He was named an Officer of the Order of Canada in 2015.[18]
Cook was granted the BBVA Foundation Frontiers of Knowledge Award 2015 in the Information and Communication Technologies category "for his important role in identifying what computers can and cannot solve efficiently," in the words of the jury's citation. His work, it continues, "has had a dramatic impact in all fields where complex computations are crucial."
Cook has supervised numerous MSc students, and 34 PhD students have completed their degrees under his supervision.[1]
Personal life
Cook lives with his wife in Toronto. They have two sons, Gordon and James.[19] He plays the violin and enjoys sailing. He is often called by his short name Steve Cook.
See also
References
- Stephen Cook at the Mathematics Genealogy Project
- Kapron, Bruce. "Stephen Arthur Cook". A. M. Turing Award. Retrieved 23 October 2018.
- A Personal View of Computer Science at Berkeley - Richard Karp
- "The Complexity of Theorem Proving Procedures", PDF file of a scanned version
- "The Complexity of Theorem Proving Procedures", PDF file of a retyped version
- P vs. NP Archived October 14, 2013, at the Wayback Machine problem on Millennium Prize Problems page - Clay Mathematics Institute
- P vs. NP Archived 2007-09-27 at the Wayback Machine problem's official description by Stephen Cook on Millennium Prize Problems
- "Feasibly Constructive Proofs and the Propositional Calculus" on ACM
- "The Relative Efficiency of Propositional Proof Systems" on JStore
- "Logical Foundations of Proof Complexity"'s official page
- ""Steve's class": origin of SC". Theoretical Computer Science - Stack Exchange.
- "Who introduced the complexity class AC?". Theoretical Computer Science - Stack Exchange.
- "Twenty Questions for Donald Knuth".
- Stephen Cook Archived 2009-01-23 at the Wayback Machine on ACM Fellows
- "25 Appointees Named to Ontario's Highest Honour". Ministry of Citizenship and Immigration.
- Emily, Chung (February 27, 2013). "Computer scientist wins Canada's top science prize". cbc.ca. Retrieved February 27, 2013.
- "Current Winner - 2012 - Stephen Cook".
- "Four Nova Scotians among Order of Canada honourees". The Chronicle-Herald, July 1, 2015.
- "Stephen A. Cook - Home Page".
External links
- Home page of Stephen A. Cook
- ‘P versus NP’ and the Limits of Computation - Public lecture given by Stephen Cook at the University of Toronto
- Oral history interview with Stephen Cook at Charles Babbage Institute, University of Minnesota. Cook discussed his education at the University of Michigan and Harvard University and early work at the University of California, Berkeley, and his growing interest in problems of computational complexity. Cook recounted his move to the University of Toronto in 1970 and the reception of his work on NP-completeness, leading up to his A.M. Turing Award.
- Stephen Arthur Cook at the Mathematics Genealogy Project
- Stephen A. Cook at DBLP Bibliography Server