Post–Turing machine
   HOME

TheInfoList



OR:

A Post–Turing machineRajendra Kumar, ''Theory of Automata'', Tata McGraw-Hill Education, 2010, p. 343. is a "program formulation" of a type of
Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer alg ...
, comprising a variant of
Emil Post Emil Leon Post (; February 11, 1897 – April 21, 1954) was an American mathematician and logician. He is best known for his work in the field that eventually became known as computability theory. Life Post was born in Augustów, Suwałki Gove ...
's
Turing-equivalent Turing equivalence may refer to: * As related to Turing completeness In computability theory, a system of data-manipulation rules (such as a computer's instruction set, a programming language, or a cellular automaton) is said to be Turing-compl ...
model A model is an informative representation of an object, person or system. The term originally denoted the plans of a building in late 16th-century English, and derived via French and Italian ultimately from Latin ''modulus'', a measure. Models c ...
of
computation Computation is any type of arithmetic or non-arithmetic calculation that follows a well-defined model (e.g., an algorithm). Mechanical or electronic devices (or, historically, people) that perform computations are known as ''computers''. An esp ...
. Post's model and Turing's model, though very similar to one another, were developed independently. Turing's paper was received for publication in May 1936, followed by Post's in October. A Post–Turing machine uses a binary alphabet, an
infinite Infinite may refer to: Mathematics * Infinite set, a set that is not a finite set *Infinity, an abstract concept describing something without any limit Music *Infinite (group), a South Korean boy band *''Infinite'' (EP), debut EP of American m ...
sequence In mathematics, a sequence is an enumerated collection of objects in which repetitions are allowed and order matters. Like a set, it contains members (also called ''elements'', or ''terms''). The number of elements (possibly infinite) is called ...
of binary storage locations, and a primitive
programming language A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
with instructions for bi-directional movement among the storage locations and alteration of their contents one at a time. The names "Post–Turing program" and "Post–Turing machine" were used by Martin Davis in 1973–1974 (Davis 1973, p. 69ff). Later in 1980, Davis used the name "Turing–Post program" (Davis, in Steen p. 241).


1936: Post model

In his 1936 paper "Finite Combinatory Processes—Formulation 1",
Emil Post Emil Leon Post (; February 11, 1897 – April 21, 1954) was an American mathematician and logician. He is best known for his work in the field that eventually became known as computability theory. Life Post was born in Augustów, Suwałki Gove ...
described a model of which he conjectured is "
logically equivalent Logic is the study of correct reasoning. It includes both formal and informal logic. Formal logic is the science of deductively valid inferences or of logical truths. It is a formal science investigating how conclusions follow from premise ...
to recursiveness". Post's model of a computation differs from the Turing-machine model in a further "atomization" of the acts a human "computer" would perform during a computation. Post's model employs a "
symbol A symbol is a mark, sign, or word that indicates, signifies, or is understood as representing an idea, object, or relationship. Symbols allow people to go beyond what is known or seen by creating linkages between otherwise very different conc ...
space" consisting of a "two-way infinite sequence of spaces or boxes", each box capable of being in either of two possible conditions, namely "marked" (as by a single vertical stroke) and "unmarked" (empty). Initially, finitely-many of the boxes are marked, the rest being unmarked. A "worker" is then to move among the boxes, being in and operating in only one box at a time, according to a fixed finite "set of directions" ( instructions), which are numbered in order (1,2,3,...,''n''). Beginning at a box "singled out as the starting point", the worker is to follow the set of instructions one at a time, beginning with instruction 1. There are five different primitive operations that the worker can perform: : (a) Marking the box it is in, if it is empty : (b) Erasing the mark in the box it is in, if it is marked : (c) Moving to the box on its right : (d) Moving to the box on its left : (e) Determining whether the box it is in, is or is not marked. Then, the ''i'' th "direction" (instruction) given to the worker is to be one of the following forms: (The above indented text and italics are as in the original.) Post remarks that this formulation is "in its initial stages" of development, and mentions several possibilities for "greater flexibility" in its final "definitive form", including # replacing the infinity of boxes by a finite extensible symbol space, "extending the primitive operations to allow for the necessary extension of the given finite symbol space as the process proceeds", # using an alphabet of more than two symbols, "having more than one way to mark a box", # introducing finitely-many "physical objects to serve as pointers, which the worker can identify and move from box to box".


1947: Post's formal reduction of the Turing 5-tuples to 4-tuples

As briefly mentioned in the article
Turing machine A Turing machine is a mathematical model of computation describing an abstract machine that manipulates symbols on a strip of tape according to a table of rules. Despite the model's simplicity, it is capable of implementing any computer alg ...
, Post, in his paper of 1947 (''Recursive Unsolvability of a Problem of Thue'') atomized the Turing 5-tuples to 4-tuples: :"Our quadruplets are quintuplets in the Turing development. That is, where our standard instruction orders either a printing (overprinting) or motion, left or right, Turing's standard instruction always order a printing and a motion, right, left, or none" (footnote 12, ''Undecidable'', p. 300) Like Turing, he defined erasure as printing a symbol "S0". And so his model admitted quadruplets of only three types (cf. ''Undecidable'', p. 294): : ''q''''i'' ''S''''j'' ''L'' ''q''''l'', : ''q''''i'' ''S''''j'' ''R'' ''q''''l'', : ''q''''i'' ''S''''j'' ''S''''k'' ''q''''l'' At this time he was still retaining the Turing state-machine convention – he had not formalized the notion of an assumed ''sequential'' execution of steps until a specific test of a symbol "branched" the execution elsewhere.


1954, 1957: Wang model

For an even further reduction – to only four instructions – of the Wang model presented here see
Wang B-machine As presented by Hao Wang (1954, 1957), his basic machine B is an extremely simple computational model equivalent to the Turing machine. It is "the first formulation of a Turing-machine theory in terms of computer-like models" (Minsky, 1967: 200). ...
. Wang (1957, but presented to the ACM in 1954) is often cited (cf. Minsky (1967), p. 200) as the source of the "program formulation" of binary-tape Turing machines using numbered instructions from the set : write 0 : write 1 : move left : move right : if scanning 0 then goto instruction ''i'' : if scanning 1 then goto instruction ''j'' Any binary-tape Turing machine is readily converted to an equivalent "Wang program" using the above instructions.


1974: first Davis model

Martin Davis was an
undergraduate Undergraduate education is education conducted after secondary education and before postgraduate education. It typically includes all postsecondary programs up to the level of a bachelor's degree. For example, in the United States, an entry-le ...
student of Emil Post. Along with
Stephen Kleene Stephen Cole Kleene ( ; January 5, 1909 – January 25, 1994) was an American mathematician. One of the students of Alonzo Church, Kleene, along with Rózsa Péter, Alan Turing, Emil Post, and others, is best known as a founder of the branch of ...
he completed his Ph.D. under
Alonzo Church Alonzo Church (June 14, 1903 – August 11, 1995) was an American mathematician, computer scientist, logician, philosopher, professor and editor who made major contributions to mathematical logic and the foundations of theoretical computer scien ...
(Davis (2000) 1st and 2nd footnotes p. 188). The following model he presented in a series of lectures to the Courant Institute at NYU in 1973–1974. This is the model to which Davis formally applied the name "Post–Turing machine" with its "Post–Turing language".In his chapter XIII ''Computable Functions'', Kleene adopts the Post model; Kleene's model uses a blank and one symbol "tally mark ¤" (Kleene p. 358), a "treatment closer in some respects to Post 1936. Post 1936 considered computation with a 2-way infinite tape and only 1 symbol" (Kleene p. 361). Kleene observes that Post's treatment provided a further reduction to "atomic acts" (Kleene p. 357) of "the Turing act" (Kleene p. 379). As described by Kleene "The Turing act" is the combined 3 (time-sequential) actions specified on a line in a Turing table: (i) print-symbol/erase/do-nothing followed by (ii) move-tape-left/move-tape-right/do-nothing followed by (iii) test-tape-go-to-next-instruction: e.g. "s1Rq1" means "Print symbol "¤", then move tape right, then if tape symbol is "¤" then go to state q1". (See Kleene's example p. 358.) Kleene observes that Post atomized these 3-actions further into two types of 2-actions. The first type is a "print/erase" action, the second is a "move tape left/right action": (1.i) print-symbol/erase/do-nothing followed by (1.ii) test-tape-go-to-next-instruction, OR (2.ii) move-tape-left/move-tape-right/do-nothing followed by (2.ii) test-tape-go-to-next-instruction. But Kleene observes that while : "Indeed it could be argued that the Turing machine act is already compound, and consists psychologically in a printing and change in the state of mind, followed by a motion and another state of mind andPost 1947 does thus separate the Turing act into two; we have not here, primarily because it saves space in the machine tables not to do so."(Kleene p. 379) In fact Post's treatment (1936) is ambiguous; both (1.1) and (2.1) could be followed by "(.ii) go to next instruction in numerical sequence". This represents a further atomization into three types of instructions: (1) print-symbol/erase/do-nothing then go-to-next-instruction-in-numerical-sequence, (2) move-tape-left/move-tape-right/do-nothing then go-to-next-instruction-in-numerical-sequence (3) test-tape then go-to-instruction-xxx-else-go-to-next-instruction-in-numerical-sequence. The instructions are assumed to be executed sequentially (Davis 1974, p. 71):


1978: second Davis model

The following model appears as an essay ''What is a computation?'' in Steen pages 241–267. For some reason Davis has renamed his model a "Turing–Post machine" (with one back-sliding on page 256.) In the following model, Davis assigns the numbers "1" to Post's "mark/slash" and "0" to the blank square. To quote Davis: "We are now ready to introduce the Turing–Post Programming Language. In this language there are seven kinds of instructions: :: "PRINT 1 :: "PRINT 0 :: "GO RIGHT :: "GO LEFT :: "GO TO STEP i IF 1 IS SCANNED :: "GO TO STEP i IF 0 IS SCANNED :: "STOP "A Turing–Post program is then a list of instructions, each of which is of one of these seven kinds. Of course, in an actual program, the letter ''i'' in a step of either the fifth or sixth kind must be replaced with a definite (positive whole) number." (Davis in Steen, p. 247).


1994 (2nd edition): Davis–Sigal–Weyuker's Post–Turing program model

"Although the formulation of Turing we have presented is closer in spirit to that originally given by Emil Post, it was Turing's analysis of the computation that has made this formulation seem so appropriate. This language has played a fundamental role in theoretical computer science." (Davis et al. (1994) p. 129) This model allows for the printing of multiple symbols. The model allows for B (blank) instead of S0. The tape is infinite in both directions. Either the head or the tape moves, but their definitions of RIGHT and LEFT always specify the same outcome in either case (Turing used the same convention). :: PRINT σ ;Replace scanned symbol with σ :: IF σ GOTO L ;IF scanned symbol is σ THEN goto "the first" instruction labelled L :: RIGHT ;Scan square immediately right of the square currently scanned :: LEFT ;Scan square immediately left of the square currently scanned This model reduces to the binary versions presented above, as shown here: :: PRINT 0 = ERASE ;Replace scanned symbol with 0 = B = BLANK :: PRINT 1 ;Replace scanned symbol with 1 :: IF 0 GOTO L ;IF scanned symbol is 0 THEN goto "the first" instruction labelled L :: IF 1 GOTO L ;IF scanned symbol is 1 THEN goto "the first" instruction labelled L :: RIGHT ;Scan square immediately right of the square currently scanned :: LEFT ;Scan square immediately left of the square currently scanned


Examples of the Post–Turing machine


Atomizing Turing quintuples into a sequence of Post–Turing instructions

The following "reduction" (decomposition, atomizing) method – from 2-symbol Turing 5-tuples to a sequence of 2-symbol Post–Turing instructions – can be found in Minsky (1961). He states that this reduction to "a ''program'' ... a sequence of ''Instructions''" is in the spirit of Hao Wang's B-machine (italics in original, cf. Minsky (1961) p. 439). (Minsky's reduction to what he calls "a sub-routine" results in 5 rather than 7 Post–Turing instructions. He did not atomize Wi0: "Write symbol Si0; go to new state Mi0", and Wi1: "Write symbol Si1; go to new state Mi1". The following method further atomizes Wi0 and Wi1; in all other respects the methods are identical.) This reduction of Turing 5-tuples to Post–Turing instructions may not result in an "efficient" Post–Turing program, but it will be faithful to the original Turing-program. In the following example, each Turing 5-tuple of the 2-state busy beaver converts into for a total of instructions per Turing-state. For example, the 2-state busy beaver's "A" Turing-state, written as two lines of 5-tuples, is: The table represents just a single Turing "instruction", but we see that it consists of two lines of 5-tuples, one for the case "tape symbol under head = 1", the other for the case "tape symbol under head = 0". Turing observed (''Undecidable'', p. 119) that the left-two columns – "m-configuration" and "symbol" – represent the machine's current "configuration" – its state including both Tape and Table at that instant – and the last three columns are its subsequent "behavior". As the machine cannot be in two "states" at once, the machine must "branch" to either one configuration or the other: After the "configuration branch" (J1 xxx) or (J0 xxx) the machine follows one of the two subsequent "behaviors". We list these two behaviors on one line, and number (or label) them sequentially (uniquely). Beneath each jump (branch, go to) we place its jump-to "number" (address, location): Per the Post–Turing machine conventions each of the Print, Erase, Left, and Right instructions consist of two actions: And per the Post–Turing machine conventions the conditional "jumps" J0xxx, J1xxx consist of two actions: And per the Post–Turing machine conventions the unconditional "jump" Jxxx consists of a single action, or if we want to regularize the 2-action sequence: Which, and how many, jumps are necessary? The unconditional jump Jxxx is simply J0 followed immediately by J1 (or vice versa). Wang (1957) also demonstrates that only one conditional jump is required, i.e. either J0xxx or J1xxx. However, with this restriction, the machine becomes difficult to write instructions for. Often only two are used, i.e. but the use of all three does eliminate extra instructions. In the 2-state Busy Beaver example that we use only .


2-state busy beaver

The mission of the busy beaver is to print as many ones as possible before halting. The "Print" instruction writes a 1, the "Erase" instruction (not used in this example) writes a 0 (i.e. it is the same as P0). The tape moves "Left" or "Right" (i.e. the "head" is stationary). State table for a 2-state Turing-machine busy beaver: Instructions for the Post–Turing version of a 2-state busy beaver: observe that all the instructions are on the same line and in sequence. This is a significant departure from the "Turing" version and is in the same format as what is called a "computer program": Alternately, we might write the table as a string. The use of "parameter separators" ":" and instruction-separators "," are entirely our choice and do not appear in the model. There are no conventions (but see Booth (1967) p. 374, and Boolos and Jeffrey (1974, 1999) p. 23), for some useful ideas of how to combine state diagram conventions with the instructions – i.e. to use arrows to indicate the destination of the jumps). In the example immediately below, the instructions are ''sequential'' starting from "1", and the parameters/"operands" are considered part of their instructions/"opcodes": : J1:5, P, R, J:8, P, L, J:8, J1:12, P, L, J1:1, P, N, J:15, H


Notes


References

* Stephen C. Kleene, ''Introduction to Meta-Mathematics, North-Holland Publishing Company'', New York, 10th edition 1991, first published 1952. Chapter XIII is an excellent description of Turing machines; Kleene uses a Post-like model in his description and admits the Turing model could be further atomized, see footnote 1. * Martin Davis, editor: ''The Undecidable, Basic Papers on Undecidable Propositions, Unsolvable Problems and Computable Functions'', Raven Press, New York, 1965. Papers include those by Gödel,
Church Church may refer to: Religion * Church (building), a building for Christian religious activities * Church (congregation), a local congregation of a Christian denomination * Church service, a formalized period of Christian communal worship * Chri ...
, Rosser, Kleene, and Post. * Martin Davis, "What is a computation", in ''Mathematics Today'', Lynn Arthur Steen, Vintage Books (Random House), 1980. A wonderful little paper, perhaps the best ever written about Turing Machines. Davis reduces the Turing Machine to a far-simpler model based on Post's model of a computation. Includes a little biography of Emil Post. * Martin Davis, ''Computability: with Notes by Barry Jacobs'', Courant Institute of Mathematical Sciences, New York University, 1974. * Martin Davis,
Ron Sigal Ron is a shortening of the name Ronald. Ron or RON may also refer to: Arts and media * Big Ron (''EastEnders''), a TV character * Ron (''King of Fighters''), a video game character *Ron Douglas, the protagonist in ''Lucky Stiff'' played by Joe ...
,
Elaine J. Weyuker Elaine Jessica Weyuker is an ACM Fellow, an IEEE Fellow (since 2003), and an AT&T Fellow at Bell Labs for research in software metrics and testing as well as elected to the National Academy of Engineering. She is the author of over 130 papers i ...
, (1994) ''Computability, Complexity, and Languages: Fundamentals of Theoretical Computer Science – 2nd edition'', Academic Press: Harcourt, Brace & Company, San Diego, 1994 (First edition, 1983). *
Fred Hennie Fred may refer to: People * Fred (name), including a list of people and characters with the name Mononym * Fred (cartoonist) (1931–2013), pen name of Fred Othon Aristidès, French * Fred (footballer, born 1949) (1949–2022), Frederico Rod ...
, ''Introduction to Computability'', Addison–Wesley, 1977. *
Marvin Minsky Marvin Lee Minsky (August 9, 1927 – January 24, 2016) was an American cognitive and computer scientist concerned largely with research of artificial intelligence (AI), co-founder of the Massachusetts Institute of Technology's AI laboratory ...
, (1961), ''Recursive Unsolvability of Post's problem of 'Tag' and other Topics in Theory of Turing Machines'', Annals of Mathematics, Vol. 74, No. 3, November, 1961. *
Roger Penrose Sir Roger Penrose (born 8 August 1931) is an English mathematician, mathematical physicist, philosopher of science and Nobel Laureate in Physics. He is Emeritus Rouse Ball Professor of Mathematics in the University of Oxford, an emeritus f ...
, ''The Emperor's New Mind: Concerning computers, Minds and the Laws of Physics'', Oxford University Press, Oxford England, 1990 (with corrections). Cf. Chapter 2, "Algorithms and Turing Machines". An overcomplicated presentation (see Davis's paper for a better model), but a thorough presentation of Turing machines and the
halting problem In computability theory, the halting problem is the problem of determining, from a description of an arbitrary computer program and an input, whether the program will finish running, or continue to run forever. Alan Turing proved in 1936 that a ...
, and Church's
lambda calculus Lambda calculus (also written as ''λ''-calculus) is a formal system in mathematical logic for expressing computation based on function abstraction and application using variable binding and substitution. It is a universal model of computation th ...
. * Hao Wang (1957): "A variant to Turing's theory of computing machines", ''Journal of the Association for Computing Machinery'' (JACM) 4, 63–92. {{DEFAULTSORT:Post-Turing machine Turing machine Models of computation