Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ml_shpora.doc
Скачиваний:
71
Добавлен:
15.06.2014
Размер:
729.09 Кб
Скачать

Вопрос 18. Основные машины Тьюринга.

  1. А – перенос нуля

q1001x0 ׀≡> q001x00

  1. Б+ - сдвиг вправо

q1ai1x0 ׀≡> ai1x q00

  1. Б- - сдвиг влево

01x q1 ai ׀≡> q001x ai

  1. В – транспозиция

q101x01y0 ≡> q001y01x0

  1. К – кодирование

q101x00x0 ׀≡> q001x01x0

  1. Л – стирающая машина

q101x0 ׀≡> q000x0

  1. R – удаление 1

q101x+10 ׀≡> q001x00

  1. S – добавление 1

q101x0 ׀≡> q001x+1

  1. Сложение

q101x+101y+10 ׀≡> q001x+y+1000

  1. Умножение

q101x+101y+10 ≡> q001x*y+10

Операции над машинами Тьюринга.

  1. Т=Т1◦Т2 – композиция машин

М1 =Т1> М2 = α q0T1 β

α q0T2 β = [М2]q0 T1 q0 T2 =Т2> М3

М1=Т> М3

Q1∩Q2 = Ø, A1=A2=A

T=<A, (Q1\{q0T1})UQ2, [П1]q0 T1 q0 T2U[П2]>

- последвательное выполнение

  1. Условный оператор

Т1, Т2

Т=Е{T1T2

  1. αq1Tabc β, abc=010 и αq1T1abc β = M1, то αq1Tabc β =Т1

  2. если abc≠010 и αq1T2abc β = М2, то αq1Tabc β =Т2

Q1∩Q2 ≠ Ø, A1=A2=A

T=<A, (Q1\{q0T1})U(Q2\{q0T2})U{q0T, … , qrT}, П>

П=(П1 q0 T1q0 T2 )U(П2 q0 T2q0 T1)U {проверка условия и задание альтернатив}

  1. Условный оператор с циклом

Т1, Т2, Т3

• {Т2, если авс=010

Т=Т1 Е {

3 в прот. случае

Работает Т1

М1 = > αq1T1abc β

Проверка условия (заменяем q0T1 на q2).

После работы T2 следует остановка.

После работы Т3 переход к Т1 и цикл повторяется, q0T3 заменяется на q1T1,

а q0T2 на q0T.

Вопрос 19. Вычисление функций на машинах Тьюринга.

f: X→ N , XNK. f называется вычислимой на машине Тьюринга Tf, если:

1) (n1,…,nk)  X, q1Tf 0n1 0n2 0 … 0nk (Машина работает бесконечно, т.е. не переходит в q0Tf )

n=11…1  n+1 раз.

2) (n1,…,nk)  X, то q1Tf 0n1 0n2 0 … 0nk 0 Tf  q0Tf 0 f (n1,…,nk) 0 

f правильно вычислима на М.Т. Tf если выполняется 1), 2) и не достраиваются ячейки слова.

Примеры:

1) x+y и x  y – правильно вычислимы на М.Т.

2) Если f, q1,…,qn правильно вычислимы, то f(q1(x1,…,xk),q2(x1,…,xk),…,qn(x1,…,xk)) правильно вычислима.

f (g1(x1,x2,x3), g2(x1,x2,x3)).

q1 0 x1 0 x2 0 x3 0 К3

q2 0x1 0x2 0x3 0 x1 0x2 0x3 0 (Б+)3Tq1

0x1 0x2 0x3 q 0 q1(x1,x2,x3) 0 (Б-)3Ц4

q 0 g1 (x1,x2,x3) 0 g2(x1,x2,x3) 0 (Б+)Tq2Б-

q0 0 f(g1(x1,x2,x3),g2(x1,x2,x3)) 0

Вопрос 20. Понятие примитивно рекурсивной функции. Основные примеры. Простейшие прф:

  1. Imn (x1,…,xn) = xm, m  n

  2. S(x)=x+1

  3. o(x)=0

Операторы:

  1. S (оператор подстановки)

S (f(n),g1(k),gn(k))(x) = f(g1(x),…,gn(x))

x = (x1,…,xk)

  1. R (оператор примитивной реурсии)

R(f(n+2), g(n))= h(n+1)

h(x,0) = g(x)

h(x,y+1) = f(x,y,h(x,y))

Функция f называется примитивно рекурсивной, если существует последовательность f0,f1,…,fn , такая что fn=f и  i  n. Функция fi является простейшей ПРФ или получается из предыдущих функций с помощью операторов S и R.

Примеры:

1) x+y x+0 = I11(x)

x+(y+1)=S(x+y)

2) x*y x*0 = o(x)

x*(y+1) = S(x+y)

3) x! = 1*2*3…x, 0!=1

4) xy, где x0 = 1

5) [x/y] = d, если y 0

[x/y] = x, если y = 0

x = dy + r, r<y

6) rest(x,y) = r, если y  0

rest(x,y) = r, если y = 0

7)n  Pn – n-е простое число.

(P0=2, P1=3, P2=5, …)

8) ex(x,y) = показатель степени Py в разложении числа x на непротиворечивые множители, если x0.

ex(x,y) = 0, в противном случае.

X=P0h 0 P1h1… Pkhk, ex(x,y) = hy

Соседние файлы в предмете Математическая логика