Presentation is loading. Please wait.

Presentation is loading. Please wait.

אוטומט מחסנית הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( 236353) תרגיל מספר 11.

Similar presentations


Presentation on theme: "אוטומט מחסנית הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( 236353) תרגיל מספר 11."— Presentation transcript:

1 אוטומט מחסנית הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( 236353) תרגיל מספר 11

2 © אריאל 2 אוטומט המחסנית אוטומט מחסנית הוא שביעייה : M = (Q, , , , q 0, z 0, F). Q - קבוצת מצבים  - א " ב הקלט  - א " ב המחסנית  - פונקצית מעברים q 0 - מצב התחלתי z 0 - האות ההתחלתית במחסנית F - קבוצת המצבים המקבלים פונקצית המעברים : : (Q    Q    כלומר:   ,  i ......  p 1,  1 ),(p 2,  2 ),  (q,a,A) =

3 © אריאל 3 חישוב של אוטומט מחסנית הגדרה תיאור רגעי (Snapshot) של אוטומט הינו שלישיה : (q,w,  ) כך ש - q המצב הנוכחי, w הוא חלק הקלט שטרם נקרא, ו -  המילה במחסנית (ראש המחסנית משמאל). צעד חישוב אחד של האוטומט מסומן: (q,  w,A  )  (p,  w,  )  (p,  )   (q, ,A) חישוב של אוטומט הינו סדרה סופית של צעדים, מסומן : (q,  w,  )  * (p,  u,  )

4 © אריאל 4 קבלת מילה ע " י אוטומט מחסנית קיימות שתי הגדרות עבור קבלת מילה ע " י אוטומט מחסנית : סיום קריאת המילה במצב מקבל, כלומר קיים חישוב : (q 0,  w, z  )  * (p, ,  ), כך ש - p  F סיום קריאת המילה וריקון המחסנית, כלומר קיים חישוב : (q 0,  w, z  )  * (p, ,  ) אופני הקבלה אינם משנים את כוחו החישובי של האוטומט ! האוטומט נתקע באחד משני מקרים : בצעד החישוב הנוכחי מתקיים :  (q, ,  ) = . המחסנית התרוקנה לפני סיום קריאת המילה.

5 © אריאל 5 כמה עובדות על אוטומט המחסנית לכל דקדוק חסר הקשר יש אוטומט מחסנית מתאים, ולהפך ( המודלים שקולים בכוחם ). אוטומט המחסנית אינו דטרמיניסטי, וכפיית דטרמיניזם משנה את כוחו של המודל. ניתן להציג את פונקצית המעברים של אוטומט המחסנית ע " י דיאגרמה דומה לאוטומט סופי כך : אם  (q, ,X) = (p,  ), אז נסמן :  X /  q p

6 © אריאל 6 דוגמא 1 בנה אוטומט מחסנית M המקבל את השפה : L = {ww R |w   * } מעל  = {0,1}, ע " י ריקון המחסנית, והוכח כי L e (M) = L בנייה הרעיון – בניית עותק של w במחסנית, החלטה לא דטרמיניסטית על סיום w ( מציאת אמצע המילה ), והשוואת המילה הנותרת למילה במחסנית

7 © אריאל 7 אוטומט ל ww R – בנייה פורמלית  M = ({q 0,q 1 }, ,  {z 0 }, , q 0, z 0,  )    (q 0, , z 0 ) = {(q 0,  )}   (q 0, , z 0 ) = {(q 0,  )}   (q 0,  1,  2 ) = {(q 0,  1  2 )}   (q 0, ,  ) = {(q 1,  )}   (q 1, ,  ) = {(q 1,  )}  /  q0q0 q1q1  z 0 /   z 0 /      /      / 

8 © אריאל 8 דוגמת הרצה של האוטומט נדגים הרצה על abba, נראה מספר חישובים אפשריים : (q 0, abba, z 0 ) (q 1,abba,  ) (1) (q 0, bba, a) (q 0, ba, ba) (q 1, ba, ba) (q 1, a, a) (q 1,  ) (2) (3) (q 0, a, bba) (q 0, ε, abba) (3) (4) (3) (5)

9 © אריאל 9 הוכחה - L e (M)  L עלינו להוכיח כי האוטומט מקבל מילים רק בשפה. כלומר : (q 0,  w, z  )  * (q i, ,  )  w  L נוכיח שתי טענות עזר : 1. (q 0,  xy, z  )  + (q 0,  y,  )   = x R 2. (q 0,  xy, z  )  + (q 1,  y,  )   = u R, x = uz, z  L ואז נקבל : אם : (q 0,  w, z  )  (q 0, ,  ), אז לפי 1 : w =  R   L ואם : (q 0,  w, z  )  + (q 1, ,  ), אז לפי 2 : w =  R z  = z, ולפי אותה טענה z  L כלומר w  L

10 © אריאל 10 הוכחה - L e (M)  L עלינו להוכיח כי האוטומט מקבל את כל המילים בשפה. כלומר : (q 0,  w, z  )  * (q i, ,  )  w  L נוכיח שתי טענות עזר : 1. (q 0,  x, z  )  * (q 0, , x R )  x  * 2. (q 1,  x, x)  * (q 1, ,  )  x  * ואז נקבל : אם : w =   L, אז לפי 1: (q 0,  w, z  )  * (q 0, ,  ) אם : w = xx R  L, אז לפי 1: (q 0,  w, z  )  * (q 0,  x R, x R ) ולפי כלל 4: (q 0,  x R, x R )  (q 1,  x R, x R ), ולפי 2: (q 1,  x R, x R )  * (q 1, ,  )

11 © אריאל 11 דוגמא 2 בנה אוטומט מחסנית המקבל ע " י הגעה למצב מקבל את השפה מעל {0,1}, בה כל רישא u של מילה w בשפה מקיימת # 0 (u)  # 1 (u). תשובה : M = {{q 0 },  q 0, z 0,{q 0 }}  q 0,0,z 0 ) = (q 0, 0z 0 )  q 0,0,0) = (q 0, 00)  q 0,1,0) = (q 0,  )


Download ppt "אוטומט מחסנית הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( 236353) תרגיל מספר 11."

Similar presentations


Ads by Google