תורת החישוביות/כריעות שפות/רדוקציה חישובית: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Gran (שיחה | תרומות)
מ קישורים פנימיים
Atavory (שיחה | תרומות)
אין תקציר עריכה
שורה 1:
{{תורת החישוביות}}
 
ב[[תורת החישוביות/כריעות שפות/קיום שפות שאינן כריעות|קיום שפות לא כריעות]] ראינו שבעייה ספיציפית, בעיית העצירה, איננה כריעה, וראינו משיקולי מניה שיש אינספור שפות שאינן אפילו כריעות למחצה. לעתים רוצים להוכיח קיום (או שלילת-קיום) רמת כריעות כלשהי של שפה כלשהי. במצב כזה, אין טעם "להוכיח את הגלגל מחדש" ולבנות סתירה כפי שעשינו ב[[תורת החישוביות/כריעות שפות/קיום שפות שאינן כריעות#קיום שפות לא כריעות|הוכחת אי-כריעותה של בעיית העצירה]]. במקום זאת, כדאי לבנות על מה שכבר ידוע. נציג כאן את רעיון ה'''רדוקציה''' שהינו אחד הרעיונות המרכזיים ביותר במדעי המחשב. הרעיון שעומד מאחורי הרדוקציה הוא המרת בעיה אחת לבעיה קודמת, ידועה יותר.
 
כצעד ראשון לקראת ההוכחה ששפות מסוימות אינן כריעות, נרצה להציג את רעיון ה'''רדוקציה''' שהינו אחד הרעיונות המרכזיים ביותר במדעי המחשב. הרעיון שעומד מאחורי הרדוקציה הוא המרת בעיה אחת לבעיה קודמת, ידועה יותר.
 
<div class="toclimit-3">__TOC__</div>
שורה 36 ⟵ 35:
{{-}}
 
{{דוגמה|שם===דוגמה: רדוקציה משפת האלכסון לשפה האוניברסלית==|תוכן=
 
נראה כי
שורה 52 ⟵ 51:
{{תזכורת|שימו לב: טענת '''אם״ם''' מוכיחים ע״י הוכחת שני הכיוונים: כיוון ה"אם" וכיוון ה"ורק אם"..}}
{{-}}
}}
{{דוגמה|שם===דוגמה: רדוקציה מהשפה האוניברסלית לבעיית העצירה==|תוכן=
נראה כי
[[תורת_החישוביות/כריעות_שפות#דוגמאות לשפות בRE|השפה האוניברסלית]] <math>L_U</math> ניתנת לרדוקציה ל[[תורת_החישוביות/כריעות_שפות#דוגמאות לשפות בRE|בעיית העצירה]]
שורה 66:
*מצד שני כאשר <math>(\langle M \rangle,x)\notin L_U</math> אזי M או דוחה את x או לא עוצרת עליו. בשני המקרים A לא עוצרת על x ומתקיים <math> (\langle A \rangle,x)\notin\text{HP} </math>.
*משני אלו נובעת התקפות של הרדוקציה. קל לראות שזו פונקציה מלאה וניתנת לחישוב ע״י מ״ט (כל שהמכונה נדרשת לעשות הוא החלפת הקידוד של מעבר ל־<math>q_{rej}</math> במעבר אחר).
}}
 
==תכונות בסיסיות של רדוקציות==
שורה 91 ⟵ 92:
מכיוון ש־f פונקציה מלאה, חישוב <math>f(x)</math> יסתיים לכל קלט x, ומכיוון ש־<math>M_2</math> מכריעה (כלומר, עוצרת על כל קלט) גם המכונה <math>M_1</math> עוצרת לבסוף על כל קלט. כמו כן, f <u>תקפה</u>, כלומר <math>x\in L_1</math> אם״ם <math>f(x)\in L_2</math>. לכן אם <math>x\in L_1</math> אז הקלט המומר <math>f(x)\in L_2</math>, ו־<math>M_2</math> תקבל את הקלט. מכאן שבמקרה זה <math>M_1</math> מקבלת את x. מצד שני, אם <math>x\notin L_1</math> אזי <math>f(x)\notin L_2</math> ולכן <math>M_2</math> דוחה את הקלט המומר, וגם <math>M_1</math> דוחה כנדרש. מכאן נובע – <math>M_1</math> מכריעה את <math>L_1</math> ו־<math>L_1\in R</math> לפי ההגדרה.}}
 
ההוכחות עבור סעיפים 2 ו־3 דומות להוכחה לעיל. במקרה זה ייתכן ש־<math>M_2</math> לא עוצרת על קלטים מסויימים, וגם <math>M_1</math> לא תעצור על אותם הקלטים. אבל אלו יהיו בדיוק הקלטים עליהם מותר ל־<math>M_1</math> לא לעצור, לפי ההגדרה המתאימה של <math>RE</math>, <math>coRE</math>.
 
אם נביט במשפט ההפכי למשפט הרדוקציה לעיל, נקבל את המשפט הבא:
שורה 103 ⟵ 104:
הסבר: נניח ש־<math>L_1\notin R</math>. אם <math>L_2\in R</math> נובע ממשפט הרדוקציה שהוכחנו לעיל שגם <math>L_1\in R</math>, וזו סתירה.
 
משפט זה שימושי ביותר להראות ששפות אינן כריעות. מספיק להוכיח ששפה מסויימת <math>L_1</math> אינה כריעה (כלומר, אינה ב־R), ובעזרתה נוכל להוכיח ששפות אחרות אינן כריעות ע״י רדוקציה מ־<math>L_1</math> אל אותן השפות. בד״כ ביצוע רדוקציה היא פעולה פשוטה בהרבה מאשר הוכחה ישירה ששפה אינה כריעה. [[../קיום שפות שאינן כריעות|בפרק הבא]] נוכיח ששפה מסויימת אינה כריעה ונבצע רדוקציה ממנה למגוון שפות נוספות.
 
 
להלן מספר דוגמאות להוכחת אי כריעותן של מספר שפות שראינו ב[[תורת החישוביות/כריעות שפות/כריעות למחצה חיובית|כריעות למחצה חיובית]].
 
{{דוגמה|שם=אי כריעות השפה האלכסונית|תוכן=
נראה שהשפה האלכסונית אינה כריעה, <math>L_D \notin R</math>.
 
נשים לב ש־<math>R</math> סגורה למשלים. לפיכך, מכיוון ש־<math>\overline{L_D} \notin R</math>, כך גם השפה המשלימה.
}}
 
{{דוגמה|שם=אי כריעות השפה האוניברסלית|תוכן=
ראינו מקודם שמתקיים.
<math>L_D \le L_U</math>.
אי-הכריעות נובעת, לכן ממשפט הרדוקציה ההופכי.
}}
 
{{דוגמה|שם=אי כריעות שפת בעיית העצירה|תוכן=
ראינו מקודם שמתקיים.
<math>L_U \le \text{HP}</math>.
אי-הכריעות נובעת, לכן ממשפט הרדוקציה ההופכי.
}}