( ) הקשר דקדוק חסר ה על פני רגולרי " יתרונות דקדוק ח

‫דקדוק חסר הקשר )‪(CFG‬‬
‫• הייצוג הקנוני‪ :‬חוקי במבנה ‪A Æ B C‬‬
‫‪AÆ a‬‬
‫• ייצוג חליפי‪ (α ∈ V*) A Æ α :‬שקול במוב החלש‪ ,‬באשר‪:‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫כבר בצורה הקנונית‬
‫‪AÆ b‬‬
‫‪ AÆ b c‬שקול חלש ל‪AÆ B C BÆ b CÆ c :‬‬
‫‪ AÆ b C‬שקול חלש ל‪AÆ B C BÆ b :‬‬
‫‪ AÆ B C‬כבר בצורה הקנונית‬
‫‪ AÆ B C D‬שקול חלש ל‪A Æ B E E Æ C D :‬‬
‫‪ A Æ b C D‬שקול חלש ל‪AÆ B E EÆ C D BÆ b :‬‬
‫חוק מיותר במוב החלש )יש לבצע המרות(‬
‫‪AÆB‬‬
‫*‪ AÆ B C‬שקול חלש ל‪AÆ B C AÆ A C :‬‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.1‬‬
‫יתרונות דקדוק ח"ה על פני רגולרי‬
‫• נות כיסוי רחב יותר; בפרט‪ ,‬מבני קינו פנימי }‪{anbn‬‬
‫)‪S Æ a S b , S Æ a b (or S Æ ε‬‬
‫• מאפשר לפרק משפט באופ רקורסיבי לרכיבי בעלי‬
‫משמעות לשונית טבעית‪ ,‬בכל רמות הפירוק‬
‫‪S Æ NP VP‬‬
‫‪NP Æ NP PP‬‬
‫‪VP Æ v NP‬‬
‫רכיבי מאותו סוג ניתני להחלפה‪ ,‬ללא הגבלה תחבירית‬
‫אי תלות בהקשר )יתרו ? חסרו ?(‬
‫• תומ ברב משמעות מבנית‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.2‬‬
‫‪1‬‬
‫דקדוק ח"ה לדוגמה‬
‫‪S‬‬
‫‪VP‬‬
‫‪PP‬‬
‫‪NP‬‬
‫‪NP‬‬
‫‪VP‬‬
‫‪v p‬‬
‫על ישב‬
‫‪n‬‬
‫ספסל‬
‫‪PP‬‬
‫‪NP‬‬
‫‪n‬‬
‫אד‬
‫‪p‬‬
‫ע‬
‫‪NP VP‬‬
‫‪n‬‬
‫‪n PP‬‬
‫‪p NP‬‬
‫‪v‬‬
‫‪v NP‬‬
‫‪VP PP‬‬
‫‪S Æ‬‬
‫‪NP Æ‬‬
‫‪NP Æ‬‬
‫‪PP Æ‬‬
‫‪VP Æ‬‬
‫‪VP Æ‬‬
‫‪VP Æ‬‬
‫‪n‬‬
‫כובע‬
‫ע גזירה‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.3‬‬
‫אוטומט מחסנית‪ :‬תזכורת‬
‫אוטומט מצבי סופי ע מחסנית‪ ,‬לא בהכרח דטרמיניסטי‬
‫)‪ , (PDA‬הוא מערכת }∆ ‪ , M = {T, Q, q0, F, P,‬באשר‪:‬‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫•‬
‫‪ T‬הוא אוס סמלי הקצה )האלפבית(‬
‫‪ Q‬היא קבוצה סופית של מצבי‬
‫‪ q0 ∈ Q‬הוא מצב ההתחלה‬
‫‪ F ⊆ Q‬היא קבוצת מצבי הסיו‬
‫‪ P‬היא קבוצת הסימני המותרי במחסנית‬
‫∆ היא פונקצית מעבר בי מצבי ‪ ,‬תלויה ג במחסנית‬
‫… ‪∆ (qi, t, pi) = (qj , pj) … or‬‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.4‬‬
‫‪2‬‬
‫פעולות במחסנית‬
‫בכל מעבר מצב‪ ,‬נית לבצע‪:‬‬
‫• דחיפת סימ לראש המחסנית )‪(push‬‬
‫• שליפת הסימ מראש המחסנית )‪(pop‬‬
‫קיו הסימ הרצוי בראש המחסנית הוא תנאי למעבר המצב‬
‫• השארת המחסנית ללא שינוי‬
‫המחסנית ריקה בהתחלה ובסיו‬
‫‪pop x‬‬
‫‪b‬‬
‫אוטומט לשפה }‪L = {an bn‬‬
‫‪q1‬‬
‫‪push x‬‬
‫‪a‬‬
‫‪b‬‬
‫‪pop x‬‬
‫‪q0‬‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.5‬‬
‫}‪ {ω c ωR‬היא שפה ח"ה‬
‫‪S‬‬
‫אוטומט‬
‫‪pop a‬‬
‫‪a‬‬
‫‪q1‬‬
‫‪a‬‬
‫‪push a‬‬
‫‪a‬‬
‫‪a‬‬
‫‪c‬‬
‫‪q0‬‬
‫‪b‬‬
‫‪pop b‬‬
‫‪S‬‬
‫‪SÆ a S a‬‬
‫‪SÆ b S b‬‬
‫‪SÆ c‬‬
‫‪a‬‬
‫‪b‬‬
‫‪S‬‬
‫‪S‬‬
‫‪a‬‬
‫דקדוק‬
‫‪b‬‬
‫‪b‬‬
‫‪push b‬‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪c‬‬
‫‪3.6‬‬
‫‪3‬‬
‫טענות לגבי ‪PDA‬‬
‫• לא לכל אוטומט מחסנית לא דטרמיניסטי קיי אוטומט‬
‫מחסנית דטרמיניסטי שקול‬
‫פורמליז המסתפק באוטומט מחסנית דטרמיניסטי חלש יותר‬
‫מ ‪ PDA‬כללי‬
‫• כל שפה המוגדרת ע"י דקדוק חסר הקשר מתקבלת ע"י‬
‫אוטומט ‪ ;PDA‬ולהיפ ‪ :‬כל אוטומט ‪ PDA‬מגדיר שפה‬
‫חסרת הקשר‪ ,‬כלומר ניתנת להגדרה ע"י דקדוק ח"ה‬
‫• אוטומט ‪ PDA‬שקול ג לרשת מעבר רקורסיבית )‪(RTN‬‬
‫אשר נגדיר להל‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.7‬‬
‫רשת מעבר רקורסיבית‬
‫• הכללה של אוטומט מצבי סופי‬
‫• רשתות מעבר במקביל לחוקי דקדוק‪ ,‬מפעילות זו את זו‬
‫‪S2‬‬
‫‪VP‬‬
‫‪PP‬‬
‫‪P2‬‬
‫‪PP‬‬
‫‪V2‬‬
‫‪NP‬‬
‫‪NP‬‬
‫‪S1‬‬
‫‪NP‬‬
‫‪S0‬‬
‫‪S Æ NP VP‬‬
‫‪N1‬‬
‫‪n‬‬
‫‪N0‬‬
‫*)‪NP Æ n (PP‬‬
‫‪P0‬‬
‫‪PP Æ p NP‬‬
‫‪V0‬‬
‫*)‪VP Æ v NP (PP‬‬
‫‪P1‬‬
‫‪V1‬‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪p‬‬
‫‪v‬‬
‫‪3.8‬‬
‫‪4‬‬
‫תכונות חישוביות‬
‫• סיבוכיות‬
‫נית להכריע בשאלת השייכות של ביטוי לשפה חסרת הקשר‬
‫בזמ פולינומיאלי ביחס לאור הביטוי‬
‫אור ביטוי = ‪ Å n‬מספר צעדי החישוב = )‪O(n3‬‬
‫• סגירות‬
‫– מתקיימת סגירות תחת איחוד‪ ,‬שרשור ופעולת ‪Kleene‬‬
‫– לא מתקיימת סגירות תחת חיתו והשלמה ביחס ל *‪T‬‬
‫• חיתו ע שפה רגולרית‬
‫חיתו של שפה חסרת הקשר ע שפה רגולרית היא שפה‬
‫חסרת הקשר‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫תכונות חישוביות‬
‫‪3.9‬‬
‫)המש (‬
‫• תכונת ניפוח לשפות ח"ה )בר הלל‪ ,‬פרלס‪ ,‬שמיר ‪(1961‬‬
‫תהי ‪ L‬שפה חסרת הקשר‪ .‬קיימי ביטויי ‪ u, v, x, y, z‬כ ש‪:‬‬
‫– ‪ v‬ו‪/‬או ‪ y‬אינ ריקי‬
‫– לכל ‪u vn x yn z ∈ L : n≥0‬‬
‫כלומר …‪ uxz , uvxyz , uvvxyyz ,‬שייכי לשפה‬
‫נוסח אחר‪ :‬קיי קבוע ‪ KL‬כ שכל ביטוי בשפה שאורכו מעל ‪KL‬‬
‫נית לפירוק באופ הנ"ל‪ ,‬כלומר נית לניפוח דו מקומי‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.10‬‬
‫‪5‬‬
‫שימוש בתכונת הניפוח לבדיקת שפה‬
‫• נתו ‪ .T = {a, b} :‬השפה ‪ L = {anbncn}n>0‬אינה ח"ה‬
‫הוכחה בדר השלילה בעזרת תכונת הניפוח‬
‫• נתו ‪ .T = {a, b} :‬השפה }‪ L = {anbmcndm‬אינה ח"ה‬
‫הוכחה בעזרת גירסה חזקה יותר של תכונת הניפוח‪,‬‬
‫הדורשת ג ש ‪ v‬ו ‪ y‬קרובי יחסית‪|vxy|≤ KL :‬‬
‫• תהי ‪ L‬שפה חסרת הקשר‪ .‬השפות הבאות אינ ח"ה‪:‬‬
‫}‪L’ = {ωω | ω ∈ L‬‬
‫}‪L’’ = {ωcω | ω ∈ L‬‬
‫הוכחה בעזרת הגירסה החזקה של תכונת הניפוח‬
‫מבוא לבלשנות חישובית ‪  2005 6‬מורי רימו‬
‫‪3.11‬‬
‫‪6‬‬