lpetrich
Contributor
Mathematicians recognize three different kinds of infinity:
Models of computation: from memoryless to Turing machines
Turing completeness
- The limit of some arbitrarily large finite number.
- The cardinality or number of members of a set.
- The ordinal or number in sequence.
Models of computation: from memoryless to Turing machines
- Memoryless system
- Finite-state machine: internal state register. New value = f(input, old value).
- Pushdown automaton: a FSM with a pushdown stack, a LIFO (last-in-first-out) memory.
- Turing machine: a FSM with a memory tape that can be moved arbitrarily in either direction.
Turing completeness
I must say that I haven't seen Turing-completeness assessments for any of these systems, but these systems are credited with being the first Turing-complete systems of their kind:To show that something is Turing-complete, it is enough to show that it can be used to simulate some Turing-complete system. For example, an imperative language is Turing-complete if it has conditional branching (e.g., "if" and "goto" statements, or a "branch if zero" instruction; see one-instruction set computer) and the ability to change an arbitrary amount of memory (e.g., the ability to maintain an arbitrary number of data items). Of course, no physical system can have infinite memory; but if the limitation of finite memory is ignored, most programming languages are otherwise Turing-complete.
- Proposed hardware: Charles Babbage's Analytical Machine
- Actual hardware: ENIAC
- Integrated-circuit chip: Intel 4004