What is an abstract machine?

abstract machines, also called slot machines, are an element of theoretical computer science. The abstract machine resembles a function in mathematics. It accepts inputs and produces outputs according to the specified rules. Abstract machines differ from literal machines because it is assumed that they will work perfectly and independently of hardware. They are divided into types based on characteristics, such as how they perform their operations and what types of inputs they can receive.

In the classification of abstract machines, one of the simplest differences concerns the number of operations to be performed at any point. The abstract machine is called deterministic if there is always only one way to proceed. It is nodeterministic if there are several options for the machine in at least one of its possible states. The "pushdown" is one that has the ability to manipulate their pile of inputs rather than simply respond to them in the order they appear.

Wolfram Mathworld gives two famous examples of abstract machines. One of these examples is Conway's life game, a deterministic abstract machine, because only one configuration may appear from any other configuration. This game uses a grid in which each box or cell can have either a state of "living" or "dead". The condition of the entire grid is determined on the basis of the previous state. If the living cell touches exactly two or three other living cells, it continues to live. If he has one, two or more than three neighbors (up to eight), he will die. A dead cell comes to life with exactly three neighbors; Otherwise it will remain dead.

Another example, Turing Machine, is one of the most basic and basic abstract machines in computer science. Turing the machine performs operations on the tape - a string of symbols -neomed size. It contains instructions for changing symbols and for changing the symbol on which it works. A simple Turing machine can haveOnly instruction "Transform symbol to 1 and then move right". This machine would not release anything but string 1. This simple turing machine is deterministic, but it is also possible to construct nodreminist Turing machines that can perform several different operations with respect to the same input.

These abstract machines can serve many purposes. They can be fun theoretical toys, but can also serve as models for real computer systems. The abstract machine is the core of computer science as a discipline.

IN OTHER LANGUAGES

Was this article helpful? Thanks for the feedback Thanks for the feedback

How can we help? How can we help?