next up previous contents
Next: Classical vs. Quantum Computers Up: Introduction Previous: Introduction   Contents

Subsections

Computation and Computers

Models of Computation

From an abstract point of view, computation is a process of manipulating a finite set of symbols (data) by applying a series of formal transformations (program). The initial set is called the input, the result of the final transformation the output of the program.

A computer is a physical device, which is able to carry out certain types of operations, which are not only determined by the limitations of the employed hardware, but primarily by the concept of computation used to construct the machine itself and to interpret its results.

The theoretic concept behind nowadays computers is that of the abstract universal computer whose most popular representative is the Turing machine named after Alan Turing, one of the pioneers of modern computer science. It can be shown that all deterministic abstract machines with unlimited memory capacity and a minimal set of basic instructions for reading, writing and conditional branching are equivalent in the sense, that every machine can be programmed to simulate and thus execute the programs of any machine of the class including itself. All functions, which can be computed on a Turing machine are called partial recursive or Turing computable.

However it is necessary to stress, that the universal computer is by no means the only applicable concept of computation and that many problems can be (and are actually) solved by using less powerful models like cellular automatons. Anyway, according to Church's theorem, any function which can be described by an algorithm or calculated by any mechanical process is partial recursive, and in this sense the Turing machine is in fact universal.

Computers as Physical Devices

To implement a computational model in a physical device, this computer must be able to adept different internal states and provide means to perform the necessary transformations on them and to extract the output information. The correlation between the physical and the logical state of the machine is arbitrary (as long it is consistent with the desired transformations) and requires interpretation.

In an ordinary RAM module, the common quantum state of thousands of electrons is interpreted as only one bit, thus either as 0 or 1. This abstraction is possible, because the great number of particles statistically washes away the principal uncertainty of measurement inherent to any quantum system. This allows us to implement the concept of a deterministic universal computer in non deterministic hardware.

However, with some problems (e.g. testing for prime numbers), indeterministic behaviour can drastically reduce the average number of necessary computational steps. Algorithms which contain random elements (e.g. Monte Carlo method for numerical integration) are called probabilistic. The computational concept of a (classical) probabilistic algorithm is that of a Turing machine which can ``throw coins'' i.e. can make random decisions, which of two (or more) computational paths to follow. A random Turing machine can also simulate any quantum system to arbitrary precision.

Limitations of the Classical Concept

The development of integrated circuits during the last decades shows a strong trend toward miniaturisation reducing the number of electrons representing one bit by a factor of 100 every ten years [1]. An extrapolation of this trend suggests, that an atomic scale might be reached within the next two decades, where quantum effects on register measurements can no longer be ignored.

The developers will be forced to either accept this limitation or to drastically alter their concept of computation by creating computers which rely on quantum effects rather than trying to avoid them.


next up previous contents
Next: Classical vs. Quantum Computers Up: Introduction Previous: Introduction   Contents

(c) Bernhard Ömer - oemer@tph.tuwien.ac.at - http://tph.tuwien.ac.at/~oemer/