# The Turing Award - Studying Computer Science Achievements

## A Bachelor Seminar across HPI

The A.M. Turing Award, the Association of Computing Machinery's most prestigious technical award, is given for major contributions of lasting importance to computing. The award was first given in 1966 to Alan J Perlis for his influence in the area of advanced programming techniques and compiler construction. Since then 62 women and men, the best compter scientists, have been given the award for their contributions in various fields, such as Jim Gray for transaction management, Vint Cerf and Bob Kahn for internetworking and TCP/IP, Marvin Minsky for artificial intelligence, Don Knuth for algorithm analysis, Douglas Engelbart for interactive computing, and Barbara Liskov for programming language design.

## Seminar goals and tasks

The goal of this seminar is to introduce bachelor students to the excitement of computer science research by studying seminal works of the best minds in the field. Students will learn how to approach the specific field, how to read scientific papers, how to concisely explain complex algorithms, proofs, and models, and how to succinctly write a term paper on a computer science topic.

The various topics of the seminar can be advised by HPI researchers across all groups within HPI. Introductory classes on how to read, present, and write good papers will be given by Prof. Felix Naumann (and others?).

Each seminar participant will study and present the work that led to one of the awards and is expected to achieve the following:

- A 15 minute presentation of the topic, including (i) the award winner(s), (ii) the research achievements, and (iii) the impact of that research
- An A2 poster outlining the same content as the presentation
- Active participation during all plenary meetings
- A 4-page paper explaining the most important result

Presentations, poster, and paper can be given in **English or German**. All four components will be graded separately, to form the final non-weighted average grade. You will receive 3 credits (Leistungspunkte) for this seminar. The topics will be distributed among the students based on a Doodle, to be published here during the first week of the semester.

## Topics

Year | Recipients | Citation | Advisor | Student | Presentation date |

1966 | Alan J. Perlis | For his influence in the area of advanced computer programming techniques and compiler construction | |||

1967 | Maurice Wilkes | Professor Wilkes is best known as the builder and designer of the EDSAC, the first computer with an internally stored program. | |||

1968 | Richard Hamming | For his work on numerical methods, automatic coding systems, and error-detecting and error-correcting codes | |||

1969 | Marvin Minsky | For his central role in creating, shaping, promoting, and advancing the field of artificial intelligence. | |||

1970 | James H. Wilkinson | For his research in numerical analysis to facilitate the use of the high-speed digital computer, having received special recognition for his work in computations in linear algebra and "backward" error analysis | |||

1971 | John McCarthy | McCarthy's lecture "The Present State of Research on Artificial Intelligence" is a topic that covers the area in which he has achieved considerable recognition for his work | |||

1972 | Edsger W. Dijkstra | As a principal contributor to the development of the ALGOL, a high level programming language which has become a model of clarity and mathematical rigor. He is one of the principal proponents of the science and art of programming languages in general. | |||

1973 | Charles W. Bachman | For his outstanding contributions to database technology | |||

1974 | Donald E. Knuth | For his major contributions to the analysis of algorithms and the design of programming languages, and in particular for his contributions to "The Art of Computer Programming" through his well-known books in a continuous series by this title | |||

1977 | John Backus | For profound, influential, and lasting contributions to the design of practical high-level programming systems, notably through his work on FORTRAN, and for seminal publication of formal procedures for the specification of programming languages | |||

1978 | Robert W. Floyd | For having a clear influence on methodologies for the creation of efficient and reliable software, and for helping to found the following important subfields of computer science: the theory of parsing, the semantics of programming languages, automatic program verification, automatic program synthesis, and analysis of algorithms | |||

1979 | Kenneth E. Iverson | For his pioneering effort in programming languages and mathematical notation resulting in what the computing field now knows as APL, for his contributions to the implementation of interactive systems, to educational uses of APL, and to programming language theory and practice | |||

1980 | Tony Hoare | For his fundamental contributions to the definition and design of programming languages | |||

1981 | Edgar F. Codd | For his fundamental and continuing contributions to the theory and practice of database management systems, especially relational databases | |||

1982 | Stephen A. Cook | For his advancement of our understanding of the complexity of computation in a significant and profound way | |||

1983 | Ken Thompson and Dennis M. Ritchie | For their development of generic operating systems theory and specifically for the implementation of the UNIX operating system | |||

1984 | Niklaus Wirth | For developing a sequence of innovative computer languages, EULER, ALGOL-W, MODULA and Pascal | |||

1985 | Richard M. Karp | For his continuing contributions to the theory of algorithms including the development of efficient algorithms for network flow and other combinatorial optimization problems, the identification of polynomial-time computability with the intuitive notion of algorithmic efficiency, and, most notably, contributions to the theory of NP-completeness | |||

1986 | John Hopcroft and Robert Tarjan | For fundamental achievements in the design and analysis of algorithms and data structures | |||

1987 | John Cocke | For significant contributions in the design and theory of compilers, the architecture of large systems and the development of reduced instruction set computers (RISC) | |||

1988 | Ivan Sutherland | For his pioneering and visionary contributions to computer graphics, starting with Sketchpad, and continuing after | |||

1989 | William Kahan | For his fundamental contributions to numerical analysis. One of the foremost experts on floating-point computations. Kahan has dedicated himself to "making the world safe for numerical computations." | |||

1990 | Fernando J. Corbató | For his pioneering work organizing the concepts and leading the development of the general-purpose, large-scale, time-sharing and resource-sharing computer systems, CTSS and Multics. | |||

1991 | Robin Milner | For three distinct and complete achievements: 1) LCF, the mechanization of Scott's Logic of Computable Functions, probably the first theoretically based yet practical tool for machine assisted proof construction; 2) ML, the first language to include polymorphic type inference together with atype-safe exception-handling mechanism; 3) CCS, a general theory of concurrency. | |||

1992 | Butler W. Lampson | For contributions to the development of distributed, personal computing environments and the technology for their implementation: workstations,networks, operating systems, programming systems, displays, security and document publishing. | |||

1993 | Juris Hartmanis and Richard E. Stearns | In recognition of their seminal paper which established the foundations for the field of computational complexity theory | |||

1994 | Edward Feigenbaum and Raj Reddy | For pioneering the design and construction of large scale artificial intelligence systems, demonstrating the practical importance and potential commercial impact of artificial intelligence technology | |||

1995 | Manuel Blum | In recognition of his contributions to the foundations of computational complexity theory and its application to cryptography and program checking. | |||

1996 | Amir Pnueli | For seminal work introducing temporal logic into computing science and for outstanding contributions to program and systems verification. | |||

1997 | Douglas Engelbart | For an inspiring vision of the future of interactive computing and the invention of key technologies to help realize this vision. | |||

1998 | Jim Gray | For seminal contributions to database and transaction processing research and technical leadership in system implementation. | |||

1999 | Frederick P. Brooks, Jr. | For landmark contributions to computer architecture, operating systems, and software engineering. | |||

2000 | Andrew Chi-Chih Yao | In recognition of his fundamental contributions to the theory of computation, including the complexity-based theory of pseudorandom number generation, cryptography, and communication complexity. | |||

2001 | Ole-Johan Dahl and Kristen Nygaard | For ideas fundamental to the emergence of object-oriented programming, through their design of the programming languages Simula I and Simula 67. | |||

2002 | Ronald L. Rivest, Adi Shamir and Leonard M. Adleman | For their ingenious contribution for making public-key cryptography useful in practice. | |||

2003 | Alan Kay | For pioneering many of the ideas at the root of contemporary object-oriented programming languages, leading the team that developed Smalltalk, and for fundamental contributions to personal computing. | |||

2004 | Vinton G. Cerf and Robert E. Kahn | For pioneering work on internetworking, including the design and implementation of the Internet's basic communications protocols, TCP/IP, and for inspired leadership in networking. | |||

2005 | Peter Naur | For fundamental contributions to programming language design and the definition of ALGOL 60, to compiler design, and to the art and practice of computer programming. | |||

2006 | Frances E. Allen | For pioneering contributions to the theory and practice of optimizing compiler techniques that laid the foundation for modern optimizing compilers and automatic parallel execution. | |||

2007 | Edmund M. Clarke, E. Allen Emerson and Joseph Sifakis | For their roles in developing model checking into a highly effective verification technology, widely adopted in the hardware and software industries | |||

2008 | Barbara Liskov | For contributions to practical and theoretical foundations of programming language and system design, especially related to data abstraction, fault tolerance, and distributed computing. | |||

2009 | Charles P. Thacker | For his pioneering design and realization of the Xerox Alto, the first modern personal computer, and in addition for his contributions to the Ethernet and the Tablet PC. | |||

2010 | Leslie G. Valiant | For transformative contributions to the theory of computation, including the theory of probably approximately correct (PAC) learning, the complexity of enumeration and of algebraic computation, and the theory of parallel and distributed computing. | |||

2011 | Judea Pearl | For fundamental contributions to artificial intelligence through the development of a calculus for probabilistic and causal reasoning | |||

2012 | Silvio Micali and Shafi Goldwasser | For transformative work that laid the complexity-theoretic foundations for the science of cryptography and in the process pioneered new methods for efficient verification of mathematical proofs in complexity theory | |||

2013 | Leslie Lamport | For fundamental contributions to the theory and practice of distributed and concurrent systems, notably the invention of concepts such as causality and logical clocks, safety and liveness, replicated state machines, and sequential consistency | |||

2014 | Michael Stonebraker | For fundamental contributions to the concepts and practices underlying modern database systems |