4 עבודה – 2017 וחישוביות פורמליות שפות אוטומטים ה"ח לשפות הניפוח ולמת

‫אוטומטים שפות פורמליות וחישוביות ‪ – 2017‬עבודה ‪4‬‬
‫עבודה ‪ - 4‬שפות ח"ה הקשר אוטומטי מחסנית ולמת הניפוח לשפות ח"ה‬
‫תאריך הגשה‪1.1.2017 :‬‬
‫יש להגיש את העבודה לתיבת הדואר של הקורס )תא מספר ‪ 93‬או ‪ 94‬בקומת קרקע‪-‬‬
‫בניין ‪ (37‬ובנוסף גם למערכת ההגשה‪.‬‬
‫מתרגל אחראי‪ :‬אורן רוט‬
‫הערות‪:‬‬
‫• כל מונח שאתם משתמשים בו חייב להיות מוגדר היטב‪ .‬אם הוא לא הוגדר בקורס‬
‫זה או בקורס אחר עליכם להגדיר אותו בעבודה‪.‬‬
‫• במידה ואתם רוצים להסתמך על משפט שהוכח בהרצאה יש לצטט אותו במדויק‪,‬‬
‫רק אז ניתן להשתמש בו בהוכחות‪.‬‬
‫‪1‬‬
‫אוטומטים שפות פורמליות וחישוביות ‪ – 2017‬עבודה ‪4‬‬
‫שאלה ‪1‬‬
‫נתונה‪:‬‬
‫}‪L1 = {w ∈ {a, b}∗ : |w|a ≥ 1, |w|a = 0 mod 2‬‬
‫בנו דקדוק חסר הקשר כך ש‪ .L(G) = L -‬ספקו הוכחה פורמלית מלאה‪.‬‬
‫שאלה ‪2‬‬
‫}|‪L2 = {avbw : v, w ∈ {a, b}∗ , |v| = |w‬‬
‫הוכיחו כי ‪ L2‬ח"ה על ידי בניית אוטומט מחסנית המקבל את השפה‪ .‬יש לספק הוכחה‬
‫פורמלית‪.‬‬
‫שאלה ‪3‬‬
‫עבור כל אחת מן השפות הבאות קבעו האם היא חסרת הקשר בצורה הבאה‪:‬‬
‫אם השפה ח"ה הראו למשל דקדוק ח"ה או אוטומט מחסנית והסבירו נכונות )יש לספק‬
‫הסבר מילולי מתומצת שלא יעלה על ‪ 10‬שורות(‪ .‬אחרת‪ ,‬הראו כי השפה לא ח"ה באמצעות‬
‫למת הניפוח‪.‬‬
‫‪L = {wwR w : w ∈ {a, b, c}∗ } .1‬‬
‫‪L = {ai bj ck : i < j or j > k} .2‬‬
‫‪L = {ai bj ck : i < j and j > k} .3‬‬
‫‪ .4‬עבור ‪ k‬טבעי קבוע השפה‪:‬‬
‫} ∗}‪Lk = {w · w[1..k] · wR : w ∈ {a, b‬‬
‫כאשר ]‪ w[1..k‬הם ‪ k‬התווים הראשונים ב‪.w‬‬
‫שימו לב‪ :‬המילה הקצרה ביותר ב ‪ Lk‬היא באורך ‪3 · k‬‬
‫את קביעתכם הראו לכל קבוע ‪.k‬‬
‫שאלה ‪4‬‬
‫נגדיר מודל חדש "אוטומט מחסנית‪-‬סופר" )‪ (counting‬באופן הבא‪:‬‬
‫זהו אוטומט מחסנית כמו שהגודר בכיתה פרט לכך שפונקציית המעברים שלו יכולה לפעול‬
‫גם בהתחשבות בכמות התווים שקיימים במחסנית בזמן נתון‪.‬‬
‫פורמלית‪:‬‬
‫אוטומט מחסנית‪-‬סופר הינו שיישיה > ‪ < Q, Σ, Γ, ∆, s, A‬כאשר‪:‬‬
‫))}‪∆ : Q × (Σ ∪ {ϵ}) × (Γ ∪ {ϵ}) × N → P (Q × (Γ ∪ {ϵ‬‬
‫כאשר המשמעות של )‪ (q, β) ∈ ∆(r, σ, α, n‬היא שכשאשר נמצאים במצב ‪ ,r‬קוראים את‬
‫התו הקלט ‪ ,σ‬בראש המחסנית יש ‪ α‬ומספר התווים במחסנית הוא ‪ ,n‬אזי אפשר להוציא‬
‫‪2‬‬
‫אוטומטים שפות פורמליות וחישוביות ‪ – 2017‬עבודה ‪4‬‬
‫את התו ‪ α‬מהמחסנית‪ ,‬לכתוב במקומו ‪ β‬ולעבור למצב ‪.q‬‬
‫שאר החלקים מוגדרים בזהה לאוטומט מחסנית רגיל‪.‬‬
‫האם מודל זה שקול לאוטומט מחסנית רגיל )כפי שנלמד בכיתה(? כלומר‪ ,‬האם משפחת‬
‫השפות שמתקבלות ע"י אוטומט מחסנית‪-‬סופר זהה למשפחת השפות המתקבלות ע"י‬
‫אוטומט מחסנית רגיל?‬
‫הוכיחו קביעתכם‪.‬‬
‫הדרכה‪ :‬אם אתם בוחרים להוכיח שקילות‪ ,‬הראו הכלה דו כיוונית בדומה‪ ,‬למשל‪ ,‬לשקילות‬
‫בין אוטומט סופי דטרמיניסטי לאי דטרמיניסטי‪ .‬במידה ואתם מפריכים‪ ,‬מספיק להראות‬
‫דוגמא נגדית‪ :‬בחרו שפה שהוכחנו שאינה ח"ה‪ ,‬בנו עבורה אוטומט‪-‬מחסנית‪-‬סופר והסבירו‪,‬‬
‫ב‪ 15-‬שורות לכל היותר‪ ,‬את נכונות הבניה‪.‬‬
‫שאלה ‪5‬‬
‫הוכיחו את המשפט הבא‪:‬‬
‫תהי ‪ L‬שפה חסרת‪-‬הקשר‪ .‬אזי קיים קבוע ‪ k‬כך שלכל ‪ , w ∈ L, |w| ≥ k‬קיימת חלוקה‬
‫למילים ‪w = x1 x2 x3 x4 x5 x6 x7 x8 x9‬‬
‫עבורה מתקיים‪:‬‬
‫• ‪x2 x8 ̸= ϵ‬‬
‫• ‪x3 x7 ̸= ϵ‬‬
‫• ‪x4 x6 ̸= ϵ‬‬
‫• לכל ‪ i, j, l‬טבעיים מתקיים‪:‬‬
‫‪x1 x2 i x3 j x4 l x5 x6 l x7 j x8 i x9 ∈ L‬‬
‫הדרכה‪ :‬היעזרו בהוכחת למת הניפוח לשפות חסרות הקשר‪ .‬מה בין הקבוע המובטח‬
‫מהלמה לבין הקבוע הנדרש במשפט זה?‬
‫‪3‬‬