Смекни!
smekni.com

Алгоритми Маркова (стр. 2 из 2)

Але у будь-якому випадку складність НАМ для U1(n) більше складності Машини Тюрінга для цієї ж функції, яка дорівнювала k+1.

Зверніть увагу, що у НАМ порядок проходження правил підстановки в схемі алгоритму істотно впливає на результат, тоді як для МТ він не существенен.

Побудуємо НАМ для прикладу 2 з лекції 2:

побудувати алгоритм для обчислення

U2((n) 1) =(n-1) 1

Отже, S={|}; W=S; V=Æ, тобто порожньо.

| a

Складність цього алгоритму рівна 1, тоді як складність алгоритму для Машини Тюрінга дорівнювала n.

Тепер побудуємо НАМ:

побудувати алгоритм для обчислення

U3((n) 1) =(n) 10

S={|}; W={0,1,2,3,4,5,6,7,8,9}; V=Æ

Схема цього алгоритму приведена на малюнку 3.2

1|®2

2|®3

3|®4

4|®5

5|®6

6|®7

7|®8

8|®9

9|®|0

|0®10

0|®1

|®0|

Мал.1.2 Схема НАМ для обчислення U3((n) 1) =(n) 10.

Складність цього НАМ буде n+ [log10n], що істотно менше за складність для Машини Тюрінга, що обчислює цю функцію, яка дорівнювала n2+ [log10n(log10n+1)].

Реалізацію функції U4 порівняння двох цілих чисел залишаємо читачу як вправа.

Зауваження: початкове слово треба задати у формі

*

Для нормальних алгоритмів Маркова справедлива теза, аналогічна тезі Тюрінга.

Теза Маркова: Для будь-якої інтуїтивно обчислюваної функції існує алгоритм, що її обчислює.

Список літератури

1. Джон Хопкрофт, Раджів Мотані, Джеффрі Ульман РОЗДІЛ 8. Введення в теорію машин Тюрінга // Введення в теорію автоматів, мов і обчислень. – М., 2002. – С528.