Professional Documents
Culture Documents
5 Automata
5 Automata
استاد
دکتر ایزدی
طراح
علی شاه حیدر
400105777
1
مسئله چهارم
{< )A = }N, ω > |N is an NFA anⅾ ω ∈ L(N
برای زبان فوق نشان میدهیم در کالس PSPACEقرار دارد.
الگوریتم زیر که به صورت nondeterministic linear spaceاست 'A ،را تصمیم میگیرد.
به صورت غیرقطعی ،یک رشته ورودی که توسط NFAما ریجکت میشود را حدس میزنیم (مییابیم) و از فضای خطی
استفاده میکنیم تا حدس بزنیم کدام استیت از NFAدر زمان مشخص انتخاب میشود .به صورت زیر تعریف میکنیم Mرا
روی ورودی Nکه همان NFAما است:
الف .یک نشانه بر استیت شروع NFAمیگذاریم.
q
ب .به اندازه 2بار ( qتعداد استیتهای Nاست) این کار را تکرار میکنیم.
به صورت غیرقطعی یک عضو از الفبای ورودی را انتخاب کرده و مکان نشانه گفته شده از
ماشین Nرا روی استیتهای آن تغییر میدهیم تا بتوانیم خواندن ورودیها را شبیهسازی کنیم.
ج .اگر در قسمت ب رشتهای به حالت ریجکت وارد شد ،اکسپت میکنیم( .به طور مثال اگر در لحظهای ،هیچ یک از نشانهها
روی حالت اکسپت از Nوارد نشدند) ،و در غیر این صورت به ریجکت میرویم.
q q
از آنجایی که حداکثر 2زیر مجموعه از استیتهای Nوجود دارد ،باید یکی را در طول حداکثر 2ریجکت کند ،اگر N
q
یک رشته را ریجکت کرد (دقت کنید این محاسبات میتوانند در حداکثر 2استیت انجام شود).
Mبه حافظه نیاز دارد ،زیرا:
ذخیره مکان نشانهها را داریم ().)O(q) = O(n
شمارنده حلقه تکرار در الگوریتم ذکر شده را داریم ().)O(q) = O(n
در این صورت Mدر فضای غیرقطعی ) O(nاجرا میشود.
)O(n
2اجرا میشود (زبان مطرح شده در صورت سوال مشخص نیست که NP همچنین توجه کنید Mدر زمان غیرقطعی
است یا .)coNP
حال یک قضیه را مطرح میکنیم.
قضیه ساویچ :به یاد داریم که در کالس مدل کردن NTMبا یک DTMمطرح شد که زمان نمایی صرف میکرد.
2
قضیه ساویچ نشان میدهد ،هر NTMکه فضای ) f(nاشغال میکند را میتوان به یک DTMبا فضای ) f (nتبدیل کرد و
این به معنای زیر است:
2
))NSPACE(f(n)) ⊆ SPACE(f (n
+
واضح است که یک کاهش سرعت خواهیم داشت .تابع fنیز ℕ → ℝاست .از آنجایی که این قضیه مورد خواسته سوال
نیست ،صرفا چند تصویر از اثبات قضیه ارائه میدهم و به ادامه مسئله خودمان میپردازم.
2
3
حال تعریفی که از کالس PSPACEداشتیم را به خاطر میآوریم:
k
PSPACE = ∪ SPACE(n ), Union on k
حال طبق قضیه ساویچ میدانیم PSPACE = NSPACEاست زیرا مربع یک چندجملهای باز هم چندجملهای است.
2
در این صورت ) A' ∈ NSPACE(nو ) A' ∈ SPACE(nو در نتیجه A' ∈ PSPACEخواهد بود.
همچنین طبق قضیهای که در کالس اثبات شد میدانیم کالسهای فضای قطعی تحت عمل complementationبسته هستند،
پس:
2
) A ∈ SPACE(nو در نتیجه A ∈ PSPACEاست.
.Q.E.D
4
مسئله ششم
برای حل این مسئله ،یک الگوریتم مطرح میکنیم.
دو نوار را در نظر بگیرید که یکی برای خواندن ورودی و دیگری برای خواندن و نوشتن باشد.
ابتدا ورودی را اسکن میکنیم تا مطمئن شویم هیچ aای بعد از bنیامده است .اگر آمده بود به حالت ریجکت میرویم.
تعداد aها را با استفاده از یک counterمیشماریم و به صورت باینری ذخیره میکنیم.
حال دو رویکرد وجود دارد .یا اینکه شمارنده در قسمت قبل را decrementکنیم و یا اینکه از شمارنده دومی استفاده کنیم.
bها را بشماریم .اگر شمارنده ما صفر نشد ولی تمام bها
فرض کنید از decrementکردن شمارنده استفاده کنیم و تمام
شمرده شده باشند یا اینکه شمارنده صفر شد ولی هنوز تعدادی bشمرده نشده باقی مانده بود ،به حالت ریجکت میرویم و در
غیر این صورت به اکسپت میرویم.
توجه کنید حرکت headکه تعداد حروف را میشمارد هیچ حافظهای مصرف نمیکند.
در این صورت که اعداد را در حالت باینری ذخیره میکنیم ،نتیجه میشود که در کالس Logspaceقرار داریم.
n n
A B ∈L
.Q.E.D
5
مسئله پانزدهم
اگر تمام زبانهای NP-hard، PSPACE-hardنیز باشند در این صورت مسئله SATنیز PSPACE-hardخواهد بود،
پس هر زبان PSPACEرا میتوان با زمان چندجملهای به SATکاهش داد .از آنجایی که SAT ∈ NPمیباشد ،پس هر
زبانی در PSPACEدر زمان چندجملهای و به صورت nondeterministicبا تبدیل ورودی زبان در PSPACEبه
ورودی مسئله SATو همچنین اجرای یک deciderبه صورت NP-timeبه مسئله SATقابل حل است.
بنابراین هر زبانی در PSPACEدر NPاست ،پس .PSPACE ⊆ NP
عالوه بر این ،داریم که هر زبانی در NPیک کاهش در زمان چندجملهای به SATکه NP-hardاست ،دارد و میدانیم که
یک کاهش چندجملهای از SATبه ) TQBF (True Quantified Boolean Formulaکه در کالس به آن اشاره شد
وجود دارد و یک کاهش چندجملهای از زبانی در کالس NPبه TQBFمیدهد.
یک کاهش زمانی چندجملهای همچنین حافظه چندجملهای صرف میکند ،اگر در هر گام زمانی فقط بتوانیم به یک خانه حافظه
از نوار دسترسی داشته باشیم .بنابراین یک deciderبا حافظه چندجملهای برای هر زبان NPبا تبدیل یک ورودی از زبان
به یک ورودی از TQBFدر به صورت حافظه چندجملهای و بعد از اجرای این deciderبر TQBFداریم.
در نتیجه هر زبانی در کالس NPدر PSPACEنیز است و داریم.⊆ PSPACE NP
پس نتیجه میشود که .PSPACE = NP
.Q.E.D
6