Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are the six basic primitives in Turing Complete

I am listening the edX lesson, and the professor stresses that every machine able to perform those six basic primitives can be called Turing Complete. But what are the six basic primitives?

like image 264
YourTeddy Avatar asked Jan 26 '15 10:01

YourTeddy


People also ask

What is required for Turing complete?

In general, for an imperative language to be Turing-complete, it needs: A form of conditional repetition or conditional jump (e.g., while , if + goto ) A way to read and write some form of storage (e.g., variables, tape)

What is a Turing complete system?

A Turing Complete system means a system in which a program can be written that will find an answer (although with no guarantees regarding runtime or memory). So, if somebody says "my new thing is Turing Complete" that means in principle (although often not in practice) it could be used to solve any computation problem.

What is Turing complete Blockchain?

Turing Complete refers to a machine that, given enough time and memory along with the necessary instructions, can solve any computational problem, no matter how complex. The term is normally used to describe modern programming languages as most of them are Turing Complete (C++, Python, JavaScript, etc.).


2 Answers

The six basic operations/primitives that gives a language Turing completeness are:

  • Right: Move the Machine’s head to the right of the current square
  • Left: Move the Machine’s head to the left of the current square
  • Print: Print a symbol on the current square
  • Scan: Identify any symbols on the current square
  • Erase: Erase any symbols presented on the current square
  • Nothing/halt: Do nothing

You can learn more at Alan Turing reference web site and/or watch a small video about it.

like image 75
staticdev Avatar answered Dec 01 '22 00:12

staticdev


They are the basic of Turing Machine and are composed of

Right: Move the Machine’s head to the right of the current square

Left: Move the Machine’s head to the left of the current square

Print: Print a symbol on the current square

Scan: Identify any symbols on the current square

Erase: Erase any symbols presented o the current square

Nothing/HALT: Do nothing

The idea is that with those six primitives you can program anything.

like image 44
Wald Avatar answered Nov 30 '22 23:11

Wald