I would like to know if in the literature there have been considered versions of Turing machines that, instead of changing the content of one tape square at a time are allowed to perform more general moves, particularly adding new squares to the tape and cutting out existing squares. Specifically, where in a single transition the head can also insert new tape squares and or remove some new tape squares, say to the right and or to the left of the current position of the head, write something on any newly inserted tape squares, change the letter on the square that was being read, and then move left, right or stay put. Or some version of the above. If some such versions of Turing machines have been considered, and if there are some standard names/terminology for them, I would very much like to know what they are. Thanks!
Asked
Active
Viewed 219 times
3
-
1These moves are easy to simulate with Turing machines as defined in the Wikipedia article, say. I have not come across variant definitions including single transitions like this. (If you are solely interested in what is computable, such transitions don't add anything, while if you are interested in complexity issues, then such transitions seem to be rather unrealistic.) – Rob Arthan Dec 04 '18 at 20:43
-
@Rob Could a standard Turing machine insert an extra bit into an infinitely long tape without discarding an existing bit? (It would have to go to the far end and shift everything along, but there's no far end.) – timtfj Dec 05 '18 at 01:17
-
A Turing machine tape is defined as being padded with an infinite supply of cells marked with a blank symbol that does not appear in the part of the tape that initially represents the input data. You never need to write blanks other than at the ends of the interesting part of the tape. So you can code algorithms as if the far ends are known. – Rob Arthan Dec 05 '18 at 01:28
-
So an infinite tape containing pre-existing information (not blanks—maybe the digits of one transcendental nunber to the left and of another to the right, and it has to do some operation on them without discarding their digits) would be outside the definition? – timtfj Dec 06 '18 at 02:56