- (2013)
An Incomplete History of Concurrency
- (2011)
The Mechanization of Causal Inference: A “mini” Turing Test and Beyond
- (2010)
The Extent and Limitations of Mechanistic Explanations of Nature
- (2009)
Improving the future by examining the past: ACM Turing Award Lecture

- (2008)
The Power of Abstraction
- (2007)
Model checking: my 27-year quest to overcome the state explosion problem
Model checking: A Personal Perspective
The Quest for Correctness Beyond Verification
- (2006)
Compiling for Performance: A Personal Tour
- (2005)
Computing vs. Human Thinking
- (2004)
Assessing the Internet: Lessons Learned, Strategies for Evolution, and Future Possibilities
Assessing the Internet: Lessons Learned, Strategies for Evolution, and Future Possibilities
- (2003)
Turing Award Lecture
- (2002)
Pre-RSA Days: History and Lessons
The Eary Days of RSA: History and Lessons
Cryptography: State of the science
- (1996)
Verification engineering: a future profession

- (1994)
How the “what” becomes the “how”

To dream the possible dream

- (1993)
Turing award lecture: on computational complexity and the nature of computer science

Turing award lecture: it's time to reconsider time

- (1992)
Principles for Computer System Design

- (1991)
Elements of interaction

- (1990)
On building systems that will fail

- (1988)
Micropipelines

- (1987)
The search for performance in scientific processors

- (1986)
Computer science: the emergence of a discipline

Algorithm design

- (1985)
Combinatorics, complexity, and randomness

- (1984)
From programming language design to computer construction

- (1983)
Reflections on software research

Reflections on trusting trust

- (1982)
An overview of computational complexity

- (1981)
Relational database: a practical foundation for productivity

- (1980)
The emperor's old clothes

- (1979)
Notation as a tool of thought

- (1978)
The paradigms of programming

- (1977)
Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs

- (1976)
Complexity of computations

Logic and programming languages

- (1975)
Computer science as empirical inquiry: symbols and search

Computer science as empirical inquiry: symbols and search

- (1974)
Computer programming as an art

- (1973)
The programmer as navigator

- (1972)
The humble programmer

- (1971)
Generality in artificial intelligence

- (1970)
Some comments from a numerical analyst

- (1969)
Form and content in computer science

- (1968)
One man's view of computer science

- (1967)
Computers then and now

- (1966)
The synthesis of algorithmic systems
