600 likes | 962 Views
نظریه زبان ها و ماشین ها. فصل اول- زبان های منظم و ماشین های حالت متناهی. دانشگاه صنعتی شریف پاییز 86. ماشین حالت متناهی. ساده ترین مدل محاسباتی کامپیوترها، یک ماشین حالت متناهی ( finite Automaton یا finite State Machine ) است. مناسب برای مدلسازی کامپیوترهایی با حافظه بسیار محدود
E N D
نظریه زبان ها و ماشین ها فصل اول- زبان های منظم و ماشین های حالت متناهی دانشگاه صنعتی شریف پاییز 86
ماشین حالت متناهی • ساده ترین مدل محاسباتی کامپیوترها، یک ماشین حالت متناهی (finite Automaton یا finite State Machine)است. • مناسب برای مدلسازی کامپیوترهایی با حافظه بسیار محدود • در سیستم های نهفته (Embedded Systems) استفاده چنین ماشین هایی بسیار رایج است. • زنجیره های مارکوفی(Markov Chains)همتای احتمالی ماشین های حالت متناهی هستند. • این مدل ها درمدلسازی پروتکل های شبکه های کامپيوتری، پردازش گفتار و OCR برای تشخیص الگوهای موجود در داده ها کاربرد دارند. نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
یک مثال ساده • کنترلر یک در خودکار نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
یک مثال ساده - ادامه • نمودار حالت • جدول گذار(انتقال حالت) نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
تعریف ریاضی نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
زبان یک ماشین حالت متناهی • نتیجه پردازش هر رشته از علائم ورودی توسط یک ماشین حالت متناهی پذیرش(accept) یا رد(reject) است. • اگر A مجموعه تمام رشته هایی باشد که ماشین M می پذیرد، A را زبان ماشین M می گوییم و می نویسیم:L(M) = A • می گوییم ماشین M زبان A را تشخیص می دهد (می پذیرد) نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
بازگشت به مثال قبل نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال M4 تمام رشته هایی از a و b را می پذیرد که ابتدا و انتهای آن یکسان است. نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
تعریف صوری پذیرش نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
زبان منظم نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
طراحی یک ماشین حالت متناهی • خودتان را به جای ماشین تصور کنید. • یک ماشین حالت متناهی که رشته های شامل 001 را بپذیرد. • حالات ممکن عبارتند از: نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اعمال روی زبان های منظم نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
بسته بودن مجموعه زبان های منظم نسبت به اجتماع نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
بسته بودن مجموعه زبان های منظم نسبت به الحاق برای اثبات این ویژگی نیاز به تعریف مفهوم عدم قطعیت داریم. نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
تفاوت میان NFA و DFA نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مقایسه مفهوم پذیرش در NFA و DFA نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
تعریف صوری ماشین حالت متناهی غیرقطعی(NFA) نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
هم ارزی NFAها و DFAها • ایده اثبات: تبدیل NFA به DFAی که رفتار آن را شبیه سازی می کند. • اگر NFAی دارای k حالت باشد، برای شبیه سازی آن توسط یک DFA به k2حالت نیاز خواهیم داشت. نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات • ابتدا بدون در نظر گرفتن گذارهای ε، ماشین جدید را می سازیم. نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
در نظر گرفتن گذارهایε نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
در نظر گرفتن گذارهایε نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
نتیجه نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال - ادامه حذف حالات غیر قابل دسترسی نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات قضایای بسته بودن با استفاده از NFA نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات بسته بودن نسبت به اجتماع نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات- ادامه نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات بسته بودن نسبت به الحاق نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات- ادامه نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات بسته بودن نسبت به * نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات- ادامه نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
عبارات منظم آیا این تعریف دور ندارد؟ ترتیب تقدم عملگرها: *، الحاق، اجتماع نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال – ادامه نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
هم ارزی عبارات منظم و ماشین های حالت متناهی نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات • نشان می دهیم چگونه می توان عبارت منظم R را به NFAی با زبان معادل تبدیل کرد. • هر یک از شش حالت مختلف در تعریف عبارات منظم را در نظر می گیریم. • در سه حالت آخر چه طور می توان NFA را ساخت؟ نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
مثال نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
اثبات طرف دیگر • باید نشان دهیم که اگر یک زبان منظم باشد، می توان آن را با یک عبارت منظم نمایش داد. • ابتدا یک DFA را به GNFA متناظر آن تبدیل می کنیم. • سپس GNFA را به عبارت منظم تبدیل می نماییم. • GNFA یک ماشین غیرقطعی است که در آن گذارها به جای علائم الفبا می توانند عبارات منظم باشند. نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
تعریف صوری GNFA نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
چند فرض • برای سادگی، فرض می کنیم GNFA ویژگی های زیر را نیز باید داشته باشد: • از حالت شروع به هر حالت دیگر یک گذار وجود دارد و هیچ گذاری به حالت شروع وارد نمی شود. • تنها یک حالت پایان و نامساوی با حالت شروع وجود دارد که هیچ گذاری از آن خارج نمی شود اما از هر حالت یک گذار به آن داریم. • از هر حالتی به جز این دو حالت، به تمام حالت ها یک دقیقاً یک گذار وجود دارد. نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
Eliminating a state نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف
Example نظریه زبان ها و ماشین ها دانشگاه صنعتی شریف