تالار گفتمان مانشت

نسخه‌ی کامل: آزاد ۸۹ ساده سازی گرامر مستقل /
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام

در پوران یه ساده سازی انجام داده به این شکل:
[tex]S\rightarrow a | aA | B[/tex]
[tex]A\rightarrow aB [/tex]
[tex]B\rightarrow Aa | a [/tex]

و برای حذف قانون یکه، کلا قانون B را از گرامر حذف کرده و نتیجه را این داده :
[tex]S\rightarrow a | aA | Aa[/tex]
[tex]A\rightarrow aAa | aa [/tex]

من تا حالا توی ساده سازی اینجوریشو ندیده بودم. آیا اینجا درست حل کرده یا من چیزی هست که بلد نیستم؟
(07 آذر 1392 11:29 ق.ظ)zimenswall نوشته شده توسط: [ -> ]سلام

در پوران یه ساده سازی انجام داده به این شکل:
[tex]S\rightarrow a | aA | B[/tex]
[tex]A\rightarrow aB [/tex]
[tex]B\rightarrow Aa | a [/tex]

و برای حذف قانون یکه، کلا قانون B را از گرامر حذف کرده و نتیجه را این داده :
[tex]S\rightarrow a | aA | Aa[/tex]
[tex]A\rightarrow aAa | aa [/tex]

من تا حالا توی ساده سازی اینجوریشو ندیده بودم. آیا اینجا درست حل کرده یا من چیزی هست که بلد نیستم؟

سلام

بله اینجور درسته
اینطور کار کرده که هرچی سمت راست B هست رو آورده و توی هر جایی که توی قانون های دیگه B وجود داره به ازای همه سمت راستی های B جایگزین کرده، بعد از این عمل دیگه B دسترس پذیر نمیشه و حذف میشه.
(07 آذر 1392 11:52 ق.ظ)Riemann نوشته شده توسط: [ -> ]سلام

بله اینجور درسته
اینطور کار کرده که هرچی سمت راست B هست رو آورده و توی هر جایی که توی قانون های دیگه B وجود داره به ازای همه سمت راستی های B جایگزین کرده، بعد از این عمل دیگه B دسترس پذیر نمیشه و حذف میشه.
B که با A دسترس پذیره.

[tex]S\rightarrow a | aA | Aa[/tex]
[tex]A\rightarrow aB [/tex]
[tex]B\rightarrow Aa | a [/tex]
(07 آذر 1392 11:59 ق.ظ)zimenswall نوشته شده توسط: [ -> ]B که با A دسترس پذیره.

[tex]S\rightarrow a | aA | Aa[/tex]
[tex]A\rightarrow aB [/tex]
[tex]B\rightarrow Aa | a [/tex]

سلام. اگه یه غیرپایانه خودش رو فراخوانی نکنه میشه کل عبارت سمت راستش رو با فراخوانی های خودش جایگزین کرد واونرو حذف کرد. اینجا B رو در داخل A و S قرار داده و حذفش کرده. میشه به طریق مشابه A رو هم حذف کرد و داخل S و B قرار داد.

[tex]S\to a|aaB|B[/tex]
[tex]B\to a|aBa[/tex]
(07 آذر 1392 01:31 ب.ظ)Jooybari نوشته شده توسط: [ -> ]اگه یه غیرپایانه خودش رو فراخوانی نکنه میشه کل عبارت سمت راستش رو با فراخوانی های خودش جایگزین کرد واونرو حذف کرد.

[tex]S\to a|aaB|B[/tex]
[tex]B\to a|aBa[/tex]

تشکر
این نکته را نمیدونستم.
لینک مرجع