מס' ת.ז מס' מחברת מודלים חישוביים ־ מבחן מועד א' ,סמסטר א' תשע''ה )(2015 מרצה :פרופ' בני שור מתרגלים :אורית מוסקוביץ' וגל רותם 28.1.2015 הנחיות: .1מומלץ לקרוא את כל ההנחיות והשאלות בתחילת המבחן ,לפני כתיבת התשובות. .2משך הבחינה :שלוש שעות. .3חומר עזר מותר :שני דפי פוליו )דו צדדיים( בלבד עם שם התלמיד/ה. .4יש לענות על כל השאלות במקום המיועד לכך בטופס השאלון )טופס זה(. מחברות הבחינה לא ייקראו ,וישמשו כטיוטא בלבד. .5יש למלא בכל דף של השאלון מספר ת.ז ומספר מחברת. .6במבחן יש 6שאלות פתוחות: • • • • יש לענות על השאלות במקום המיועד לכך בטופס השאלון. במידה ואינכם יודעים תשובה לשאלה ,ניתן לענות ''אינני יודע/ת'' ולא להוסיף שום הסבר .על סעיף זה יינתנו 20%מהנקודות. יש לענות תשובות ברורות ,עינייניות ,תמציתיות וקריאות. תשובות שיחרגו משמעותית מהמקום המוקצב עלולות לגרום להורדת נקודות. .7מותר להשתמש בכל טענה שהוכחה בכיתה )בהרצאה ,בתרגול או בתרגיל בית( בתנאי שמצטטים אותה במדויק. טענות אחרות )כאלה שהוכחו בספר ,בהרצאות מהסמסטר הקודם ,וכו'( יש להוכיח. .8אלא אם נאמר אחרת ,הניחו כי ,N P 6= CoN P ,P 6= N Pוכן }.Σ = {0, 1 בהצלחה ,וחופש נעים! 1 2 3 4 5 6 סה''כ מס' מחברת מס' ת.ז .1יהיו b ≥ 0 ,a > 0מספרים קבועים שלמים .נגדיר }.Lab = {0n 1m | m 6= an + b הערה :בכל אחד מהסעיפים הבאים )לא חובה בשניהם( ,ניתן לענות עבור המקרה ש־ b = 0ולקבל חצי מהניקוד. )א( ) 5נקודות( הוכיחו בקצרה כי Labח''ה )אם מתארים אוטומט ,אין לכתוב פונ' מעברים(. )ב( ) 10נקודות( הוכיחו כי Labאינה רגולרית. נראה כי Labאינה רגולרית )והטענה נובעת מתכונת סגירות של שפות רגולריות תחת משלים(. n m }.Lab = {0 1 | m = an + b נניח כי זו שפה רגולרית ,לכן קיים לה קבוע ניפוח .p נסתכל על המילה w = 0p 1ap+b ∈ Labוכן .|w| ≥ p תהי חלוקה w = xyzכך ש־ |y| = k > 0וגם .|xy| ≤ p לכן y ,מכיל רק 0־ים. 0 נסתכל על .w0 = xy z = 0p−k 1ap+b מתקייםa(p − k) + b = ap + b − ak < ap + b : ∈ .w0 ולכן / Lab מס' ת.ז מס' מחברת 15) .2נקודות( נגדיר את השפה: ∈ L = {hM1 , M2 i | hM1 i ∈ / L(M2 ) ∨ hM2 i } M1 , M2מ''ט ומתקיים ) / L(M1 הוכיחו לאיזו מבין המחלקות הבאות Lשייכת? )ג( .L ∈ CoRE \ R ∈ .L )ד( / RE ∪ CoRE )א( .L ∈ R )ב( .L ∈ RE \ R .L ∈ CoRE \ R )(1 :L = {hM1 , M2 i | hM1 i ∈ L(M2 ) ∧ hM2 i ∈ L(M1 )} ∈ RE נבנה מ''ט עבור השפה :L המכונה תריץ במקביל את M1על הקלט hM2 iואת M2על הקלט hM1 i ותקבל אם שתי המכונות קיבלו. )(2 ∈ :L /R נראה רדוקציה מ־ .AT M Mapping Reduction f from AT M to L On input hM, wi ∗(a) Construct a TM M2 such that L(M2 ) = Σ (b) Construct a TM M1 : M1 = “On input x: 1. Run M on w ”2. If M accepts, accept; If M rejects, reject (c) Return hM1 , M2 i נכונות: • אם לכן • אם לכן ,hM, wi ∈ AT Mאז Mלא מקבלת את wולכן ∅ = ) .L(M1 ∈ .hM1 , M2 i ∈ L ⇐ hM2 i ∅ = ) / L(M1 ∗ ∈ ,hM, wiאז Mמקבלת את wולכן .L(M1 ) = Σ / AT M ∗ ∈ .hM1 , M2 i ∗ hM2 i ∈ L(M1 ) = Σוגם / L ⇐ hM1 i ∈ L(M2 ) = Σ פתרון נוסף: נקבע את M2להיות מכונה כלשהי שמקבלת את ∗ ,Σנקרא למכונה זו .ALL אזי הבעיה הופכת להיות 0 ∈ L = {hM1 i | hALLi }) / L(M1 וזו שפה לא כריעה ממשפט רייס. מס' ת.ז מס' מחברת 15) .3נקודות( נגדיר את השפה: } Mמ''ט ומתקיים L = {hM, ki | |L(M )| ≥ k הוכיחו לאיזו מבין המחלקות הבאות Lשייכת? )א( .L ∈ R )ג( .L ∈ CoRE \ R )ב( .L ∈ RE \ R ∈ .L )ד( / RE ∪ CoRE .L ∈ RE \ R )(1 :L ∈ RE נבנה מ''ט עבור השפה :L המכונה תריץ את Mעל כל המילים ב־ ∗ Σבצורה מבוקרת )כלומר ,באיטרציה ה־i ,i צעדים על iהמילים הראשונות( ותקבל אם מספר המילים ש־ Mקיבלה ≤ .k )(2 ∈ :L /R נראה רדוקציה מ־ }∅ =.ET M = {hM i | L(M ) 6 Mapping Reduction f from ET M to L On input hM i (a) Return hM, 1i נכונות: • אם ,hM i ∈ ET Mאז ∅ = L(M ) 6ולכן Mמקבלת לפחות מילה אחת. ⇐ .hM, 1i ∈ L ∈ ,hM iאז ∅ = ) L(Mולכן Mלא מקבלת אף מילה. • אם / ET M ∈ .hM, 1i ⇐/L פתרון נוסף: נקבע .k = 1 אזי הבעיה הופכת להיות }L0 = {hM i | |L(M )| ≥ 1 וזו שפה לא כריעה ממשפט רייס. מס' ת.ז מס' מחברת 25) .4נקודות( נגדיר את השפה: קיימת הצבה מערכת של mמשוואות ריבועיות ב־ n .x , . . . , x משתנים }x1 , . . . , xn ∈ {0, 1 = QE 1 n מקדמי המחוברים הם מספרים שלמים. המספקת את כל המשוואות. משוואה ריבועית היא משוואה עם מספר מחוברים ,שכל אחד מהם הוא מספר שלם, משתנה או מכפלה של שני משתנים .לדוגמא: x1 + x2 · x3 + x7 + x2 · x5 + x23 + x5 − x2 = 1 )א( ) 5נקודות( הוכיחו כי .QE ∈ N P העד הוא ההצבה } x1 , . . . , xn ∈ {0, 1שאורכה nביטים. המוודא מציב ובודק כי כל המשוואות מתקיימות )זמן פולינומיאלי באורך הקלט(. )ב( ) 20נקודות( הוכיחו כי QEהיא N Pקשה. הדרכה :הראו רדוקציה מ־ .3Colלכל צומת viבגרף ,הגדירו שלושה משתנים .xi , yi , zi לפי ההדרכה ,נבנה רדוקציה מ־ .3Colעבור קלט Gנבנה מערכת משוואות בצורה הבאה. לכל צומת viבגרף ,נגדיר שלושה משתנים .xi , yi , zi נגדיר את המשוואות הבאות: • לכל צומת ,viנגדיר את המשוואהxi + yi + zi = 1 : • לכל קשת ) ,(vi , vjנגדיר את המשוואותxi · xj = 0 : yi · yj = 0 zi · zj = 0 נכונות: • הרדוקציה חשיבה ופול'. • נניח כי הגרף 3 Gצביע .אזי כל צומת בגרף צבוע באדום ,כחול או צהוב, כך שאין זוג צמתים שכנים שצבועים באותו צבע. נגדיר השמה Vעבור מערכת המשוואות באופן הבא: עבור צומת ,viאם צבעו אדוםV (xi ) = 1, V (yi ) = 0, V (zi ) = 0 , אם צבעו כחולV (xi ) = 0, V (yi ) = 1, V (zi ) = 0 , אם צבעו צהובV (xi ) = 0, V (yi ) = 0, V (zi ) = 1 , נראה כי זו השמה מספקת: – לכל צומת ,viמתקיים :xi + yi + zi = 1כיוון שההשמה מגדירה בדיוק אחד מהמשתנים ל־ ,1ואת שני המשתנים הנותרים ל־.0 מס' ת.ז מס' מחברת – לכל קשת ) ,(vi , vjמתקיים xi · xj = 0 yi · yj = 0 zi · zj = 0 כיוון שאם למשל xi · xj 6= 0אזי .V (xi ) = V (xj ) = 1 אבל זה גורר ש־ viו־ vjנצבעו שניהם באדום. • תהי Vהצבה מעל } {0, 1שמספקת את כל המשוואות. נראה כי 3 Gצביע. כיוון ש־ Vמספקת את כל הנוסחאות מהצורה V ,xi + yi + zi = 1חייבת להגדיר בדיוק אחד מהמשתנים ל־ ,1ואת שני המשתנים הנותרים ל־.0 נגדיר צביעה לקודקודי Gבאופן הבא: אם , V (xi ) = 1נצבע את viבאדום. אם , V (yi ) = 1נצבע את viבכחול. אם , V (zi ) = 1נצבע את viבצהוב. נראה שזו צביעה חוקית .כלומר ,שלכל קשת ) (vi , vjצבעי הקודקודים vi , vj שונה. תהי קשת ) (vi , vjכלשהי .כיוון ש־ Vמספקת את כל הנוסחאות ,בפרט היא מספקת אתxi · xj = 0 : yi · yj = 0 zi · zj = 0 לכן ,לא ייתכן כי ) V (xi ) = V (xj ) = 1וכנ''ל לשני המשתנים הנותרים(. לכן לפי הגדרת הצביעה ,שני הקודקודים צבועים בצבעים שונים. 10) .5נקודות( הוכיחו /הפריכו :קיימת שפה רגולרית שהיא N Pשלמה ⇒⇐ .P = N P הוכחה: )=⇐( כל שפה רגולרית היא ב־ ) Pאפילו לינארית( .לכן ,נניח שקיימת שפה Lרגולרית שהיא N Pשלמה .תהי .L0 ∈ N Pאזי יש רדוקציה ל־ L0 ≤p Lולכן .L0 ∈ Pוקיבלנו N P ⊆ Pולכן . P = N P )⇒=( טענה :אם P = N Pאזי כל שפה לא טריוויאלית ב־ Pהיא N Pשלמה. הוכחה :תהי שפה .L 6= Σ∗ , ∅ ,L ∈ Pנראה כי Lהיא N Pשלמה. .L ∈ P = N Pנותר להראות כי Lהיא N Pקשה. ∈ x ∈ L, yותהי .L0 ∈ P = N Pאזי קיימת רדוקציה :L0 ≤p L יהיו / L עבור קלט ,wנבדוק האם w ∈ L0בזמן פול' .אם כן ,נחזיר ,xאחרת ,נחזיר .y ־ לכן ,למשל } {0היא שפה רגולרית N Pשלמה. מס' ת.ז מס' מחברת .6נגדיר מחלקת שפות: } DP = {L ⊆ Σ∗ | ∃L1 ∈ N P, L2 ∈ CoN P . L = L1 ∩ L2 ונגדיר את השפה: } Gגרף 4צביע ולא 3צביע | 4N ot3Col = {hGi )א( ) 5נקודות( הוכיחו כי 4N ot3Col ∈ DP ניקח G} ∈ N Pגרף 4צביע | L1 = {hGi ו־ G} ∈ CoN Pגרף לא 3צביע | L2 = {hGi )ב( ) 10נקודות( הוכיחו כי 4N ot3Colהיא N Pקשה נראה רדוקציה מ־ .3Col בהנתן גרף Gנבנה גרף G0באופן הבא: נוסיף קודקוד חדש vל־ Gונחבר אותו ליתר הקודקודים .כמו כן ,נוסיף קליק בגודל ) 4מנותק מיתר קודקודי הגרף(. נכונות: • הרדוקציה חשיבה ופול'. • נניח כי 3 Gצביע .אזי 4 Gצביע ,ע''י כך שנצבע את הקודקוד vבצבע חדש ,ואת הקליק ־ כל קודקוד בצבע אחר. כמו כן G0 ,אינו 3צביע ,כיוון שחייבים 4צבעים שונים על מנת לצבוע את קודקודי הקליק. • נניח כי 4 G0צביע ולא 3צביע. נשים לב כי vחייב להיות בצבע שונה מכל קודקודי ) Gכיוון שהוא מחובר לכולם( .לכן ,קודקודי Gצבועים באופן חוקי ע''י 3צבעים. 0 פתרון נוסף: נראה רדוקציה מ־ ) 4Colראינו בתרגיל בית כי 4Colהיא N Pשלמה(. בהנתן גרף Gנבנה גרף G0באופן הבא: נוסיף ל־ Gקליק בגודל ) 4מנותק מיתר קודקודי הגרף(. • נניח כי 4 Gצביע .אזי 4 G0צביע ,ע''י כך שנצבע את הקליק ־ כל קודקוד בצבע אחר .כמו כן G0 ,אינו 3צביע ,כיוון שחייבים 4צבעים שונים על מנת לצבוע את קודקודי הקליק. • נניח כי 4 G0צביע ולא 3צביע .בפרט נקבל כי 4 Gצביע. מס' מחברת מס' ת.ז )ג( ) 5נקודות( הוכיחו.N P = CoN P ⇐= DP = N P ∩ CoN P : נניח כי .DP = N P ∩ CoN Pאזי .4N ot3Col ∈ CoN P כמו כן 4N ot3Col ,היא N Pקשה )מסעיף ב'( .לכן ,תהי ,L ∈ N Pאזי .L ≤p 4N ot3Col כיוון שלפי הנחה ,4N ot3Col ∈ CoN Pנקבל ש־ .L ∈ CoN P כלומר קיבלנו .N P ⊆ CoN P וראינו בתרגול שזה גורר .N P = CoN P פתרון נוסף: נשים לב כי ,N P ⊆ DPלכן אם DP = N P ∩ CoN P נקבל N P ⊆ N P ∩ CoN P ⊆ CoN Pולכן .N P = CoN P
© Copyright 2024