null

‫זיהוי שפות ע''י מ''ט – תזכורת‬
‫!‬
‫!‬
‫!‬
‫!‬
‫מכונת טיורינג לזיהוי שפות היא מכונת טיורינג‬
‫בעלת שני מצבים סופיים }‪F = {qACC,qREJ‬‬
‫נאמר כי מ''ט )לזיהוי שפות( ‪ M‬מקבלת קלט ‪ x‬אם‬
‫החישוב של ‪ M‬על קלט ‪ x‬מסתיים במצב ‪qACC‬‬
‫נאמר כי מ''ט )לזיהוי שפות( ‪ M‬דוחה את הקלט ‪ x‬אם‬
‫החישוב של ‪ M‬על ‪ x‬מסתיים במצב ‪qREJ‬‬
‫השפה המתקבלת ע''י מכונת טיורינג ‪ M‬המסומנת‬
‫‪ LM‬היא אוסף כל המילים אשר ‪ M‬מקבלת‬
‫‪2‬‬
‫זיהוי שפות ע''י מכונות טיורינג )המשך(‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫הקשר בין קבלת שפות לחישוב פונקציות‬
‫!‬
‫חישוביות – הרצאה ‪5‬‬
‫תהי ‪ g‬פונקציה בולאנית }‪g: {0,1}*→{0,1‬‬
‫!‬
‫מ''ט לחישוב פונקציה ומ''ט לזיהוי שפה‬
‫!‬
‫‪ g‬יכולה להיות מלאה או חלקית‬
‫ראינו שתי גרסאות של מכונת טיורינג‬
‫!‬
‫!‬
‫!‬
‫נגדיר שפה‪:‬‬
‫!‬
‫}‪ g‬מוגדר על ‪ x‬ו ‪Lg = {( x, σ ) : g ( x) = σ -‬‬
‫‪4‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫!‬
‫‪3‬‬
‫מ''ט המחשבת פונקציה )מקלטים לפלטים(‬
‫מ''ט לזיהוי שפה )עם שני מצבים סופיים‪ qACC ,‬ו‪(qREJ -‬‬
‫יש להבדיל בין שתי הגרסאות הנ''ל כי תוצאת פעולתן‬
‫מוגדרת באופן שונה‬
‫בהמשך נגיד "מכונת טיורינג" מבלי לציין באיזו גרסה‬
‫מדובר ויש להשיג זאת מההקשר‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫הקשר בין קבלת שפות וחישוב פונקציות‬
‫)המשך(‬
‫טענה ‪:1‬‬
‫!‬
‫!‬
‫!‬
‫תהי ‪ g‬פונקציה בולאנית מלאה‬
‫אזי ‪ g‬ניתנת לחישוב אם ורק אם ‪ Lg‬מתקבלת ע''י מכונת‬
‫טיורינג לזיהוי שפות העוצרת על כל קלט‬
‫טענה ‪:2‬‬
‫!‬
‫!‬
‫‪6‬‬
‫!‬
‫!‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫נתאר את המכונה `‪ M‬המקבלת את השפה ‪Lg‬‬
‫המכונה `‪ M‬תהיה בעלת ‪ 2‬סרטים‬
‫על קלט ‪ x#σ‬המכונה `‪ M‬תפעל באופן הבא‪:‬‬
‫!‬
‫!‬
‫!‬
‫!‬
‫‪8‬‬
‫!‬
‫תהי ‪ g‬פונקציה בולאנית כלשהי )מלאה או חלקית(‬
‫אזי ‪ g‬ניתנת לחישוב אם ורק אם ‪ Lg‬מתקבלת ע''י מכונת‬
‫טיורינג לזיהוי שפות )שלאו דווקא עוצרת על כל קלט(‬
‫כיוון ‪ – 1‬המשך ההוכחה‬
‫!‬
‫דוגמה לבניית השפה ‪Lg‬‬
‫תעתיק את ‪ x‬מהסרט הראשון לסרט השני‬
‫תריץ את המכונה ‪ M‬על ‪ x‬בסרט השני‬
‫תשווה את הפלט של ‪) M‬ביט אחד( שהתקבל בסרט השני‬
‫עם ה‪ σ-‬שבסרט הראשון‬
‫אם יש שוויון תעצור במצב ‪ qACC‬אחרת תעצור במצב ‪qREJ‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫תהי ‪ g‬הפונקציה הבאה‪:‬‬
‫‪g(0) = 0 g(11) = 0 g(10) = 1 g(101) = 0‬‬
‫כאשר לשאר הערכים של ‪ g(x) ,x‬אינה מוגדרת‬
‫אזי ‪ Lg‬היא השפה הבאה‪:‬‬
‫} )‪Lg = { (0,0), (11,0), (10,1), (101,0‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪5‬‬
‫הוכחת טענה ‪1‬‬
‫כיוון ‪:1‬‬
‫אם פונקציה מלאה ‪ g‬ניתנת לחישוב אזי השפה ‪Lg‬‬
‫ניתנת לקבלה ע''י מ''ט העוצרת על כל קלט‬
‫הוכחה‪:‬‬
‫מ''ט לחישוב פונקציה‬
‫!‬
‫!‬
‫לפי הנתון‪ ,‬קיימת מ''ט ‪ M‬המחשבת את הפונקציה ‪g‬‬
‫יש להוכיח קיום מכונת טיורינג `‪ M‬המקבלת את השפה ‪Lg‬‬
‫ועוצרת על כל קלט‬
‫מ''ט לזיהוי שפה‬
‫‪7‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫כיוון ‪ – 1‬המשך ההוכחה‬
‫הוכחת כיוון ‪2‬‬
‫כיוון ‪:2‬‬
‫אם השפה ‪ Lg‬ניתנת לקבלה ע''י מ''ט העוצרת על‬
‫כל קלט עבור פונקציה מלאה ‪ g‬אזי ‪ g‬ניתנת לחישוב‬
‫מ''ט לזיהוי שפה‬
‫הוכחה‪:‬‬
‫!‬
‫!‬
‫!‬
‫!‬
‫אבחנה‪ :‬כיוון ש‪ M-‬עוצרת על כל קלט‪ ,‬גם `‪M‬‬
‫תעצור על כל קלט‬
‫קל לוודא ש‪ M`-‬מקבלת את ‪:Lg‬‬
‫!‬
‫לפי הנתון קיימת מ''ט `‪ M‬המקבלת את השפה ‪ Lg‬ועוצרת על‬
‫כל קלט‬
‫יש להוכיח קיום מ''ט ‪ M‬המחשבת את הפונקציה ‪g‬‬
‫!‬
‫אם ‪ x#σ∈Lg‬אזי ‪ g(x)=σ‬ולפי הבניה `‪ M‬תקבל‬
‫אם ‪ x#σ∉Lg‬אזי ‪ g(x)≠σ‬ולפי הבניה `‪ M‬לא תקבל‬
‫☺‬
‫מ''ט לחישוב פונקציה‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪10‬‬
‫הוכחת טענה ‪2‬‬
‫!‬
‫‪9‬‬
‫כיוון ‪ – 2‬המשך ההוכחה‬
‫כיוון ‪:1‬‬
‫אם פונקציה מלאה או חלקית ‪ g‬ניתנת לחישוב אזי‬
‫השפה ‪ Lg‬ניתנת לקבלה ע''י מ''ט‬
‫הוכחה‪:‬‬
‫!‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫!‬
‫!‬
‫!‬
‫נבנה מ''ט ‪ M‬המחשבת את הפונקציה ‪g‬‬
‫‪ M‬תהיה בעלת ‪ 2‬סרטים‬
‫על קלט ‪ x‬המכונה ‪ M‬תפעל באופן הבא‪:‬‬
‫!‬
‫!‬
‫!‬
‫לפי הנתון‪ ,‬קיימת מ''ט ‪ M‬המחשבת את הפונקציה ‪g‬‬
‫יש להוכיח קיום מכונת טיורינג `‪ M‬המקבלת את השפה ‪Lg‬‬
‫!‬
‫!‬
‫!‬
‫‪12‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪11‬‬
‫תסמן את תחילת הסרט השני ב‪$-‬‬
‫תעתיק את ‪ x‬מהסרט הראשון לסרט השני )אחרי ‪($‬‬
‫תוסיף בסיום ‪ x‬את ‪#0‬‬
‫תחזור לתחילת הסרט השני ותריץ `‪ M‬על ‪ x#0‬בסרט השני‬
‫אם `‪ M‬קיבלה )ואז ‪ ,(g(x)=0‬תכתוב פלט ‪ 0‬בסרט השני ותעצור‬
‫אחרת )‪ ,(g(x)=1‬תכתוב פלט ‪ 1‬בסרט השני ותעצור‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫כיוון ‪ – 1‬המשך ההוכחה‬
‫!‬
‫!‬
‫ההבדל לעומת טענה ‪ 1‬הוא שהפונקציה ‪ g‬יכולה להיות חלקית ⇐‬
‫המכונה ‪ M‬עלולה לא לעצור עבור ‪-x‬ים מסומים‬
‫מה קורה ל‪ M` -‬על קלט ‪ x#σ‬כאשר ‪ M‬לא עוצרת על ‪? x‬‬
‫!‬
‫!‬
‫!‬
‫‪14‬‬
‫!‬
‫נבנה מ''ט ‪ M‬המחשבת את ‪ g‬באופן דומה לבניה בכיוון ‪ 2‬של טענה ‪1‬‬
‫המכונה ‪ M‬תהיה בעלת ‪ 3‬סרטים‬
‫על קלט ‪ x‬המכונה ‪ M‬תפעל באופן הבא‪:‬‬
‫!‬
‫!‬
‫!‬
‫!‬
‫!‬
‫!‬
‫תסמן תחילה של הסרט השני והשלישי ב‪$-‬‬
‫תעתיק את ‪ x‬לסרט השני וגם לסרט השלישי‬
‫תוסיף בסרט השני ‪ #0‬ובסרט השלישי ‪ #1‬בסיום ‪x‬‬
‫תריץ `‪ M‬על ‪ x#0‬בסרט השני ובמקביל תריץ `‪ M‬על ‪ x#1‬בסרט השלישי‬
‫פרוש ההרצה במקביל‪ :‬צעד של הרצה ‪ ,1‬צעד של הרצה ‪ ,2‬לסרוגין‬
‫אם אחת ההרצות עוצרת ומקבלת‪ M ,‬תעצור עם פלט ‪ 0‬או ‪ 1‬בהתאם‬
‫אם שתי ההרצות עוצרות ודוחות ‪ M‬תכנס ללולאה אינסופית ולא תעצור‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫נבנה מ''ט `‪ M‬המקבלת שפה ‪ Lg‬בדיוק כמו בכיוון ‪ 1‬של‬
‫טענה ‪1‬‬
‫על קלט ‪ x#σ‬המכונה `‪ M‬תפעל באופן הבא‪:‬‬
‫!‬
‫!‬
‫!‬
‫הרי )‪ g(x‬אינו מוגדר )‪ M‬לא עוצרת על ‪ (x‬ולכן ‪(x,σ)∉Lg‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫!‬
‫‪16‬‬
‫!‬
‫גם `‪ M‬לא תעצור על ‪! x#σ‬‬
‫כיוון ‪ – 2‬המשך ההוכחה‬
‫!‬
‫!‬
‫פרוש הדבר‪ :‬הקלט ‪ x#σ‬לא מתקבל‬
‫אך זה בדיוק מה שצריך‪:‬‬
‫!‬
‫!‬
‫הוכחת כיוון ‪1‬‬
‫!‬
‫תעתיק את ‪ x‬מהסרט הראשון לסרט השני‬
‫תריץ את המכונה ‪ M‬על ‪ x‬בסרט השני‬
‫תשווה את הפלט של ‪) M‬ביט אחד( שהתקבל בסרט השני עם ה‪-‬‬
‫‪ σ‬שבסרט הראשון‬
‫אם יש שוויון תעצור במצב ‪ qACC‬אחרת תעצור במצב ‪qREJ‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪13‬‬
‫הוכחת כיוון ‪2‬‬
‫כיוון ‪:2‬‬
‫אם השפה ‪ Lg‬ניתנת לקבלה ע''י מ''ט עבור‬
‫פונקציה ‪ g‬כלשהי אזי ‪ g‬ניתנת לחישוב‬
‫הוכחה‪:‬‬
‫!‬
‫!‬
‫‪15‬‬
‫לפי הנתון קיימת מ''ט `‪ M‬המקבלת את השפה ‪) Lg‬ולאו‬
‫דווקא עוצרת על כל קלט(‬
‫יש להוכיח קיום מ''ט ‪ M‬המחשבת את הפונקציה ‪g‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫הגדרה נוספת‬
‫!‬
‫כיוון ‪ – 2‬סיום ההוכחה‬
‫הגדרה‪:‬‬
‫נאמר כי מכונת טיורינג ‪ M‬לזיהוי שפות‬
‫מכריעה את השפה )‪ L(M‬אם לכל קלט ‪M ,x‬‬
‫עוצרת על ‪) x‬במצב ‪ qACC‬או ‪(qREJ‬‬
‫!‬
‫!‬
‫!‬
‫!‬
‫‪#‬‬
‫‪18‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫מחלקת השפות ‪R‬‬
‫!‬
‫הגדרה‪:‬‬
‫מחלקת השפות הרקורסיביות )המסומנת ‪ (R‬היא‬
‫מחלקת השפות הניתנות לקבלה ע''י מכונת טיורינג‬
‫העוצרת על כל קלט‪:‬‬
‫‪17‬‬
‫‪20‬‬
‫אם )‪ g(x‬מוגדרת‪ ,‬אז או ש‪ g(x)=0 -‬או ש‪g(x)=1 -‬‬
‫כלומר ‪ (x,0)∈Lg‬או ‪(x,1)∈Lg‬‬
‫מסקנה‪ :‬אם )‪ g(x‬מוגדרת‪ ,‬אחת הריצות של `‪ M‬תעצור‬
‫במצב מקבל ואז ‪ M‬תעצור עם פלט )‪ 0) g(x‬או ‪(1‬‬
‫אם )‪ g(x‬לא מוגדרת אז או ששתי ההרצות של `‪ M‬דוחות‬
‫ואז ‪ M‬לא עוצרת לפי הבניה‪ ,‬או שאחת או שתי ההרצות‬
‫של `‪ M‬לא עוצרות ואז ‪ M‬לא עוצרת כי היא מחכה‬
‫לתשובה של הרצה אחת או שניים של `‪M‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫מחלקות שפות ‪RE‬‬
‫!‬
‫הגדרה‪:‬‬
‫מחלקת השפות הניתנות למנייה רקורסיבית‬
‫)המסומנת ‪ (RE‬היא מחלקת השפות הניתנות לקבלה‬
‫ע''י מכונת טיורינג‪:‬‬
‫}קיימת מ''ט המקבלת את ‪RE = {L : L‬‬
‫}קיימת מ''ט המכריעה את ‪R = {L : L‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫למה המכונה ‪ M‬מחשבת נכון את הפונקציה ‪? g‬‬
‫‪19‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫תכונות של המחלקות ‪ R‬ו‪RE -‬‬
‫!‬
‫טענה ‪ R :1‬סגורה תחת משלים‬
‫!‬
‫!‬
‫!‬
‫!‬
‫פרוש הטענה‪L ∈ R ⇐ L∈R :‬‬
‫תהי ‪ L‬שפה רקורסיבית כלשהי‬
‫תהי ‪ M‬מ''ט המקבלת את ‪ L‬ועוצרת על כל קלט )קיימת‬
‫מ''ט כזו כי ‪ L‬רקורסיבית(‬
‫נראה ש‪ L ∈ R -‬ע''י בניית מ''ט `‪ M‬המקבלת את ‪L‬‬
‫ועוצרת על כל קלט‬
‫‪22‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 1‬דיון‬
‫!‬
‫‪R⊆RE‬‬
‫!‬
‫!‬
‫הסבר‪ :‬מכונת טיורינג המכריעה את ‪) L‬מקבלת את ‪ L‬ועוצרת‬
‫על כל קלט( היא בפרט מכונת טיורינג המקבלת את ‪L‬‬
‫האם ‪? R=RE‬‬
‫!‬
‫!‬
‫!‬
‫‪21‬‬
‫נראה בהמשך שהתשובה שלילית‬
‫פרוש הדבר‪ :‬ישנן שפות ב‪ RE-‬אך לא ב‪R-‬‬
‫עבור שפה כנ''ל‪ ,‬קיימת מ''ט המקבלת אותה אך לא עוצרת על‬
‫קלטים מסויימים שלא בשפה‪ ,‬אך לא קיימת מ''ט עבור אותה‬
‫שפה שעוצרת על כל קלט‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 1‬המשך ההוכחה‬
‫האם ההוכחה שראינו תעבוד גם עבור ‪? RE‬‬
‫לא !‬
‫!‬
‫למה ?‬
‫!‬
‫‪24‬‬
‫!‬
‫הוכחה‪:‬‬
‫!‬
‫!‬
‫הקשר בין ‪ R‬ו‪RE -‬‬
‫!‬
‫`‪ M‬מקבלת שפה של כל המילים עליהם ‪ M‬עוצרת במצב‬
‫‪ qREJ‬אך זה לא כולל את כל המילים ב‪ , L -‬יש ב‪ L-‬גם‬
‫קלטים עליהם ‪ M‬לא עוצרת‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫!‬
‫!‬
‫‪23‬‬
‫מ''ט `‪ M‬תהיה מוגדרת באופן זהה ל‪ M-‬למעט הבדל יחיד שמצבי‬
‫קבלה ודחייה ב‪ M`-‬יהיו הפוכים‪:‬‬
‫‪qACC` = qREJ‬‬
‫‪qREJ` = qACC‬‬
‫כלומר‪ ,‬על כל קלט ‪ M` x‬תעבוד בדיוק כמו ‪ M‬אך אם ‪ M‬עוצרת‬
‫במצב קבלה‪ M` ,‬תעצור במצב דחייה ולהיפך‬
‫ברור כי `‪ M‬עוצרת על כל קלט כי ‪ M‬עוצרת על כל קלט‬
‫`‪ M‬מקבלת את השפה ‪ L‬כי המילים עליהם `‪ M‬עוצרת במצב‬
‫`‪ qACC‬הוא בדיוק אוסף המילים עליהם ‪ M‬עוצרת במצב ‪qREJ‬‬
‫וכיוון ש‪ M-‬עוצרת על כל קלט‪ ,‬זה בדיוק ‪L‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 2‬המשך ההוכחה‬
‫!‬
‫!‬
‫מ''ט `‪ M‬תהיה בעלת שני סרטים‬
‫`‪ M‬על קלט ‪ x‬תפעל באופן הבא‪:‬‬
‫!‬
‫!‬
‫!‬
‫!‬
‫!‬
‫תעתיק את ‪ x‬מהסרט הראשון לסרט השני‬
‫תריץ את ‪ M1‬על ‪ x‬בסרט הראשון‬
‫אם ההרצה של ‪ M1‬מסתיימת במצב קבלה‪ M` ,‬תעצור‬
‫במצב קבלה‬
‫אחרת‪ M` ,‬תריץ את ‪ M2‬על ‪ x‬בסרט השני‬
‫אם ההרצה של ‪ M2‬הסתיימה במצב קבלה‪ M` ,‬תעצור‬
‫במצב קבלה‪ ,‬אחרת )‪ M2‬דחתה( `‪ M‬תעצור במצב דחייה‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪26‬‬
‫טענה ‪ – 2‬דיון‬
‫!‬
‫!‬
‫!‬
‫!‬
‫‪28‬‬
‫!‬
‫טענה ‪ R :2‬סגורה תחת איחוד‬
‫!‬
‫!‬
‫הוכחה‪:‬‬
‫!‬
‫!‬
‫!‬
‫‪25‬‬
‫פרוש הטענה‪ L1∈R :‬וגם ‪L1∪L2∈R ⇐ L2∈R‬‬
‫תהי ‪ M1‬מ''ט המכריעה את ‪ L1∈R‬ותהי ‪ M2‬מ''ט‬
‫המכריעה את ‪L2∈R‬‬
‫הערה‪ M1 :‬ו‪ M2 -‬עוצרות על כל קלט‬
‫נבנה מ''ט `‪ M‬המקבלת את ‪ L1∪L2‬ועוצרת על כל קלט‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 2‬המשך ההוכחה‬
‫האם ניתן להשתמש באותה הוכחה גם עבור ‪? RE‬‬
‫לא !‬
‫למה הפעם לא ?‬
‫!‬
‫תכונות של המחלקות ‪ R‬ו‪) RE -‬המשך(‬
‫אם ‪ x∉L1‬אך ‪ x∈L2‬אז `‪ M‬אמורה לקבל את ‪x‬‬
‫אבל יכול להיות ש‪ M1-‬לא תעצור על ‪ x‬ואז גם `‪ M‬לא תעצור !‬
‫!‬
‫!‬
‫`‪ M‬מקבלת את השפה ‪ L1∪L2‬כנדרש‪:‬‬
‫‪ ⇔ x∈L1∪L2‬אחת ההרצות של ‪ M2 ,M1‬על ‪ x‬עוצרת‬
‫ומקבלת ⇔ `‪ M‬מקבלת את ‪x‬‬
‫נראה בהוכחת טענה ‪ 3‬איך "לתקן" את המכונה `‪ M‬כך‬
‫שההוכחה תתאים גם עבור ‪RE‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫ברור כי `‪ M‬עוצרת על כל קלט כי ‪ M1‬וגם ‪M2‬‬
‫עוצרות על כל קלט‬
‫‪27‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 3‬המשך ההוכחה‬
‫!‬
‫!‬
‫מ''ט `‪ M‬תהיה בעלת שני סרטים‬
‫`‪ M‬על קלט ‪ x‬תפעל באופן הבא‪:‬‬
‫!‬
‫!‬
‫תעתיק את ‪ x‬מהסרט הראשון לסרט השני‬
‫תריץ במקביל את ‪ M1‬על ‪ x‬בסרט הראשון ואת ‪ M2‬על ‪ x‬בסרט‬
‫השני‬
‫!‬
‫!‬
‫!‬
‫‪30‬‬
‫!‬
‫!‬
‫!‬
‫‪32‬‬
‫!‬
‫טענה ‪ RE :3‬סגורה תחת איחוד‬
‫!‬
‫!‬
‫!‬
‫אם אחת ההרצות עוצרת במצב קבלה‪ M` ,‬גם תעצור במצב קבלה‬
‫אם אחת ההרצות עוצרת במצב דחייה‪ M` ,‬תמשיך בהרצה השניה‬
‫ותקבל )תדחה( אם ההרצה השניה עוצרת במצב קבלה )דחייה(‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫בהוכחה האחרונה ראינו מכונה שמריצה "במקביל" שתי הרצות‬
‫שונות‪ ,‬כל אחת על גבי סרט נפרד‬
‫מה ניתן לעשות אם יש לבצע במקביל מספר הרצות שאינו קבוע‬
‫)ואז לא ניתן להקצות סרט נפרד לכל הרצה ( ?‬
‫הרצה חסומה ל‪ i-‬צעדים‪ :‬הרצה שמבצעת רק ‪ i‬צעדי חישוב‬
‫ראשונים ואז מופסקת באמצע אם טרם הסתיימה‬
‫לא נצטרך יותר מ‪ i-‬תאים עבור הרצה כזו‪ ,‬לכן נחלק את הסרט‬
‫היחיד לאזורים בגודל ‪ i‬תאים‪ ,‬ונבצע בכל אזור הרצה חסומה ע''י ‪i‬‬
‫צעדים‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫פרוש הטענה‪ L1∈RE :‬וגם ‪L1∪L2∈RE ⇐ L2∈RE‬‬
‫הוכחה‪:‬‬
‫הרצה במקביל פרושה צעד של ההרצה הראשונה‪ ,‬צעד של ההרצה‬
‫השניה‪ ,‬לסירוגין‬
‫סימולציה של מספר הרצות במקביל‬
‫!‬
‫תכונות של המחלקות ‪ R‬ו‪) RE -‬המשך(‬
‫!‬
‫!‬
‫‪29‬‬
‫תהי ‪ M1‬מ''ט המקבלת את ‪ L1∈RE‬ותהי ‪ M2‬מ''ט‬
‫המקבלת את ‪L2∈RE‬‬
‫הערה‪ M1 :‬ו‪ M2 -‬עלולות לא לעצור על קלטים מסוימים‬
‫נבנה מ''ט `‪ M‬המקבלת את ‪L1∪L2‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 3‬המשך ההוכחה‬
‫!‬
‫מה קורה אם אחת ההרצות עוצרת ודוחה והשניה לא‬
‫עוצרת‪ ,‬או ששתי ההרצות לא עוצרות ?‬
‫!‬
‫!‬
‫!‬
‫במקרה זה מילת הקלט ‪ x‬לא מתקבלת לא ע''י ‪ M1‬ולא ע''י‬
‫‪ M2‬ולכן ‪x∉L1∪L2 ⇐ x∉L2 ,x∉L1‬‬
‫לכן על המכונה `‪ M‬לא לקבל את ‪ x‬והיא אכן לא תקבל‬
‫אותו כי היא לא תעצור‬
‫`‪ M‬מקבלת שפה ‪ L1∪L2‬כנדרש‪:‬‬
‫‪ ⇔ x∈L1∪L2‬אחת ההרצות של ‪ M2 ,M1‬על ‪ x‬עוצרת‬
‫ומקבלת ⇔ `‪ M‬מקבלת את ‪x‬‬
‫‪31‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫תכונות נוספות של המחלקות ‪ R‬ו‪RE -‬‬
‫!‬
‫טענה‪:‬‬
‫!‬
‫!‬
‫!‬
‫!‬
‫!‬
‫!‬
‫‪ R‬סגורה תחת חיתוך‬
‫‪ RE‬סגורה תחת חיתוך‬
‫‪ R‬סגורה תחת שרשור‬
‫‪ RE‬סגורה תחת שרשור‬
‫נחזור על התהליך באיטרציות לכל ‪ i‬החל מ‪ 1-‬ומעלה‬
‫!‬
‫!‬
‫באיטרציה מס' ‪ i‬נחלק את הסרט לאזורים בגודל ‪ i‬ונבצע‬
‫הרצות מקבילות חסומות ע''י ‪ i‬צעדים שחלקם מספיק‬
‫להסתיים וחלקם לא‬
‫אם הרצה מסוימת עוצרת‪ ,‬אז נגיע ל‪ i-‬גדול מספיק‬
‫כדי לאפשר לה לסיים תוך ‪ i‬צעדים‬
‫ההוכחה בתרגיל בית !‬
‫‪34‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 4‬המשך ההוכחה‬
‫!‬
‫הרצות מקבילות )המשך(‬
‫כיוון ‪ L∈RE ⇒ L∈R :1‬וגם ‪L ∈ RE‬‬
‫!‬
‫!‬
‫!‬
‫!‬
‫!‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪33‬‬
‫תכונות של המחלקות ‪ R‬ו‪) RE -‬המשך(‬
‫!‬
‫טענה ‪ L∈RE ⇔ L∈R :4‬וגם ‪L ∈ RE‬‬
‫תהי ‪ M‬מ''ט המקבלת את ‪ L‬ותהי `‪ M‬מ''ט המקבלת את ‪L‬‬
‫הערה‪ M :‬וגם `‪ M‬עלולות לא לעצור על קלטים מסוימים‬
‫נבנה מ''ט ``‪ M‬המקבלת את ‪ L‬ועוצרת על כל קלט‬
‫לכל ‪ ,x‬או ש‪ x∈L -‬או ש‪x ∈ L -‬‬
‫מסקנה‪ :‬או ש‪ M-‬עוצרת ומקבלת את ‪ x‬או ש‪ M`-‬עוצרת‬
‫ומקבלת את ‪x‬‬
‫הוכחה‪:‬‬
‫! כיוון ‪ L∈RE ⇐ L∈R :1‬וגם ‪L ∈ RE‬‬
‫!‬
‫!‬
‫‪ L∈RE ⇐ L∈R‬כי ‪R⊆RE‬‬
‫‪L ∈ RE ⇐ L ∈ R ⇐ L∈R‬‬
‫סגירות של‬
‫‪ R‬למשלים‬
‫‪36‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪35‬‬
‫‪R⊆RE‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫טענה ‪ – 4‬המשך ההוכחה‬
‫תיאור סכמטי של פעולת ``‪M‬‬
‫!‬
‫‪qACC‬‬
‫‪qACC‬‬
‫‪qREJ‬‬
‫‪qACC‬‬
‫!‬
‫‪M‬‬
‫‪x‬‬
‫המכונה ``‪ M‬תהיה בעלת שני סרטים‬
‫``‪ M‬על קלט ‪ x‬תפעל באופן הבא‪:‬‬
‫!‬
‫!‬
‫`‪M‬‬
‫!‬
‫!‬
‫‪38‬‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬
‫‪37‬‬
‫תעתיק את ‪ x‬מהסרט הראשון לסרט השני‬
‫תריץ במקביל את ‪ M‬על ‪ x‬בסרט הראשון ו‪ M`-‬על ‪x‬‬
‫בסרט השני‬
‫אם ההרצה של ‪ M‬מקבלת‪ M`` ,‬תעצור ותקבל‬
‫אם ההרצה של `‪ M‬מקבלת‪ M`` ,‬תעצור ותדחה‬
‫חישוביות ‪ -‬ד''ר אנה מוס‬