GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Main page
  • Contents
  • Current events
  • Random article
  • About Wikipedia
  • Contact us
  • Help
  • Learn to edit
  • Community portal
  • Recent changes
  • Upload file
  • Special pages
  • Search
  • Donate

This view

  • Original page
  • New address

GeezerVison is showing en.wikipedia.org — Model of computation - Wikipedia

For computer models simulating complex systems, see Computational model.
See also: Visual programming language
icon
This article relies on a single source. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.
Find sources: "Model of computation" – news · newspapers · books · scholar · JSTOR
(February 2021) (Learn how and when to remove this message)

In computer science, and more specifically in computability theory and computational complexity theory, a model of computation is a model that describes how an output of a mathematical function is computed given an input. A model of computation describes how units of computations, memories, and communications are organized.[1] The computational complexity of an algorithm can be measured given a model of computation. Using a model allows studying the performance of algorithms independently of the variations that are specific to particular implementations and specific technology.

Categories

Models of computation can be classified into three categories: sequential models, functional models, and concurrent models.

Sequential models

Sequential models include:

  • Finite-state machines
  • Post machines (Post–Turing machines and tag machines).
  • Pushdown automata
  • Register machines
    • Random-access machines
  • Turing machines
  • Decision tree model
  • External memory model

Functional models

Functional models include:

  • Abstract rewriting systems
  • Combinatory logic
  • General recursive functions
  • Lambda calculus

Concurrent models

Concurrent models include:

  • Actor model
  • Cellular automaton
  • Interaction nets
  • Kahn process networks
  • Logic gates and digital circuits
  • Petri nets
  • Process calculus
  • Synchronous Data Flow

Some of these models have both deterministic and nondeterministic variants. Nondeterministic models are used in the study of computational complexity of algorithms.

Models differ in their expressive power; for example, each function that can be computed by a finite-state machine can also be computed by a Turing machine, but not vice versa.

Uses

In the field of runtime analysis of algorithms, it is common to specify a computational model in terms of primitive operations allowed which have unit cost, or simply unit-cost operations. A commonly used example is the random-access machine, which has unit cost for read and write access to all of its memory cells. In this respect, it differs from the above-mentioned Turing machine model.

See also

  • Stack machine (0-operand machine)
  • Accumulator machine (1-operand machine)
  • Register machine (2,3,... operand machine)
  • Random-access machine
  • Abstract machine
  • Cell-probe model
  • Robertson–Webb query model
  • Chomsky hierarchy
  • Turing completeness

References

  1. ↑ "Models of Computation" (PDF).

Further reading

  • Fernández, Maribel (2009). Models of Computation: An Introduction to Computability Theory. Undergraduate Topics in Computer Science. Springer. ISBN 978-1-84882-433-1.
  • Savage, John E. (1998). Models Of Computation: Exploring the Power of Computing. Addison-Wesley. ISBN 978-0201895391.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Model_of_computation&oldid=1370323429"
Categories:
  • Models of computation
  • Computational complexity theory
  • Computability theory
Hidden categories:
  • Articles with short description
  • Short description matches Wikidata
  • Articles needing additional references from February 2021
  • All articles needing additional references
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.