130 likes | 325 Views
בנייה ופישוט דקדוקים. תרגיל מספר 9. הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353). בניית דקדוקים – דוגמא 1. בנו דקדוק לשפה: L = {( ab) n c 3n |n 0 }. פתרון: הדקדוק: G = <{ S }, { a,b,c }, P , S > S abSccc | . בניית דקדוקים – דוגמא 2.
E N D
בנייה ופישוט דקדוקים תרגיל מספר 9 הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353)
בניית דקדוקים – דוגמא 1 • בנו דקדוק לשפה: L = {(ab)nc3n|n 0} פתרון: • הדקדוק: G = <{S}, {a,b,c}, P, S> S abSccc |
בניית דקדוקים – דוגמא 2 • בנו דקדוק לשפה: L = {anbamban+m|n,m 0} פתרון: • הדקדוק: G = <{A,B}, {a,b}, P, A> A aAa | bB B aBa | b
שלבי הפישוט • זריקת משתנים מיותרים • ביטול חוקי- • זריקת משתנים מיותרים • ביטול חוקי יחידה • זריקת משתנים מיותרים • זריקת משתנים שאינםניתנים לגזירה טרמינלית • זריקה משתנים שאינם ניתנים להשגה ממשתנה התחלתי
E CaD E FDaJ F D F C H aBC H bH I aab E a S Aa A Ab A BC B ε B BBAa B I C ε A EaD דוגמא פשטו את הדקדוק הבא:
E CaD E FDaJ F D F C H aBC H bH I aab E a S Aa A Ab A BC B ε B BBAa B I C ε A EaD שלב 1: זריקת משתנים מיותרים • זריקת משתנים שאינם ניתנים לגזירה טרמינלית:
C ε F C H aBC H bH I aab E a S Aa A Ab A BC B ε B BBAa B I שלב 1: זריקת משתנים מיותרים • זריקת משתנים שאינם ניתנים להשגה מ- S: המשתנים הניתנים להשגה: S A B C I
שלב 2: ביטול חוקי- • ביטול חוקי-: | a • S Aa • A Ab • A BC • B ε • B BBAa • B I • C ε • I aab | b משתנים אפיסים: | B | C B C A | BAa | Aa | a | BBa | Ba
S Aa | a A Ab | b | BC | B | C B BBAa | BAa | Aa | a | BBa | Ba | I I aab שלב 3: זריקת משתנים מיותרים • זריקת משתנים שאינם ניתנים לגזירה טרמינלית:
S Aa | a A Ab | b | B B BBAa | BAa | Aa | a | BBa | Ba | I I aab שלב 3: זריקת משתנים מיותרים • זריקת משתנים שאינם ניתנים להשגה מ- S: אין כאלה
S Aa | a A Ab | b | B B BBAa | BAa | Aa | a | BBa | Ba | I I aab שלב 4: ביטול חוקי יחידה BBAa | BAa | Aa | a | BBa | Ba | I aab aab
S Aa | a A Ab | b | BBAa | BAa | Aa | a | BBa | Ba | aab B BBAa | BAa | Aa | a | BBa | Ba | aab I aab שלב 5: זריקת משתנים מיותרים • זריקת משתנים שאינם ניתנים לגזירה טרמינלית: אין כאלה
S Aa | a A Ab | b | BBAa | BAa | Aa | a | BBa | Ba | aab B BBAa | BAa | Aa | a | BBa | Ba | aab I aab שלב 5: זריקת משתנים מיותרים • זריקת משתנים שאינם ניתנים להשגה מ- S: וקיבלנו את הדקדוק המפושט!