Главная страница
Навигация по странице:

  • Дана машина Тьюринга с внешним алфавитом А = {а

  • Определить, имеется ли во входном тексте слово «каракатица».

  • Тьюринг. Лабораторная работа 4. Машина Тьюинга. Представление алгоритмов с помощью машины Тьюринга


    Скачать 130.5 Kb.
    НазваниеПредставление алгоритмов с помощью машины Тьюринга
    АнкорТьюринг
    Дата02.09.2022
    Размер130.5 Kb.
    Формат файлаdoc
    Имя файлаЛабораторная работа 4. Машина Тьюинга.doc
    ТипЛабораторная работа
    #659925

    Лабораторная работа № 4

    Группа а

    Тема: Представление алгоритмов с помощью машины Тьюринга

    Цель работы: Освоить методы анализа работы машин Тьюринга и их разработки для реализации заданного алгоритма.

    Требования к выполнению работы

    Задание состоит из двух частей:

    1. Задана машина Тьюринга и ее начальная конфигурация. Написать алгоритм, состоящий из последовательности команд, реализуемых машиной, и конфигураций машины после выполнения каждой команды алгоритма.

    2. Разработать машину Тьюринга, реализующую заданную программу. Для этого:

      1. Дать словесное описание алгоритма;

      2. Определить внешний алфавит А, если он не задан (набор входных символов);

      3. Определить внутренний алфавит Q (перечень состояний);

      4. Определить заключительное состояние машины;

      5. Составить программу машины в виде таблицы переходов или последовательности команд;

      6. Проверить функционирование машины, написав алгоритм обработки различных входных последовательностей;

      7. Проверить функционирование машины для тех же входных последовательностей с помощью эмулятора машины Тьюринга.

    Варианты заданий.

    Часть 1

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4, q5, q6, q7}и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    q4

    q5

    q6

    q7

    а0

    q4а0П

    q6а0 П

    q6а0 П

    q0

    q4 а0 П

    q0а0С

    q6а0 П

    1

    q2

    q3

    q1

    q5а0С

    q5а0С

    q7а0 С

    q7а0 С


    Начальная конфигурация: а) q111111; б) q1111.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1, *}, алфавитом внутренних состояний Q = {q0, q1, q2, q3,}и со следующей функциональной программой: q1 1q2а0Л, q1*q0 а0С, q2а0q3 1П, q21q21Л, q2*q2*Л, q3а0q1 а0Л, q31q31П, q3*q3*П.

    Начальная конфигурация: q111*111.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1, *}, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    q4

    а0

    q1а0П

    q3 а0П

    q3а0Л

    q1а0Л

    1

    q3а0Л

    q2

    q4 а0П

    q4

    *

    q0 а0С

    q3

    -

    q4


    Начальная конфигурация: а) q1111*11; б) q111*11.

    1. Дана машина Тьюринга с внешним алфавитом А = {s0, 1, , }, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    q4

    s0

    q4s0П

    q3s0Л

    q1s0П

    q0s0Л

    1

    q2С

    q1С

    q1

    q1



    q1Л

    q2П

    q3

    q4 s0П



    q1Л

    q2П

    q3s0Л

    q4


    Начальная конфигурация: q1111*11

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4, q5, q6, q7}и со следующей функциональной программой: q1 а0q4а0П, q11 q21Л, q2а0q6 а0 П, q21q31Л, q3а0q6а0 П, q4 а0 q01С, q5 а0q4 а0 П, q6а0q0а0С, q7а0q6а0 П, q31q11Л, q41q5а0С, q51q5а0С, q6 1q7а0 С, q71q7а0 С

    Начальная конфигурация: а) q10111 а0 а01111.

    1. Дана машина Тьюринга с внешним алфавитом А = {s0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    q4

    q5

    q6

    q7

    q8

    q9

    Q10

    s0

    q4s0П

    q6s0П

    q8s0П

    q0s0С

    q4s0П

    q0

    q6s0П

    q10

    q8s0П

    q0

    1

    q2

    q3

    q1

    q5s0С




    q7s0С




    q9s0С




    q10


    Начальная конфигурация: а) q111111; б) q11111.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1, *}, алфавитом внутренних состояний Q = {q0, q1, q2, q3} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    а0

    -

    q3

    q1а0Л

    1

    q2 а0Л

    q2

    q3

    *

    q0 а0С

    q2

    q3


    Начальная конфигурация: а) q1111*111; б) q11*11.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1, *}, алфавитом внутренних состояний Q = {q0, q1, q2, q3,, q4}и со следующей функциональной программой: q1а0q2а0П, q11q3а0Л, q1*q0 а0С, q2а0q3 а0П, q21q21Л, q2*q3*Л, q3а0q3а0Л, q31q4а0П, q4а0q1 а0Л, q41q41П, q4*q4

    Начальная конфигурация: 1111*11*1*11

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    а0

    q2а0П

    q2 а0П

    q0а0С

    1

    q1

    q3

    q3


    Начальная конфигурация: q111а0а01.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    а0

    q1а0П

    q3а0Л

    q0а0С

    1

    q2

    q1а0П

    q2


    Начальная конфигурация: q11111а01.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1, *}, алфавитом внутренних состояний Q = {q0, q1, q2, q3,, q4}и со следующей функциональной программой: q1s0q4s0П, q11q2аС, q1q1аЛ, q1q2Л, q2s0q3s0Л, q21q1С, q2q2аП, q2q2П, q3s0q1s0Л, q31q11П, q3q31Л, q3q3s0Л, q4s0q0s0Л, q41q11Л, q4q4s0П, q4q41П.

    Начальная конфигурация: а) 1q1111 , б) q1111.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    q4

    а0

    q2а0П

    q3а0Л

    q1

    q0а0С

    1

    q2

    q4а0П

    q0

    q2а0П


    Начальная конфигурация: q1111а01а01.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1} и со следующей функциональной программой:




    Q

    A

    q0

    q1

    а0




    q0

    1

    q2а0Л

    q1


    Начальная конфигурация: q101 q10а011.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = { q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10} и со следующей функциональной программой: q1s0q4s0П, q11q21Л, q2s0q6s0П, q21q31С, q3s0q8s0П, q31q11Л, q4s0q0s0П, q41q5s0С,. q5s0q4s0П, q6s0q01С, q61q7s0С, q7s0q6s0П, q8s0q101С, q81q0s0С, q9s0q8s0П, q10s0q01С, q101q10

    Начальная конфигурация: q1111 , б) 1111111111.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3,}и со следующей функциональной программой: q11q11П, q1а0q2а0П, q2а0q2а0П, q21q31П, q3а0q0а0С, q31q3

    Начальная конфигурация: q10001.

    1. Дана машина Тьюринга с внешним алфавитом А = {s0, a, b, c}, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    q4

    s0

    q1s0Л

    q0аC

    q0bC

    q0cC

    a

    q2s0Л

    q2aЛ

    q3aЛ

    q4aЛ

    b

    q3s0Л

    q2bЛ

    q3bЛ

    q4bЛ

    c

    q4s0Л

    q2cЛ

    q3cЛ

    q4cЛ


    Начальная конфигурация: q1aabcbbc.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3,}и со следующей функциональной программой: q1а0q1а0П, q11q21П, q2а0q3а0Л, q21q1 а0П, q3а0q0а0С, q31q2

    Начальная конфигурация: q10001.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1}и со следующей функциональной программой: q1а0q01Л, q11q11П, q01q2а0Л

    Начальная конфигурация: 11q1а01111.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1}, алфавитом внутренних состояний Q = {q0, q1, q2, q3,, q4}и со следующей функциональной программой: q1а0q2а0П, q11q21П, q2а0q3 а0Л, q21q4а0П, q3а0q11Л, q31q0а0С, q4а0q0а0С, q41q2а0П.

    Начальная конфигурация: q11а011а0111а011.

    1. Дана машина Тьюринга с внешним алфавитом А = {s0, a, b, c}, алфавитом внутренних состояний Q = {q0, q1, q2, q3, q4} и со следующей функциональной программой: q1s0q1s0Л, q1aq2s0Л, q1bq3s0Л, q1cq4s0Л, q2s0q0aC, q2aq2aЛ, q2bq2bЛ, q2сq2сЛ, q3s0q0bC, q3aq3aЛ, q3bq3bЛ, q3сq3сЛ, q4s0q0cC, q4aq4aЛ, q4bq4bЛ, q4сq4сЛ.

    Начальная конфигурация: q1aababcabb.

    1. Дана машина Тьюринга с внешним алфавитом А = {а0, 1, *}, алфавитом внутренних состояний Q = {q0, q1, q2, q3} и со следующей функциональной программой:

    Q

    A

    q1

    q2

    q3

    а0

    -

    q3

    q1а0Л

    1

    q2 а0Л

    q2

    q3

    *

    q0 а0С

    q2

    q3


    Начальная конфигурация: а) q111*111*1*1.
    Часть 2

    1. A={a,b,c}. Заменить на a каждый второй символ в слове P.

    2. Дана конечная совокупность единиц, вписанных в ячейки, взятые подряд без пропусков. Постройте функциональную схему такой машины Тьюринга, которая записывала бы в десятичной системе число этих единиц, т. е. пересчитывала бы набор единиц (дешифратор).

    3. Пусть P имеет вид Q>R, где Q и R – непустые слова из символов 0 и 1. Трактуя Q и R как записи двоичных чисел (возможно, с незначащими нулями), выдать в качестве ответа слово 1, если число Q больше числа R, и слово 0 иначе.

    4. A={a,b}. Если в P символов a больше, чем символов b, то выдать ответ a, если символов a меньше символов b, то выдать ответ b, а иначе в качестве ответа выдать пустое слово.

    5. На ленте записано выражение x+y, где x и y – числа в двоичной системе счисления. Получить результат операции.

    6. A={0,1}. Считая непустое слово P записью числа в двоичной системе, получить двоичное число, равное учетверенному числу P (например: 101 → 10100).

    7. A={a,b,c}. Если P – слово чётной длины (0, 2, 4, …), то выдать ответ a, иначе – пустое слово.

    8. Реализовать функцию f=x - 4.

    9. A={a,b,c}. Пусть P имеет нечётную длину. Оставить в P только средний символ.

    10. Определить, имеется ли во входном тексте слово «каракатица».

    11. Используя программу счетчика, вычитающего единицу из десятичной записи натурального числа, составьте программу машины Тьюринга, которая бы по десятичной записи числа п выписывала бы на ленту n палочек (шифратор).

    12. A={a,b}. Заменить в P каждое вхождение a на bb.

    13. Считая слово P записью числа в единичной системе, определить, является ли это число степенью 3 (1, 3, 9, 27, …). Ответ: пустое слово, если является, или слово из одной палочки иначе.

    14. A={ | }. Считая слово P записью числа в единичной системе счисления, получить запись этого числа в троичной системе.

    15. Во входном тексте подсчитать количество слов.

    16. A={0,1,2}. Считая непустое слово P записью положительного числа в троичной системе счисления, уменьшить это число на 1.

    17. A={0,1,2}. Считая непустое слово P записью числа в троичной системе счисления, получить запись этого числа в единичной системе.

    18. A={f, r, 2, 5, c, d}. Определить, является ли слово P записью числа в шестнадцатеричной системе счисления.

    19. На ленту подряд вписаны два конечных набора из m и n единиц, разделенные звездочкой. Причем в левом наборе единиц не меньше, чем в правом (m > n). Составьте программу машины Тьюринга, которая в левом наборе оставляла бы ровно столько единиц, на сколько единиц в левом наборе больше, чем в правом, а все остальные единицы стирала бы (вычитание единиц).

    20. Постройте машину Тьюринга, осуществляющую перевод слова 001x10 в слово 01x00, где 1х = 1...1 (х единиц). Причем в начальном положении машина должна находиться в состоянии q1 и обозревать правую ячейку, эту же ячейку она должна обозревать и в момент остановки.

    21. A={a,b,0,1}. Определить, является ли слово P записью числа в двоичной системе счисления (непустым словом, состоящем только из цифр 0 и 1). Ответ: слово 1 (да) или слово 0.


    написать администратору сайта