تالار گفتمان مانشت
ایده کلی برای پشته زبان مستقل از متن - نسخه‌ی قابل چاپ

ایده کلی برای پشته زبان مستقل از متن - e.shrm - 10 دى ۱۳۹۲ ۱۰:۴۲ ق.ظ

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

[tex]wa^{n}b^{m}w^{R} , w\epsilon \varepsilon ^{*},n=2m[/tex]

RE: ایده کلی برای پشته زبان مستقل از متن - هاتف - ۱۰ دى ۱۳۹۲ ۱۰:۴۶ ق.ظ

میشه اینطور گفت:
هر چیزی که اومد وارد پشته می کنیم، بعد از یه جایی به بعد به طور غیر قطعی وقتی a دیدیم میریم به یه حالت دیگه ای و به ازای هر a دو تا a توی پشته قرار میدیم تا وقتی b بیاد، در این صورت میریم به یه حالت دیگه ای که به ازای هر b که دیدیم یک a از پشته حذف می کنیم، در نهایت هم (وقتی b ها با a ها رفت) به طور غیر قطعی به حالتی میریم که هر چی که در ورودی دیدیم باید در پشته ببینیم (همون معکوس رشته)
اگر ورودی تمام شد و پشته خالی بود، پذیرش

RE: ایده کلی برای پشته زبان مستقل از متن - e.shrm - 10 دى ۱۳۹۲ ۱۰:۵۷ ق.ظ

(۱۰ دى ۱۳۹۲ ۱۰:۴۶ ق.ظ)هاتف نوشته شده توسط:  میشه اینطور گفت:
هر چیزی که اومد وارد پشته می کنیم، بعد از یه جایی به بعد به طور غیر قطعی وقتی a دیدیم میریم به یه حالت دیگه ای و به ازای هر a دو تا a توی پشته قرار میدیم

میشه اینطور گفت:
هر چیزی که اومد وارد پشته می کنیم، بعد از یه جایی به بعد به طور غیر قطعی وقتی a دیدیم میریم به یه حالت دیگه ای و به ازای هر a دو تا a توی پشته قرار میدیم تا وقتی b بیاد، در این صورت میریم به یه حالت دیگه ای که به ازای هر b که دیدیم یک a از پشته حذف می کنیم، در نهایت هم (وقتی b ها با a ها رفت) به طور غیر قطعی به حالتی میریم که هر چی که در ورودی دیدیم باید در پشته ببینیم (همون معکوس رشته)
اگر ورودی تمام شد و پشته خالی بود، پذیرش
در واقع میشه اینطور گفت ، که اینم مثل همون حالته [tex]ww^{R}[/tex] هست ف با این تفاوت که اونجا aa و bb بصورت غیر قطعی وسط رشته رو مشخص میکرد ولی اینجا aab و و در صورت ۰ بودن m و n وسط رشته توسط aa و bb بصورت غیر قطعی تعیین میشه. درسته؟

RE: ایده کلی برای پشته زبان مستقل از متن - Jooybari - 10 دى ۱۳۹۲ ۱۰:۵۷ ب.ظ

(۱۰ دى ۱۳۹۲ ۱۰:۴۶ ق.ظ)هاتف نوشته شده توسط:  میشه اینطور گفت:
هر چیزی که اومد وارد پشته می کنیم، بعد از یه جایی به بعد به طور غیر قطعی وقتی a دیدیم میریم به یه حالت دیگه ای و به ازای هر a دو تا a توی پشته قرار میدیم تا وقتی b بیاد، در این صورت میریم به یه حالت دیگه ای که به ازای هر b که دیدیم یک a از پشته حذف می کنیم، در نهایت هم (وقتی b ها با a ها رفت) به طور غیر قطعی به حالتی میریم که هر چی که در ورودی دیدیم باید در پشته ببینیم (همون معکوس رشته)
اگر ورودی تمام شد و پشته خالی بود، پذیرش

سلام. هاتف خان ایدتون کاملاً درسته فقط دوتا اشتباه جزئی داره:
۱- مقدار n میتونه ۰ باشه.
۲- به ازای هر a یه a اضافه میکنیم و به ازای هر b دوتا a حذف میکنیم.

RE: ایده کلی برای پشته زبان مستقل از متن - هاتف - ۱۱ دى ۱۳۹۲ ۰۳:۲۲ ب.ظ

(۱۰ دى ۱۳۹۲ ۱۰:۵۷ ب.ظ)Jooybari نوشته شده توسط:  
(10 دى ۱۳۹۲ ۱۰:۴۶ ق.ظ)هاتف نوشته شده توسط:  میشه اینطور گفت:
هر چیزی که اومد وارد پشته می کنیم، بعد از یه جایی به بعد به طور غیر قطعی وقتی a دیدیم میریم به یه حالت دیگه ای و به ازای هر a دو تا a توی پشته قرار میدیم تا وقتی b بیاد، در این صورت میریم به یه حالت دیگه ای که به ازای هر b که دیدیم یک a از پشته حذف می کنیم، در نهایت هم (وقتی b ها با a ها رفت) به طور غیر قطعی به حالتی میریم که هر چی که در ورودی دیدیم باید در پشته ببینیم (همون معکوس رشته)
اگر ورودی تمام شد و پشته خالی بود، پذیرش

سلام. هاتف خان ایدتون کاملاً درسته فقط دوتا اشتباه جزئی داره:
۱- مقدار n میتونه ۰ باشه.
۲- به ازای هر a یه a اضافه میکنیم و به ازای هر b دوتا a حذف میکنیم.
سلام آقای جویباری
البته شما استاد ما هستی، تذکر اولتون بجاست و من حالت لامبدا رو در نظر نگرفتم اما به نظرم ایراد دومتون وارد نیست:
مگه نداریم که: n=2m پس برای راحتی کار میشه بجای n نوشت ۲m یعنی داریم:
[tex]wa^{2m}b^{m}w^{R}[/tex]
اینطوری واضحه که تعداد a ها دو برابر b هاست پس باید به ازای هر a دو تا علامت توی پشته بریزیم و به ازای هر b یکی از علامت ها رو حذف کنیم.

RE: ایده کلی برای پشته زبان مستقل از متن - Jooybari - 11 دى ۱۳۹۲ ۰۶:۴۵ ب.ظ

(۱۱ دى ۱۳۹۲ ۰۳:۲۲ ب.ظ)هاتف نوشته شده توسط:  اینطوری واضحه که تعداد a ها دو برابر b هاست پس باید به ازای هر a دو تا علامت توی پشته بریزیم و به ازای هر b یکی از علامت ها رو حذف کنیم.

اینجور اشتباهات خیلی رایجه. تعداد aها دو برابر bهاست. پس به ازای هر a که پوش میکنید با هر b باید ۲ تا a پاپ بشه. درنظر بگیرید تعداد aها ۴ تا و bها ۲ تا باشه. باید ۴ تا a پوش بشه و به ازای هر b باید دوتا از a ها پاپ بشه.

RE: ایده کلی برای پشته زبان مستقل از متن - هاتف - ۱۱ دى ۱۳۹۲ ۰۸:۲۶ ب.ظ

(۱۱ دى ۱۳۹۲ ۰۶:۴۵ ب.ظ)Jooybari نوشته شده توسط:  
(11 دى ۱۳۹۲ ۰۳:۲۲ ب.ظ)هاتف نوشته شده توسط:  اینطوری واضحه که تعداد a ها دو برابر b هاست پس باید به ازای هر a دو تا علامت توی پشته بریزیم و به ازای هر b یکی از علامت ها رو حذف کنیم.
اینجور اشتباهات خیلی رایجه. تعداد aها دو برابر bهاست. پس به ازای هر a که پوش میکنید با هر b باید ۲ تا a پاپ بشه. درنظر بگیرید تعداد aها ۴ تا و bها ۲ تا باشه. باید ۴ تا a پوش بشه و به ازای هر b باید دوتا از a ها پاپ بشه.
سوء تفاهم شده:
شما میفرمایید که هر a که دیدیم توی پشته میزاریم، به ازای هر b دو تا علامت از پشته بر میداریم
من عرض کردم که هر a که دیدیم دو علامت توی پشته میزاریم، به ازای هر b یک علامت از پشته بر میداریم.
من فکر می کنم این دو جمله یکی هستند و هر دو درست هستند Blush

RE: ایده کلی برای پشته زبان مستقل از متن - niyayesh.r - 13 دى ۱۳۹۲ ۰۱:۳۲ ب.ظ

سلام دوستان
من فکر می کنم که نظر آقای جویباری کاملا درست هستش یه کمی تو ذهنتون مرور کنید متوجه می شید که دارید اشتباه می کنید البته به نظر من

RE: ایده کلی برای پشته زبان مستقل از متن - Jooybari - 13 دى ۱۳۹۲ ۰۵:۵۶ ب.ظ

(۱۱ دى ۱۳۹۲ ۰۸:۲۶ ب.ظ)هاتف نوشته شده توسط:  سوء تفاهم شده:
شما میفرمایید که هر a که دیدیم توی پشته میزاریم، به ازای هر b دو تا علامت از پشته بر میداریم
من عرض کردم که هر a که دیدیم دو علامت توی پشته میزاریم، به ازای هر b یک علامت از پشته بر میداریم.
من فکر می کنم این دو جمله یکی هستند و هر دو درست هستند Blush

یکیش به n=2m و یکیش به m=2n ختم میشه. برای همین گفتم این اشتباه خیلی متداوله.