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

گرامر lalr1 - بی رنگ - ۱۲ دى ۱۳۸۹ ۰۷:۲۲ ب.ظ

سلام دوستان
من به سوالی برخوردم که نوشته نشان دهید که گرامر روبرو lalr1 هست
S-->Aa | bAc | dc | bda
A-->d
من دیاگرام این گرامر رسم کردم در وضعیت شماره ۴ مشاهده میشه که این گرامر تداخل shift reduce داره
.A-->d
S-->d.c
برای همین lalr1 نیست ولی صورت سوال گفته که نشان دهید این گرامر lalr1 است! خواستم ببینم این سوال نکته ای داره یا اینکه صورت سوال اشتباهIdea
طبق نکته میدانیم هر گرامر ll1‌،
lalr1 هم هست ولی این گرامر حتی ll1 هم نیست(هیج کدام از قواعدش هم به اپسیلون نمیره)

RE: گرامر lalr1 - 54m4n3h - 13 دى ۱۳۸۹ ۰۳:۱۵ ب.ظ

حالت ۴ در LALR1ش این طوری هست:
کد:
S-->d.c , {$}
A-->d. , {a}
این حالت مشکوک به تداخل s/r هست اما تداخل نداره چون S با c شیفت پیدا میکنه و A با a کاهش پیدا میکنه

در ضمن، هر گرامر LL1 هم LALR1 نیست!
گرامر LL1ی که قاعده‌ی A-->epsilon نداشته باشه LR0 هست و گرامر LR0 هم همه چی هست! SLR1 و LALR1 و CLR1