PMI_Nazarova_Diskretnye_struktury
.pdf21
5)Зустрівшипорко,МТміркужнюпереходитьдозаключногостануі переміщуєтьсявправонаоди,переходямволнзаклюстандартнучи
конфігурацію.
Функціональнатаблиця |
маєна |
ступнвигляд.(табл.йі 1) |
будуєтьсязаправилами :
1) |
кожномустану |
МТвідповідає рядокуфункціональнійтаблиці |
; |
2) |
кожномусимволуізовнішньогоалфавітустовпець |
; |
3)у клітинахтаблиціперядкаетиністовз писуєтьсядіця
(прчавакомандистина), |
|
якавиконуєтьсяцьомутані |
|
|
прицьому |
||
оглядаємомусимволі. |
|
|
|
|
|
|
|
|
Таблиця1 |
– ФункціональнатаблицяМТ |
|
|
|||
|
qi / a j |
a1 |
a2 ... |
a j |
… an |
|
|
|
q1 |
|
|
|
|
|
|
|
q2 |
|
|
|
|
|
|
|
… |
|
|
|
|
|
|
|
qi |
|
|
qiʹaʹj v |
|
|
|
|
… |
|
|
|
|
|
|
|
qk |
|
|
|
|
|
|
Приклад 1.Функцітаблицядприкладуональна1 |
|
|
|
|
|
|
|
|
qi |
/ a j |
0 |
1 |
λ |
|
|
|
q0 |
|
q0 1R q0 0 R q0λL |
|
|
||
|
q1 |
q10L q11L qzλR |
|
|
|||
Діаграмастанівграф(пере |
|
ходів) |
– |
це орієнтованийграф |
, уякого |
||
кожномустану |
відповідає ершинаграфу |
,ак |
ожнійкоманді |
– позначена дуга |
|||
(див.рис. 2). |
|
|
|
|
|
|
|
22
aj / aʹjv
qi qʹi
Рисунок2 |
– Діаграмастанівграф( переходів) |
машини Тьюрінга |
ЗадопомогоюМТжнаписувативикона |
|
|
|
нняарифметичнихоперацій |
|
|||
надчислами.Прицьомучислапреднастрічціавляютьсяякслова |
|
|
|
|
|
|
||
алфавіті,що |
складаєтьсяізцифр |
|
якої-небудьсистемичислення,і |
|
розділених |
|||
спецізн,неальнимком |
|
належанимдо |
алфавіту A ,наприклад, * |
. |
|
|||
Найбільшуживаноюсистемою |
|
|
|
є унарна, щоскладається |
зодного |
|||
символу – |.Число |
настрічцізаписуєтьсясловом |
|
|||||| ...|||||, (абоскорочено |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
|
|
|x )валфавіті |
А={ | }. |
|
|
|
|
|
|
|
Приклад 2. Операціядо |
даваннядвохчисел |
вунарном у коді: |
x =||||| ...| . |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
Початковаконфігурація: |
|
|
q1 |a * |b . |
Кінцеваконфігурація: |
qz |a|b , тобто |
|||
додаванняфактичнозводитьсяприпчислаування |
|
|
|
b дочисла |
a .Для |
|||
цьогоперша |
| стирається, |
азаміняється* на |
| . |
|
|
|||
Системакоманд |
при |
A = { |, λ, } та Q = {q1 ,q2 ,q3,qz } зображена |
||||||
рисунку3. |
|
|
|
|
|
|
|
|
1.q1 | → q2λR
2.q1 * → qz λR
3.q2 | → q2 | R
4.q2 * → q3 | L
5.q3 | → q3 | L
6. q3λ → qz λR
Рисунок3 |
– Системакоманд |
МТдляприкладу2 |
|
|
|
|
|
|
|
|
|
|
23 |
Комендосискомандтареми |
|
|
|
прикладу2 |
. |
|
|
|
||
1. |
q1 | → q2λR – витипершогосимволуання |
|
|
|. |
|
|
||||
Яукомірціщо,щооглядається,записано |
|
|
|
|
символ |
| та |
МТ |
|||
знаходиться устані |
q1 , |
тоді станзмінюється |
а |
q2 ,символ |
змінаюється |
|||||
порожній, КП здвигаєтьсявправо |
. |
|
|
|
|
|
||||
2. q1 * → qz λR – витирання символу ,першийаргументдорівнює0. |
|
|
||||||||
Яукомірціщо,щооглядається,записано |
|
|
|
символ та МТ знаходиться |
||||||
устані |
q1 (першийаргументдорівннулю) |
є |
|
|
, тоді станзмінаюється |
qz , |
||||
символ змінпорожнійаюється |
|
, КП здвигаєтьсявправо |
. |
|
|
|||||
3. |
q2 | → q2 | R – здвигвправо. |
|
|
|
|
|
|
|||
Яукомірціщо,щооглядається,записа |
|
|
|
но символ | та МТ знаходиться |
||||||
устані |
q2 , |
тоді |
стан |
тасимвол,щооглядаєтьсянезмінюю |
|
|
ться, |
КП |
||
здвигаєтьсявправо |
|
. |
|
|
|
|
|
|
|
|
4. q2 * → q3 | L – витсираннямволу |
. |
|
|
|
||||||
Яукомірціщо,щооглядає |
|
|
ться,записано |
символ та МТ знаходиться |
||||||
устані |
q2 , тоді станзмінаюється |
|
q3 , тасимвол,щооглядаєтьсязмінюю |
|
ться |
|||||
на | , КП здвигаєтьсявлівокін( пеаргументуршогоць) |
|
|
|
. |
|
|
||||
5. q3 | → q3 | L – здвигвліво. |
|
|
|
|
|
|
||||
Яукомірціщо,щооглядається,записано |
|
|
|
символ | та МТ знаходиться |
||||||
устані |
q3 , |
тоді |
стан |
тасимвол,щооглядаєтьсянезмінюю |
|
|
ться, |
КП |
||
здвигаєтьсявліво |
. |
|
|
|
|
|
|
|
|
|
6. q3λ → qz λR – кінецьалгоритму. |
|
|
|
|
|
|||||
Яукомірціщо,щооглядається,записано |
|
|
|
символ λ та МТ знаходиться |
||||||
устані |
q3 , |
тоді станзмінаюється |
|
qz , |
тасимвол,щооглядаєтьсяне |
|
|
|||
змінюється, |
КП здвигаєтьсявправо( |
|
кінецьалгори,КПрозтвмуашовано |
|
|
|||||
началіробочоїзони) |
|
. |
|
|
|
|
|
|
|
|
ОписМТу |
вигляді діаграми переходів (див.рис. 4). |
|
|
24
|
|
|
| / λR |
|
|
|
|
|
|
q1 |
|
|
|
|
q 2 |
| / | R |
|
* / λR |
|
|
* / | L |
|
|
|
||
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
q z |
|
|
|
|
q 3 |
| / | L |
|
|
|
λ / λR |
|
|
||||
|
|
|
|
|
|
|
|
|
Рисунок4 |
– Діагпереходівама |
|
МТдляприкладу2 |
|||||
Таблиця1 |
– Функціональнатаблиця |
|
|
МТ дляприкладу2 |
||||
|
qi \aj |
| |
* |
|
|
|
λ |
|
|
q1 |
q2λR qz λR |
|
|
- |
|||
|
q 2 |
q2 | R q3 | L |
|
|
- |
|||
|
q 3 |
q3 | L |
- |
|
|
qz λR |
ОбчисленнянаМТслов |
арної функції |
f будеморозумітивтакий |
|
|
спосіб.Нехайупочатковій |
|
конфігураціїнастрічцізаписано |
слово α .Якщо |
|
значення f ( α ) |
визначене,то |
закінцевчислакрто(ківгоктів |
|
)машина |
повиннаперейтизаключнуконфігу |
|
рацію,уякійнастрічцізаписанеслово |
|
|
β = f ( α ).Упроти |
лежному випадкуМТповипрацюватиннаескінченно. |
|
|
|
Числовафункція |
|
f ( x1 ,..., xn ) правильно обчислена( |
абопросто |
|
обчислена)по |
Тьюрінгу,якщо |
існуєМТ,що |
переводить |
конфігурацію |
q1 |x1 * |x2 *...* 1xn вконфігурацію qz |y ,коли |
f ( x1 ,..., xn ) = y ,абопрацює |
|||
нес,колиінченно |
f ( x1 ,..., xn ) невизначена. |
|
|
25
Тема№3
КОМАШИТЬЮРІНГАПОЗ ЦІЯ
Перерахованівищесп писусобиМТпрактможнавикористатично |
|
|
|
|
|
тількидлянескладнихалгоритмів, |
|
впротвилежномупадку |
описстає |
||
занадтогроміздким. |
МашиниТьюрінгадляскладнихалгоритмівбуду |
|
ються |
||
ізвикористаннямуженаявних |
|
|
елементарнихашин |
Тьюрінга |
йт ака |
побудоназивається |
композицією машинТьюрінга. |
|
|
||
4основн ихспособикомпозиціїМТ: |
|
|
|
|
|
- послідовнакомпозиція( |
суперпозиція ); |
|
|
||
- паралельнакомпозиція; |
|
|
|
|
|
- розгалуження абоумовнийперехід |
; |
|
|
||
- цикл. |
|
|
|
|
|
1. Послідовноюкомпозицією |
|
або суперпозицією машинТьюрінга |
M 1 |
||
і M 2 ,щообчисл |
юютьвідповідсловнифункі ціїові |
|
f1( α ) й |
f2 ( α ) в |
алфавіті А,називаєтьсямашина |
|
M,якаобчислюєфункцію |
f ( α ) = f2 ( |
f1( α )). |
|||||||
Позначення: M = M 1 M 2 або M = M 2 ( M 1 ). |
|
|
|
||||||||
Послідовнукомпозицію |
|
M = M 1 M 2 зображенрисункуао5. |
|
||||||||
|
α |
|
|
f1( α ) |
|
|
f2 ( f1( α |
|
|||
|
|
M 1 |
|
|
M 2 |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|||
|
Рисунок5 |
– Послідовнакомпозиція |
МТ |
|
|||||||
2Паралельною. композицією |
|
|
машинТьюрінга |
|
M 1 і M 2 ,що |
||||||
обчислюютьвідповідні |
словнифункціїові |
|
f1( α ) й |
f2 ( β ) валфавітах |
А й В, |
||||||
називаєтьсямашина |
M,якаобчислюєсловнифункціюову |
|
|
|
|||||||
f ( α||β) = f1( α )|| f2 ( β).Тутзнак |
|| викодляриозспритаєтьсяліводілу |
|
|
|
|
|
|
|
|
|
26 |
паралельнійкомпозиціїМТ. |
|
Паралельнукомпозицію |
МТ M 1 і M 2 |
|||
зобнар.аженоис |
6.П означення: M = M 1 M 2 . |
|
||||
|
|
|
|
|
|
|
|
|
|
M |
|
|
|
|
α |
|
|
|
|
f1 (α) |
|
|
|
|
|
||
|
|
M1 |
|
|
||
|
|
|
|
|
||
|
|
|
|
|
|
f 2 (β ) |
|
|
|
|
|
|
|
|
β |
|
M 2 |
|
||
|
|
|
|
|||
|
|
|
|
|
|
|
Рисунок6 – Паралельна композиція МТ
ФактичнопаралельнакомпдвМТозиціядержуєхнавхідслово,що |
|
|
складаєтьсяз2 |
-хслівурізнихалфавітах |
авиходівидаєслово,якетакож |
складаєтьсяз 2 |
-хслів,тобтоявляєсобоюдвіодночйнезалежносно |
|
працюючімашини.ДляреалізпаркомпалельноїціїдвМТзиціїх |
|
|
використаємашинаіздвоповерхтьсярічкою. вою |
|
|
МашинаТьюрінгаіздвоповерхстрічкоювою |
працюєвтакийспосіб: |
1)слово β переписуєтьсянадругийпотаверхитираєтьсяна
першому; |
|
|
|
2) |
обчислюється |
f1 ( α ) напершомуповерсі |
; |
3) |
обчислюється |
f2 ( β ) надругомуповерсі |
; |
4)f2 ( β ) переписується напершийповерх,можливозізрушенням.
|
|
qi |
bk |
→ qiʹ |
bkʹ |
a j ,bk – |
|
КомандаМТіздвоповерхстрічкою: вою |
|
|
, де |
||||
a j |
aʹj |
||||||
бук,запвідповідноисанінапершомуйдругомуверхах |
|
|
|
.Нехай |
n,m – |
||
довжинаслів |
α,β. Узагальномувипадкдовжинислів |
|
|
α,β та f1( α ), f2 ( β ) |
|||
неспівпадають.Нехайзадляпростотизображення |
|
m = n ,тодіреалізація |
|||||
пунктів1) |
-4)наМТіздвопострічвиконуєтьсяерхтакийспосібвою |
|
|
|
|
|
, |
якпо казнрисункуано7. |
|
|
|
|
|
|
|
Дляреалізкомпозиціїпаралельної |
n машинвикористається |
n- |
|||||
повест.рховаічка |
|
|
|
|
|
|
|
27
λ |
λ |
λ |
λ |
λ |
λ |
λ |
|||||
λ |
a1 |
a2 |
b1 |
an |
|
|
|
|
|
|
b1 |
|
|
|
|
|
|
||||||
|
λ |
|
|
b2 |
|
||||||
|
λ |
|
a1 |
|
a2 |
|
|||||
|
|
|
λ |
|
f2 ( β ) |
|
|||||
|
|
|
λ |
|
f1( α ) |
|
|||||
|
|
|
λ |
|
λλλλ... |
λ |
|||||
|
|
|
λ |
|
f1(α ) |
|
|
|
f2 ( β ) |
||
|
|
|
|
|
|
Рисунок7 – Схемароботиіздвоповерхстрічкоювою
λ |
λ |
λ |
λ |
b2 |
… |
bm |
λ |
|
bm |
λ |
|
|
an |
λ |
|
λ |
|
|
|
λ |
|
|
|
|
λ |
|
|
|
λ |
|
|
3. Розгалуженняабоумовнийп |
|
|
ерехід |
вкомашинпоз ції |
|||||||
Тьюрінга |
|
|
|
|
|
|
|
|
|
|
|
ЯкщозадмаТьюрінгашинині |
|
M 1 й M 2 ,щообчислюютьсловникові |
|
||||||||
функції f1( α ) й f2 ( α ),імашина |
M P ,щообчислюєдеякийпредикат |
|
|
P( α ) з |
|||||||
відновленнямтоб( безстиранняслова |
|
|
α ), тодляреалірозгалуженняації |
|
|||||||
можебутипобудованамашина |
|
|
M ,щообчислюєфункцію: |
|
|
|
|
|
|||
|
|
|
f1 |
( α ), |
|
P( α ) ≡" true" |
. |
|
|
||
|
|
f ( α ) = |
( α ), |
|
|
|
|
|
|
||
|
|
|
f2 |
|
P( α ) ≡" false" |
|
|||||
РозгалуженмашинТьюрінасхемахкомпозиціїнгая |
|
|
|
|
|
|
|
(див.рис. 8) |
|||
позначається |
M = M 1 M 2 , тут |
w – результатроботимашини |
|
|
M P ,що |
||||||
приймаєзначення«1» ( |
|
”true”)і «0» ( |
“false”), |
M 0 |
– машинаТьюрінга,що |
||||||
реалізуєкопіюваннявхідногосл |
|
|
ова α → α . |
|
|
|
|
|
|||
|
|
|
w* α |
|
|
|
|
1 |
|
|
|
α |
|
|
|
|
|
|
|
f1( α ) |
|||
|
M p M0 |
|
1 |
0 |
|
|
|||||
|
|
|
|
|
|
||||||
|
|
|
|
|
M 1 M 2 |
|
|
f |
2 ( α ) |
||
|
|
|
|
|
|
|
0 |
||||
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рисунок8 – РозгалуженмашинТьюрінасхемахкомпозиціїнгая
28
4. Цикл укомашиТьюрінгапоз ції
Цикл укомашпозТьюрінгареалізуєтьсяиціїзатимиж
принцип,щойрозг.Циклічнимамилуже ня |
|
будемовважатинаступний |
|
|
|
алгоритм: |
« поки P( α )= ”true”,виконувати f ( α ) »,де α – словона |
трічці |
|||
передпершимвиконаннямта |
післячерговоговиконання |
. |
|
|
|
Длязображециклувикористаєтьсянняаступн |
|
асхема |
(див.рис. 9). |
|
|
Введемопоз,нехай:ачення |
|
|
|
|
|
M p – машинаТьюрінга,щореалізуєобчисленняпредикату |
|
P( α ); |
|||
M 0 |
– машинаТьюрінга,щореалізуєкопіюваннявхідногослова |
|
; |
|
|
M 1 |
– машинаТьюрінга,що |
виконуєтьсяцикліта |
реалізує f1( α ); |
||
M 2 – МТ,що виконуєприізциклуходітаься |
реалізує |
f2 ( α ). |
|
|
|
w* α |
1 |
f1( α ) |
α |
M p M0 |
|
|
|
1 |
0 |
f2 ( α ) |
||
|
M 1 |
M 2 |
||
|
|
|
||
|
|
|
0 |
|
Рисунок9 – Цикл укомашпозТьюрінгаиції
ПрогрздопамуваннякомпозмашогоюТьюрінгаицій |
: |
||
1) |
поблокудова |
-схемидот,докиблокинестанутьелементарними, |
|
щодореалізаціїїхнаМТ |
; |
|
|
2) |
побудоваелементаМТ,реалізуючипростіблокиних |
; |
|
3) |
об'єднанняелементарнихМТзарахуноккомпозиціїМТ. |
|
Приклад. |
Побудувати композицію МТ, |
щореалізуєфункцію |
z = x × y . |
Нехай M 0 – машинаТьюрінга,щореалізуєкопіюваннявхідногослова |
|
; |
|
M 0 – машинаТьюрінга,щореалізуєфункціюустановкиконстанти |
|
0; |
|
M .>0 – машинаТьюрінга,якобчислюєпредикат |
x > 0 ; |
|
|
M ni – машинаТьюрінга,щореалізуєфункціювибору |
i - тогоаргументу |
||
із n аргументів; |
|
|
|
M −1 – машинаТьюрізмеаргументшуєга |
x нав1унарномукоді |
; |
29
M + – машинаТьюрінгавиконуєопераціюдодаргументіввохвання
унарномукоді.
x, y
z=0
0
x > 0 |
z |
1
z = z + y
x = x − 1
Рисунок10 |
– Блок-схемаобчисленняфункції |
z = x × y |
1x 1y
M0
1x 1y 1z=0 |
M>0 ( M31 ) M0 |
w 1x 1y 1z |
M 0 |
α |
|
|
|
1 |
|
|
1 |
0 |
|
M−1( M31 ) M32 M+( M32 ,M33 ) |
α |
M 0 M 33 |
end |
||
|
|
|
0 |
|
Рисунок11 |
– КомпозашТьюрдляиобчисленнянцінгафункції |
z = x × y |
Слідзазнач,щоувсіхинптипочаткудкалгоритмупотрібнох |
|
|
вставлятиперевіркувихіднихданихнаособливізначення( |
найчастіше0 ), |
недотриманняцієївиможепрогизацикленнявести.
30
Тема№4
НОРМАЛЬНІАЛГОРИТМИМАРКОВА
Нормальніалгоритми |
булозапропоновано |
у 1951р |
оці |
радянським |
||||
вченим А.. |
Марковим. АлгоритсистемаМарковічна |
|
|
а – |
це найостанніше |
|||
досягнення в теорії алгоритмів,не |
пов'язане |
|
арифметикою. |
|
|
|||
НормальніалгоритмиМарковаНАМ()представляютьсянормальною |
|
|
|
|
|
|
||
схемоюпідст,якскладаєтьсяновокзсукупнпідстановокі,р з ашованих |
|
|
|
|
|
|
|
|
впевномупорядку. |
На відміну від машинТьюріннормальнігоритми |
|
– |
|||||
це не пристрій,а деякийнабір |
|
(впорядкований ) елементоперарнихцій |
над |
|||||
словами. |
|
|
|
|
|
|
|
|
НормальніалгоритмиМарковаНАМ() |
|
|
|
|
представляютьсясхемою |
|||
підст,якскладаєтьсяновокзсукупнпідстановокі,р з ашованих |
|
|
|
|
|
|
|
|
певномупорядку. |
Навходіалгоритмуслово |
|
|
|
γ зарахунзастосуванняк |
|||
алгоритмуМарковапереробляєтьсяслово |
|
|
|
γʹ. |
|
|
||
Марковськапідстановка |
|
(МП) |
– цеопераціянадсловами |
|
α,β,γ,яка |
|||
полягаєвнаступному: |
|
|
|
|
|
|
|
|
1) |
ув хіднсломуві |
γ |
шукається крайнє лівевходженняслова |
α , |
||||
якщовоноіснує, |
α заміняємона |
β вслові |
γ ; |
|
|
|
2)отриманеслово γʹ є результзастосуваннямарковськоїтом
підстановкидослова γ ;
3) якщослово |
α невходитьуслово |
γ ,то |
кажуть,щодана |
||
марковськапідстановка |
не можебути |
застосовнад |
ослова |
γ . |
|
ЗвичМПзаписуєтьсяйнояк |
|
α → β. |
|
|
|
| α | ≠ | β |: узагальномувипадкдовжинислів |
|
|
α,β можутьне |
||
збігатися. |
|
|
|
|
|
| γ | ≠ | γʹ |: довжинислів |
γ,γʹ |
узагальномувипадктакожнеуть |
|
збігатися.