ArticleslgStudy

computer science

Parallel computation thesis

Parallel computation thesis is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Parallel computation thesis rather than just read about it. In short: In computational complexity theory, the parallel computation thesis is a hypothesis which states that the time used by a (reasonable) parallel machine is polynomially related to the space used by a sequential machine. The parallel computation thesis was set forth by Chandra and Stockmeyer in 1976.

Key takeaways

  • Parallel computation thesis belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Parallel computation thesis to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Parallel computation thesis from memory before moving on to harder problems.

Reference excerpt

In computational complexity theory, the parallel computation thesis is a hypothesis which states that the time used by a (reasonable) parallel machine is polynomially related to the space used by a sequential machine. The parallel computation thesis was set forth by Chandra and Stockmeyer in 1976. In other words, for a computational model which allows computations to branch and run in parallel without bound, a formal language which is decidable under the model using no more than t ( n ) {\displaystyle t(n)} steps for inputs of length n is decidable by a non-branching machine using no more than t ( n ) k {\displaystyle t(n)^{k}} units of storage for some constant k. Similarly, if a machine in the unbranching model decides a language using no more than s ( n ) {\displaystyle s(n)} storage, a machine in the parallel model can decide the language in no more than s ( n ) k {\displaystyle s(n)^{k}} steps for some constant k. The parallel computation thesis is not a rigorous formal statement, as it does not clearly define what constitutes an acceptable parallel model. A parallel machine must be sufficiently powerful to emulate the sequential machine in time polynomially related to the sequential space; compare Turing machine, non-deterministic Turing machine, and alternating Turing machine. N. Blum (1983) introduced a model for which the thesis does not hold. However, the model allows 2 2 O ( T ( n ) ) {\displaystyle 2^{2^{O(T(n))}}} parallel threads of computation after T ( n ) {\displaystyle T(n)} steps. (See Big O notation.) Parberry (1986) suggested a more "reasonable" bound would be 2 O ( T ( n ) ) {\displaystyle 2^{O(T(n))}} or 2 T ( n ) O ( 1 ) {\displaystyle 2^{T(n)^{O(1)}}} , in defense of the thesis. Goldschlager (1982) proposed a model which is sufficiently universal to emulate all "reasonable" parallel models. In this model, the thesis is provably true. Chandra and Stockmeyer originally formalized and proved results related to the thesis for deterministic and alternating Turing machines, which is where the thesis originated.

Definition Given two models of computation, such as Turing machines and PRAM, they would have computational resource usages. For Turing machines, the resources can be tape space, sequential time, number of times the read/write head changes direction, etc. For PRAM, the resources can be parallel time, total number of processors, etc. Conditional on a function T ( n ) {\displaystyle T(n)} , saying that the use of one resource R in one model is polynomially related to the use of another resource R' in another model means the following. Given a problem that can be solved with some computation according to the first model, consuming only T ( n ) k {\displaystyle T(n)^{k}} amount of resource R for some k > 0 {\displaystyle k>0} , there exists another computation according to the second model, consuming only T ( n ) k ′ {\displaystyle T(n)^{k'}} of resource R' for some k ′ > 0 {\displaystyle k'>0} . And vice versa. The parallel computation thesis states that, conditional on any T ( n ) ≥ log ⁡ n {\textstyle T(n)\geq \log n} , the use of tape space in Turing machines is polynomially related to the use of parallel time in PRAM for which the total number of processors is at most exponential in parallel time. The restriction on "at most exponential" is important, since with a bit more than exponentially many processors, there is a collapse: Any language in NP can be recognized in constant time by a shared-memory machine with O ( 2 n O ( 1 ) ) {\textstyle O\left(2^{n^{O(1)}}\right)} processors and word size O ( T ( n ) 2 ) {\textstyle O\left(T(n)^{2}\right)} . If the parallel computation thesis is true, then one implication is that "fast" parallel computers (i.e. those that run in polylogarithmic time) recognize exactly the languages in polyL.

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Parallel computation thesis

Start with the simplest possible case. Write down what Parallel computation thesis claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Parallel computation thesis before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Parallel computation thesis ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Parallel computation thesis

In research
Parallel computation thesis appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Parallel computation thesis in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Parallel computation thesis is common in secondary-school and first-year university syllabi. It links to neighbouring topics Parallel computing, Theory of computation, so understanding it makes those chapters shorter.
In everyday life
Look for Parallel computation thesis outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Parallel computation thesis in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Parallel computation thesis means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Parallel computation thesis out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Parallel computation thesis in simple terms?

In computational complexity theory, the parallel computation thesis is a hypothesis which states that the time used by a (reasonable) parallel machine is polynomially related to the space used by a sequential machine. The parallel computation thesis was set forth by Chandra and Stockmeyer in 1976.

Why does Parallel computation thesis matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Parallel computation thesis?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Parallel computation thesis.

Tags

  • Parallel computing
  • Theory of computation

Keep exploring