CompilerAutomata_HW 7_92_1.pdf

‫هس بخ‬
‫هب انم تی ش‬
‫اوتومتا و رطاحی کامپایلر‬
‫تکلیف هفتم‬
‫دانشکده مهندسی کامپیوتر‬
‫نیمسال اول ‪95-94‬‬
‫مدرس ‪ :‬دکتر جابریپور‬
‫تاریخ تحویل‪ :‬شنبه ‪ 30‬آبان‬
‫توجه‪ :‬تحویل سواالتی که با * مشخص شدهاند و سواالت کالس درس الزامی است‪ .‬سواالتی که با عالمت ! مشخص شدهاند برای‬
‫شروع مناسب هستند‪.‬‬
‫‪ -1‬ثابت کنید زبانهای مستقل از متن تحت اعمال زیر بسته هستند‪:‬‬
‫‪.a‬‬
‫(!) }𝐿 𝑛𝑖 𝑠𝑖 𝒙𝒘 𝑥 𝑒𝑚𝑜𝑠 𝑟𝑜𝑓 |𝑤{ = )𝐿(𝑖𝑡𝑛𝑖‬
‫‪ : 𝐿/𝑎 )!( .b‬اگر زبان }‪ L = {a, aab, baa‬آنگاه }‪ 𝐿⁄𝑎 = {ε, ba‬خواهد بود‪.‬‬
‫‪.c‬‬
‫(*) }𝑢 𝑔𝑛𝑖𝑟𝑡𝑠 𝑎 𝑟𝑜𝑓 𝐿 ∈ 𝑣𝑢 |𝑣{ = )𝐿(𝑥𝑖𝑓𝑓𝑢𝑆‬
‫‪( .d‬سوال امتیازی) }𝐿 ∈ 𝑥𝑦 ‪𝑅𝐶(𝐿) = {𝑥𝑦 | 𝑥, 𝑦 ∈ (0 + 1)∗ ,‬‬
‫‪ -2‬ثابت کنید زبانهای مستقل از متن تحت اعمال زیر بسته نیستند‪:‬‬
‫‪ 𝑚𝑖𝑛(𝐿) )!( )a‬شامل رشتههایی که در 𝐿 هستند ولی هیچ پیشوندی از آنها عضو 𝐿 نیست‪.‬‬
‫‪ 𝑚𝑎𝑥(𝐿) )*( )b‬شامل رشتههایی که در 𝐿 هستند ولی پیشوند هیچ رشتهای از 𝐿 نیستند‪.‬‬
‫‪ )!( -3‬ثابت کنید اگر ‪ R‬و ‪ S‬دو زبان منظم باشند آنگاه }|𝑦| = |𝑥| ‪ 𝐴 ⋄ 𝐵 = {𝑥𝑦|𝑥 ∈ 𝐴 , 𝑦 ∈ 𝐵,‬مستقل از متن است‪.‬‬
‫‪ -4‬دو زبان مستقل از متن مثال بزنید که اشتراکشان مستقل از متن نباشد‪.‬‬
‫‪ -5‬با استفاده از الگوریتم ‪ CYK‬بگویید آیا رشتههای زیر در )‪ L(G‬هستند یا خیر‪.‬‬
‫‪𝑎𝑏𝑎𝑏𝑎 )a‬‬
‫‪𝑏𝑎𝑎𝑎𝑏 )*( )b‬‬
‫‪ -6‬الگوریتمی ارائه دهید که با دریافت یک ‪ CFG‬تعیین کند آیا زبان آن حداقل شامل ‪ 100‬رشته هست؟‬
‫‪ -7‬الگوریتم ‪ CYK‬را به گونهای تغییر دهید که تعداد درختهای پارس مجزا برای یک رشته دلخواه را حساب کند‪.‬‬
‫تذرکات‪:‬‬
‫‪ -1‬کتاب زیر مرجع اصلی درس است‪ ،‬مطالعه آن میتواند کمک شایانی به فهم مطالب کند‪.‬‬
‫‪Introduction to Automata Theory, Languages, and Computation; J.E.Hopcraft, R.Montwani,‬‬
‫‪J.D.Ullman, 3rd Edition‬‬
‫‪Compilers, Principles, Techniques &Tools; A.V.Aho, M.S.Lam, R.Sethi, J.D.Ullman, 2nd Edition‬‬
‫‪ -2‬تمرینات خود را روز شنبه‪ 30 ،‬آبانماه‪ ،‬ساعت ‪ 12‬سر کالس حلتمرین تحویل دهید‪ .‬از دیرتر تحویل دادن تمرین خود بنابه هر‬
‫دلیلی بپرهیزید‪.‬‬
‫‪ -3‬در صورتی که تمرینی را ایمیل میکنید‪ ،‬در اسرع وقت نسخه فیزیکی آن را نیز تحویل دهید!‬
‫‪ -4‬همه برگههای خود را به هم منگنه کرده و سپس تحویل دهید!‬
‫‪-5‬‬
‫از تقلب به شدت بپرهیزید! خودتان سواالت را حل کنید! (در صورت کشف برای کل تکلیف نمره ‪ -100‬برای همه نفرات لحاظ‬
‫خواهد شد)‬
‫‪ -6‬سواالت خود را به گروه درس یا ایمیل اعضای حلتمرین ارسال نمایید‪( .‬در صفحه درس موجود است)‬
‫موفق باشید‬