آموزش نظریه زبان ها و ماشین ها - بخش هفتم

40
مدرس: فرشید شیرافکن دانشجوی دکتری تهراننشگاه دا( سی ارشد کارشنا کارشناسی و: م افزار کامپیوتر نر( ) دکتری: نفورماتیک بیو ا) ها و ماشین هاظریه زبان ن1 ها و ماشینظریه زبان ن هاfaradars.org/fvsft110 ﻓﺮادرسFaraDars.org

Upload: faradars

Post on 07-Jan-2017

189 views

Category:

Education


12 download

TRANSCRIPT

Page 1: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

:مدرس

فرشید شیرافکن

دانشگاه تهران دانشجوی دکتری (بیو انفورماتیک: دکتری( )کامپیوتر نرم افزار: کارشناسی و کارشناسی ارشد )

نظریه زبان ها و ماشین ها

1

هانظریه زبان ها و ماشین

faradars.org/fvsft110

فرادرس

FaraDars.org

Page 2: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

(1قسمت )سومبخش

ماشین تورینگ2

فرادرس

FaraDars.org

Page 3: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

رفیتظبانواریومحدودحافظهباپردازشیواحددارایسادهکامپیوتریکتورینگماشین

.استنامحدود

.استمحدودبسیاردهدانجاممی تواندماشیناینکهدستوراتی

.استکاملترپشته ایومتناهیماشین هایازتورینگماشین

دودیتمحبدونومتنبهوابستهمتن،ازمستقلمنظم،زبانهایپذیرندهتورینگماشین

.است

3

فرادرس

FaraDars.org

Page 4: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.می شودتعریفصورتبهکهاستهفت تایییکMتورینگماشین0

M (Q, , , ,q ,B,F)

مجموعه حاالت داخلی:

الفبای ورودی :

الفبای نوار:

تابع انتقال :

.(نیستاست و در بهمتعلق )سمبل خالی :

حالت شروع:

مجموعه حالت های پایانی:

Q

B

0q

F

4

فرادرس

FaraDars.org

Page 5: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.تاسسمبلیکفقطنگهداریبهقادرسلولهروشدهتقسیمسلول هاییبهتورینگماشیننوار

وکردهحرکتنوارچپیاراستسمتبهتواندمیکهاستمتصل نوشتن-خواندنهدیکنواراینبه

.بنویسدوبخواندراسمبلیکفقطحرکتهردر

.شودمیتعریفصورتبهتورینگ، درانتقالتابع

بهماشین.بیندمیراaهدوبودهوضعیتدرماشینیعنیوضعیت

.می رودراستسمتبههدومی شودجایگزینbباaورفتهوضعیت

Q Q L,R

0 1(q ,a) (q ,b,R)

0q

1q

5

فرادرس

FaraDars.org

Page 6: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

؟عملکرد ماشین تورینگ زیر چیست

0 1 1Q {q ,q }, {a,b}, {a,b,B}, F {q }

0 0

0 0

0 1

(q ,a) (q ,b,R)

(q ,b) (q ,b,R)

(q ,B) (q ,B,L)

0 0 0 1q aa bq a bbq B bq ba a a

مثال

:باشدنواررویبرaaرشتهاینکهفرضبا

6

فرادرس

FaraDars.org

Page 7: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

زبانماشین تورینگ در نقش پذیرنده :می شودتعریفزیرصورتبهمی پذیردMتورینگماشینکهزبانی

خالیفضایسمبلازآنطرفینازیکهردروشدهنوشتهنواررویwورودیتعریفایناساسبر

.شودمیاستفاده

:افتدمیاتفاقزیرحالتدوازیکینباشد،L(M)عضوwاگر

.شودمیمتوقفپایانیغیرحالتیکدرماشین-1

.شودنمیمتوقفهرگزوشدهواردنهایتبیحلقهیکبهماشین-2

.باشدنمیL(M)عضونشود،Mتوقفباعثکهایرشتههربنابراین،

**

f 1 2 0 1 f 2L(M) {w :q F, x ,x , q w x q x }

a

7

فرادرس

FaraDars.org

Page 8: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110مثال

n na b :n 1

:انتورینگی پذیرنده زبماشین

8

فرادرس

FaraDars.org

Page 9: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

:پیکربندی های متوالی زیر را ایجاد می کند aabbبعنوان مثال، ورودی

0 1 1 2q aabb xq abb xaq bb xq ayba a a a

2 0 1 1 2q xayb xq ayb xxq yb xxyq b xxq yya a a a a a

2 0 3 3 fxq xyy xxq yy xxyq y xxyyq B xxyyBq B.a a a a a

9

فرادرس

FaraDars.org

Page 10: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

n nL {ab :n 0} {b a :n 1} U

مثال

:انتورینگی پذیرنده زبماشین

10

فرادرس

FaraDars.org

Page 11: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

n:انتورینگی پذیرنده زبماشین n nL {a b c :n 1}

مثال

11

فرادرس

FaraDars.org

Page 12: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

. ردماشین تورینگ می تواند زبان منظم را بپذیپس

*L(a(a b) )

مثال

:انتورینگی پذیرنده زبماشین

12

فرادرس

FaraDars.org

Page 13: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

0 1

1 2

2 2

2 f

(q ,a) (q ,a,R)

(q ,b) (q ,b,R)

(q ,a) (q ,a,R)

(q ,b) (q ,b,R)

*L L(aba b)

مثال

:انتورینگی پذیرنده زبماشین

13

فرادرس

FaraDars.org

Page 14: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

wیک ماشین تورینگ طراحی کنید که زبان }L {w :

مثال

14

فرادرس

FaraDars.org

Page 15: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.کندگیریتصمیمرازبانکهکنیدطراحیتورینگماشینیک

:ماشینتوسطورودیرشتهرویشدهانجامکارهای

اگرواستعضوورودیرشتهکهشودمطمئنتاکردهپویشراستبهچپازراورودیرشتهابتدا-1

.رودمیپذیرشعدمحالتبهنبوداینطور

.شودمیگرداندهبرچپسمتانتهایبههد-2

تطبیقهاcباراهاbسپس.برسدbنمادیکبهتارودمیراستبهآنقدروزدهعالمتراهاaازیکی-3

ادامههاbشدنتمامتاراکاراین.زندمیعالمتنیزراcیک، bیکزدنعالمتبا یعنیمی دهد،

.می دهد

i j kL {a b c :k i j , i, j,k 1}

* * *a b c

مثال

15

فرادرس

FaraDars.org

Page 16: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

ماندهباقیaکهزمانیتا.شوندمیبرگرداندهbنمادبهدوبارهشدهگذاریعالمتهایbتمام-4

cتمامکهشودمیبررسیباشند، شدهگذاریعالمتهاaتماماگر.شودمیتکرارسوممرحلهباشد،

یمردرشتهصورتاینغیردروشدهپذیرفتهرشتهصورتایندر.باشندشدهگذاریعالمتنیزها

.شود

.پذیرفتایپشتهماشینباتواننمیرازباناین

16

فرادرس

FaraDars.org

Page 17: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

مترجمماشین تورینگ به عنوان وترهایکامپیبرایانتزاعیسادهمدلیکزبان ها،پذیرشخاصیتبودندارابرعالوهتورینگماشین

میزانودهبوپذیرمحاسبهتورینگ،ماشینتوسطمعمولیریاضیتوابعتمامیواقعدر.می باشدرقمی

.داشتنخواهدامراینبرتاثیریآنها،پیچیدگی

باشدداشتهوجودMمفروضتورینگماشیناگرشود،میگفتهتورینگتوسطپذیرمحاسبهfتابع

:باشیمداشتهتابع،دامنهدرموجودهایwهمهبرایکه

*

0 fq w q f(w)

17

فرادرس

FaraDars.org

Page 18: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.کنیدطراحیyوxمثبتصحیحعدددوجمعمحاسبهبرایتورینگیماشین

مثال

:11با 111بررسی جمع

0 0 0 0 1 1q 111011 1q 11011 11q 1011 111q 011 1111q 11 11111q 1a a a a a

1 2 3 3 f111111q B 11111q 1 1111q 10 ... q B111110 Bq 111110.a a a a a a

18

فرادرس

FaraDars.org

Page 19: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.حاصل شود1111خروجی 11دادن مثال با . را کپی کند1ماشین تورینگ طراحی کنید که رشته ها یی از

.(کندرا محاسبه مقدار ، یعنی برای هر )

:کارمراحل

.جایگزین می کنیمxها را با یک 1هر یک از -1

.جایگزین می کنیم1با را پیدا کرده و آنرا xراست ترین -2

.ایجاد می کنیم1به اولین سمبل خالی سمت راست فعلی رفته و در آنجا یک -3

.دیگری وجود نداشته باشدxرا آنقدر تکرار می کنیم تا هیچ 3و2مراحل -4

w {1}

0 f

*q w | q ww

مثال

19

فرادرس

FaraDars.org

Page 20: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.کنیدطراحییکدیگربهرشتهدواتصالبرایتورینگیماشین، {a,b}الفبایدر

.داردقراربالنکیکرشتهدوبین

برسیم،Bبهتاخواندهرااولرشتهحروفتمامابتدا

بودaحرفدومرشتهابتدایدراگر،Bخواندنازبعدسپس

دهیممیتغییرaبهراBوبرگشتهچپسمتبهوکردهتبدیلBبهراآن

.می دهیمتغییرbبهراBوبرگشتهچپسمتبهوکردهBراآنبودbاگرو

0 1 2 f 1 2

*q w Bw | q w w

مثال

20

فرادرس

FaraDars.org

Page 21: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

. را مشخص کنیدوخروجی ماشین تورینگ زیر با ورودی 1101111

مثال

.است111خروجی:(13دهدهیعدد)1101ورودی-الف

.است100خروجی:(7دهدهیعدد)111ورودی-ب

F x x div 2 1

21

فرادرس

FaraDars.org

Page 22: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

تورینگمدل های دیگر ماشین .هستندپیچیده ترمدل هایبامعادلاستاندارد،تورینگماشین های

خیرهذابزاربهآنهاتجهیزطریقازاستانداردتورینگماشین هایکردنپیچیدهتورینگ،تزطبق

.نداردماشینقدرتبرتاثیریتر،پیچیدهسازی

یمکانیکمحاسبهازمدلیباشد،انجامقابلجدیدهایماشیناینباکهایمحاسبهنوعهرچون

.استانجامقابلهماستانداردمدلیکبوسیلهعلتهمینبهوشدهمحسوب

22

فرادرس

FaraDars.org

Page 23: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

تز تورینگجامانقابلمکانیکیبطورکهمحاسبه اینوعهرکهمی گویدفرضیهاین

.استانجامقابلهمتورینگماشینباباشد،

23

فرادرس

FaraDars.org

Page 24: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

استانداردتورینگماشینهایویژگی

(تعدادهربهچپیاراستبهحرکتبودنممکن)طرفدوازماشیننواربودننامحدود-1

(.می شودتعریفحرکتیکفقطپیکربندیهرازایبه)بودنمعین-2

.خاصیخروجیوسیلههیچوجودعدمهمچنینوخاصیورودیفایلهیچوجودعدم-3

24

فرادرس

FaraDars.org

Page 25: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

دیگر ماشین های تورینگ مدل های

(الینآف–متناهینیمهنواربا-دارسکون)تورینگماشینتعریفدرجزئیتغییراتاعمال-1

(بعدیچندونوارهچند)ترپیچیدهحافظهباتورینگهایماشین-2

نامعینتورینگهایماشین-3

عمومیتورینگماشین-4

خطیکرانداراتوماتای-5

25

فرادرس

FaraDars.org

Page 26: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

دارهای تورینگ سکون ماشین

واندبمباقیخودجایدرسلول،محتوایبازنویسیازپستواندمیهاماشیننوعایندرهد

.نکندحرکتعقبیاجلوبه

.دهدنمیافزایشراماشینقدرتهد،حرکتبرایجدیدانتخاباینگنجاندن

میاستانداردتورینگهایماشیندستهباارزهمدار،سکونتورینگهایماشیندسته

.باشند

26

فرادرس

FaraDars.org

Page 27: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

نامتناهیماشین های تورینگ با نوار نیمه

.استنامحدودطرفیکازفقطماشینایندرنوار

.نیستمجازچپبهحرکتگیرد،میقرارانتهادرهدوقتی

.گذاردنمیماشینقدرتبرتاثیریهیچمحدودیتاین

27

فرادرس

FaraDars.org

Page 28: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

الینهای تورینگ آف ماشین .می باشدنیزخواندنیفقطورودیفایلیکشاملنواربرعالوه،offlineتورینگماشین

:شودمیگیریتصمیمزیرمواردتوسطحرکت هاتمامیماشین ها،نوعایندر

درونیحالت-الف

.شودمیخواندهورودیفایلازحاضرحالدرکهسمبلی-ب

.شودمیمشاهدهنوشتن-خواندنهدبوسیلهکهآنچه-ج

28

فرادرس

FaraDars.org

Page 29: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

ترماشین های تورینگ با حافظه پیچیده

اما،کردترپیچیدهرااستانداردتورینگماشینسازیذخیرهابزارتوانمی

.دهدنمیافزایشراماشینقدرتعملاین

.دهیممینشانراموضوعاین،(بعدیچندونوارهچند)مثالدوذکربا

29

فرادرس

FaraDars.org

Page 30: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

نوارهماشین های تورینگ چند

تقلمسطوربهکهمی باشدنوشتن-خواندنهدداراینوار،هرکهنوارچندباتورینگیماشین

.شودمیکنترل

انتقالتابع

.بیندمیراeیکهددومینوaیکهداولینوبودهحالتدرماشین

....کردوخواهدحرکتچپسمتبههدوشدهجایگزینxبانواراولینرویaسپس

0 1(q ,a,e) (q ,x,y,L,R)

0q

30

فرادرس

FaraDars.org

Page 31: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.شودمیترسادهبسیارزبانپذیرشنوارهدوتورینگماشینکمکبه

دومنواربهوخواندهاولنوارازراهاaتمامیسپس.داردقراراولنواررویرشتهابتدادر

.کنیممیکپی

تعیینسادگیبهودهیممیتطبیقدومنوارهایaباراآنهااول،نواررویbاولینبهرسیدنبا

.خیریاهستندبرابرهاbوهاaتعدادآیاکنیممی

.شدانجامعملاینچپ،وراستبههدمتوالیجابجاییبهنیازبدونبنابراین

n n{a b }

n na b

مثال

31

فرادرس

FaraDars.org

Page 32: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

بعدیهای تورینگ چند ماشین

تهیافگسترشبعدیکازبیشدرنامتناهیصورتبهنوارماشین ها،ایندر

.است

هبتواندمیراست،وچپبهحرکتبرعالوههدبعدی،دوتورینگماشیندر

.کندحرکتنیزپایینوباال

32

فرادرس

FaraDars.org

Page 33: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

نامعینماشین های تورینگ

تغییررایداکهتفاوتاینبااستمعینتورینگمشابهنامعینتورینگماشین

واندتمیماشینمحاسبات، ازلحظههردریعنیمی باشد، متفاوتیوضعیت های

.کنددنبالراانتخابچندینازیکی

انتخابنماشیبوسیلهکهاستممکنیانتقاالتتماممجموعهانتقال،تابعبرد

.شوندمیQ {L,R}

Q 2

33

فرادرس

FaraDars.org

Page 34: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.هستندارزهمنامعینتورینگهایماشیندستهومعینتورینگهایماشیندسته-1

.نیستخودمعیننوعازقدرتمندتروجههیچبهنامعینتورینگماشینیک-2

.کردسازیشبیهمعینتورینگماشینیکبوسیلهتوانمیرانامعینتورینگماشینهر-3

وجودمانندمعینتورینگماشینیکآنگاهباشد،نامعینتورینگماشینیکاگر-4

:کهطوریبهدارد،

NM

DM

N DL(M ) L(M )

34

فرادرس

FaraDars.org

Page 35: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

آنوارنکهاستنامعینتورینگماشینیکمانندپشته ای،آتاماتاییک-1

.می شوداستفادهپشتهصورتبه

.استتورینگماشین هایدستهباارزهمای،پشتهدواتوماتایدسته-2

35

فرادرس

FaraDars.org

Page 36: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

ماشین تورینگ عمومی رهتوصیفداشتناختیاردرباکهاستاتوماتی،عمومیتورینگماشین

محاسبهسازیشبیهبهقادر،رشتهوورودیبعنوانMتورینگماشین

Mباشدمیروی.

uM

w

w

36

فرادرس

FaraDars.org

Page 37: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

(LBA)آتاماتای کراندار خطی

اینباولیاست،نامعینتورینگماشینخطی،یککرانداراتوماتیک

.استورودیازتابعیکنداستفادهمی تواندکهنواریمقدارکهمحدودیت

ومی باشندمحدوداستورودیحاویکهسلول هاییبهنواراستفادهقابلقسمتهمچنین

.می شوداستفادهکروشهعالمتدوازمحدودهاینازحفاظتبرای ],[

( LBA : Linear Bounded Automata )

37

فرادرس

FaraDars.org

Page 38: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

.می شودپذیرفتهLBAیکتوسطزبان

ازخارجفضائیبهاحتیاجیاست،نیاززباناینپذیرشبرایکهمحاسباتیچون

.ندارداولیهورودی

n n n{a b c :n 1}

مثال

38

فرادرس

FaraDars.org

Page 39: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

همیخطکرانداراتوماتیکبوسیلهای،پشتهاتوماتیکبوسیلهشدهپذیرفتهزبانهر-1

میتهپذیرفخطیکرانداراتوماتایبوسیلهکهدارندوجودهاییزبانامامی شود،پذیرفته

ازرقویتخطی،کراندارماشینپس.نداردوجودآنازایبهایپشتهاتوماتایهیچاماشوند،

.استایپشتهماشین

.پذیرفتLBAیکبوسیلهتوانمیرافاقدمتنازمستقلزبانهر-2

.نداردوجودخودنامعیننسخهبامعینهایLBAتناظراثباتبرایروشیهیچ-3

39

فرادرس

FaraDars.org

Page 40: آموزش نظریه زبان ها و ماشین ها - بخش هفتم

هانظریه زبان ها و ماشین

faradars.org/fvsft110

40

این اسالید ها بر مبنای نکات مطرح شده در فرادرس« هانظریه زبان ها و ماشین »

.تهیه شده است

.نماییدلینک زیر مراجعه برای کسب اطالعات بیشتر در مورد این آموزش به

هانظریه زبان ها و ماشین

faradars.org/fvsft110

فرادرس

FaraDars.org