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

ابهام و رفع ابهام - پشتکار - ۱۹ بهمن ۱۳۹۰ ۰۱:۳۶ ق.ظ

کسی در مورد گرامرهای ابهام میتونه یه خلاصه اینجا مطلب بنویسه؟
فقط گرامرهای منظم و مستقل از متن میتونند مبهم باشند؟
آیا راهی برای تشخیص ابهام غیر از رسم درخت پارس وجود داره؟
روشهای رفع ابهام چگونه است؟
مرسی

ابهام و رفع ابهام - hadi_m - 19 بهمن ۱۳۹۰ ۰۳:۲۵ ب.ظ

با سلام
در راستای جواب شما چند نکته باید بگم:
اولا گرامرهای منظم به هیچ عنوان ذاتا مبهم نیستنند یعنی از انجا که nfa و dfa معادل یکدیگر اند لذا این دسته از زبانها غیر مبهم میباشند .
اینکه پرسیدین فقط زبان منظم و مستقل از متن ...
باید بگم هر زبانی میتونه مبهم باشه وابهام و عدم قطعیت توامان هستنند یعنی در واقع هر جا عدم قطعیت در انتخاب مسیر وجود دارد لذا ابهام هم وجود دارد .
هیچ لم در موری کلی برای اثبات ذاتا مبهم بودن یک زبان وجود ندارد و تشخیص ذاتما مبهم بودم یک زبان تجربی است و برای هر زبان شیوه مخصوص و روش اثبات خود را دارد .(زبانی ذاتا مبهم است که نتوان برای ان هیچ گرامر غیر مبهمی نوشت )
و اما در روشهای رفع ابهام‌: در کامپایلر بعضی تکنیکها وصرفا برای دسته خاصی از زبانها معرفی میشونداما شیوه که عمومیت داشته باشد و کلی باشد باز هم وجود ندارد وتنها بازنویسی گرامر است به صورتی که ابهام نداشته باشد.

RE: ابهام و رفع ابهام - sasanlive - 21 بهمن ۱۳۹۰ ۰۳:۰۳ ب.ظ

(۱۹ بهمن ۱۳۹۰ ۰۳:۲۵ ب.ظ)hadi_m نوشته شده توسط:  ب
اینکه پرسیدین فقط زبان منظم و مستقل از متن ...
باید بگم هر زبانی میتونه مبهم باشه وابهام و عدم قطعیت توامان هستنند یعنی در واقع هر جا عدم قطعیت در انتخاب مسیر وجود دارد لذا ابهام هم وجود دارد .

مبهم بودن فقط برای گرامرهای منظم و مستقل از متن دارای معنیه و نه برای بقیه گرامرها.
چون فقط برای گرامر این دو زبان میتونیم درخت اشتقاق بکشیم.

RE: ابهام و رفع ابهام - پشتکار - ۲۱ بهمن ۱۳۹۰ ۰۳:۱۶ ب.ظ

(۲۱ بهمن ۱۳۹۰ ۰۳:۰۳ ب.ظ)sasanlive نوشته شده توسط:  
(19 بهمن ۱۳۹۰ ۰۳:۲۵ ب.ظ)hadi_m نوشته شده توسط:  ب
اینکه پرسیدین فقط زبان منظم و مستقل از متن ...
باید بگم هر زبانی میتونه مبهم باشه وابهام و عدم قطعیت توامان هستنند یعنی در واقع هر جا عدم قطعیت در انتخاب مسیر وجود دارد لذا ابهام هم وجود دارد .

مبهم بودن فقط برای زبانهای منظم و مستقل از متن دارای معنیه و نه برای بقیه زبانها.
چون فقط برای این دو زبان میتونیم درخت اشتقاق بکشیم.

آره منم این رو خوندم ولی نمی دونم کجا خوندم
الان بقیه هم نظر بدن من شکم برطرف شه.

مثلا ااگر تستی این گزینه‌ها رو داشت، صحیحه یا غلط؟
- هر زبان می تواند دارای گرامر های مبهم باشد.
- زبانهای منظم به هیچ عنوان نمی توانند مبهم باشند.

ابهام و رفع ابهام - fatima1537 - 21 بهمن ۱۳۹۰ ۰۳:۲۱ ب.ظ

(۱۹ بهمن ۱۳۹۰ ۰۱:۳۶ ق.ظ)پشتکار نوشته شده توسط:  فقط گرامرهای منظم و مستقل از متن میتونند مبهم باشند؟
آیا راهی برای تشخیص ابهام غیر از رسم درخت پارس وجود داره؟
روشهای رفع ابهام چگونه است؟
زبانهای منظم مبهم نیستند و با ورود یک حرف الفبا به یک حالت منتقل میشیم نه به چند حالت .چون از انتقال لاندا در اونها استفاده نمیشه(و لاندا وجود نداره که مارو به مجموعه ای از حالات مختلف ببره و درنتیجه برای یک زبان (احتمالا)اشتقاق های متفاوتی هم بوجود بیاد).
درمورد رفع تشخیص مبهم بودن خانم homaهم اینجا گفتند که به نظر من درسته

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.

"اگه تو گرامر یک قانون با ترمینال خاصی شروع شده بود و یک قانون دیگه که متفاوت با قانون اول باشه ولی باز هم با همون ترمینال شروع شده این نشون میده که گرامر ما مبهمه و زبان مبهم رو تولید میکنه "

RE: ابهام و رفع ابهام - sasanlive - 21 بهمن ۱۳۹۰ ۰۳:۲۲ ب.ظ

(۲۱ بهمن ۱۳۹۰ ۰۳:۱۶ ب.ظ)پشتکار نوشته شده توسط:  مثلا ااگر تستی این گزینه‌ها رو داشت، صحیحه یا غلط؟
- هر زبان می تواند دارای گرامر های مبهم باشد.
- زبانهای منظم به هیچ عنوان نمی توانند مبهم باشند.

اولی غلطه توضیحشو بالا گفتم.

گزینه دومم اگه منظورتون گرامر زبانهای منظمه غلطه. گرامرهای منظم میتونن مبهم باشند. ولی ذاتا نمیتونن مبهم باشن(یعنی میشه این گرامرها رو رفع ابهام کرد).
البته ابهام یا عدم ابهام مربوط به گرامره نه زبان.
همه زبانهای منظمو میشه گرامرشو طوری نوشت که مبهم نباشن.

ابهام و رفع ابهام - fatima1537 - 21 بهمن ۱۳۹۰ ۰۳:۲۳ ب.ظ

(۲۱ بهمن ۱۳۹۰ ۰۳:۱۶ ب.ظ)پشتکار نوشته شده توسط:  مثلا ااگر تستی این گزینه‌ها رو داشت، صحیحه یا غلط؟
- هر زبان می تواند دارای گرامر های مبهم باشد.
- زبانهای منظم به هیچ عنوان نمی توانند مبهم باشند.
اگر زبان منظمی هم مبهم باشه با روشهای نرمال سازی گریباخ و چامسکی میشه اون رو رفع ابهام و تبدیل به منظم کرد.من که گزینه غلط رو میزنم