Book contents
- Frontmatter
- Contents
- About this book
- Acknowledgments
- Introduction
- 0 Notational conventions
- PART ONE BASIC COMPLEXITY CLASSES
- PART TWO LOWER BOUNDS FOR CONCRETE COMPUTATIONAL MODELS
- PART THREE ADVANCED TOPICS
- Appendix: Mathematical background
- Hints and selected exercises
- Main theorems and definitions
- Bibliography
- Index
- Complexity class index
Introduction
Published online by Cambridge University Press: 05 June 2012
- Frontmatter
- Contents
- About this book
- Acknowledgments
- Introduction
- 0 Notational conventions
- PART ONE BASIC COMPLEXITY CLASSES
- PART TWO LOWER BOUNDS FOR CONCRETE COMPUTATIONAL MODELS
- PART THREE ADVANCED TOPICS
- Appendix: Mathematical background
- Hints and selected exercises
- Main theorems and definitions
- Bibliography
- Index
- Complexity class index
Summary
As long as a branch of science offers an abundance of problems, so long it is alive; a lack of problems foreshadows extinction or the cessation of independent development.
– David Hilbert, 1900The subject of my talk is perhaps most directly indicated by simply asking two questions: first, is it harder to multiply than to add? and second, why? … I (would like to) show that there is no algorithm for multiplication computationally as simple as that for addition, and this proves something of a stumbling block.
– Alan Cobham, 1964The notion of computation has existed in some form for thousands of years, in contexts as varied as routine account keeping and astronomy. Here are three examples of tasks that we may wish to solve using computation:
Given two integer numbers, compute their product.
Given a set of n linear equations over n variables, find a solution, if it exists.
Given a list of acquaintances and a list of all pairs among them who do not get along, find the largest set of acquaintances you can invite to a dinner party such that every two invitees get along with one another.
Throughout history people had a notion of a process of producing an output from a set of inputs in a finite number of steps, and they thought of “computation” as “a person writing numbers on a scratch pad following certain rules.”
- Type
- Chapter
- Information
- Computational ComplexityA Modern Approach, pp. xix - xxivPublisher: Cambridge University PressPrint publication year: 2009