14
בית- הספר הגבוה לטכנולוגיה בירושלים2 150101 אוטומטים ושפות פורמליות ב" ה תרגיל מס' 1 אוטומט סופי דטרמיניסטי לכל אחת מהשפות הבאות, בנו אוטומט סופי דטרמיניסטי שמזהה את השפה. בנו אוטומטים עם מספר מצבים מצומצם ככל האפשר. תארו כל אוטומט על ידי תרשים. בנוסף, כאשר מצוין" הראו חישוב" , הראו חישוב של האוטומט על מילה אחת השייכת לשפ ה ועל מילה אחרת, שאינה שייכת לה. את החישוב יש להציג בצורה: m) i Q, q Σ, (σ q σ σ q σ q i i m m 1 2 1 1 0 1 . שפת כל המילים מעל{ a, b, c } בעלות מספר אי זוגי של אותיות. 2 . שפת כל המילים מעל{ a, b, c } שמתחילות ברצףabc . 3 . שפת כל המילים מעל{ a, b, c } שמסתיימות ברצףabc . הראו חישו ב. 4 . שפת כל המילים מעל{ a, b, c } שאינן מתחילות ברצףaaa . תארו אוטומט זה גם על ידי טבלת מעברים. 5 . שפת כל המילים מעל{ a, b, c } שמכילות את הרצףab או את הרצףba . 6 . השפה{ abba } ( שמכילה מילה אחת בלבד) מעל האלפבית{ a, b, c } . 7 . שפת כל המילים מעל{ a, b, c } שהמחרוזתabc איננה תת- מילה שלהן. הראו חישוב. 8 . שפת כל המילים מעל{ a, b, c } שבכל מקום זוגי שלהן מופיעותb אוc . תארו אוטומט זה גם על ידי טבלת מעברים. 9 . שפת כל המילים מעל{ a, b, c } שיש בהן מספר זוגי של מופעיb . 11 . השפה{ abaa, abbaa } ( שמכילה שתי מילים בלבד) מעל האלפבית{ a, b } .

automatim.pdf

Embed Size (px)

DESCRIPTION

automata questions

Citation preview

Page 1: automatim.pdf

הספר הגבוה לטכנולוגיה בירושלים-בית2

אוטומטים ושפות פורמליות 150101

ה"ב

אוטומט סופי דטרמיניסטי – 1' תרגיל מס

בנו . בנו אוטומט סופי דטרמיניסטי שמזהה את השפה, לכל אחת מהשפות הבאות

תארו כל אוטומט על ידי . אוטומטים עם מספר מצבים מצומצם ככל האפשר

.תרשים

הראו חישוב של האוטומט על מילה אחת , "הראו חישוב"כאשר מצוין , בנוסף

:את החישוב יש להציג בצורה. שאינה שייכת לה, ה ועל מילה אחרתהשייכת לשפ

m)iQ,qΣ,(σqσσqσq iimm 1 2110

.של אותיותאי זוגי בעלות מספר{ a, b, c}שפת כל המילים מעל .1

.abcברצף שמתחילות{ a, b, c}שפת כל המילים מעל .2

.בהראו חישו. abcברצף שמסתיימות{ a, b, c}שפת כל המילים מעל .3

תארו . aaaברצף שאינן מתחילות{ a, b, c}שפת כל המילים מעל .4

.אוטומט זה גם על ידי טבלת מעברים

או את הרצף abאת הרצף שמכילות{ a, b, c}שפת כל המילים מעל .5

ba.

.{a, b, c}מעל האלפבית ( שמכילה מילה אחת בלבד){ abba}השפה .6

מילה -תת איננה abc שהמחרוזת{ a, b, c}שפת כל המילים מעל .7

.הראו חישוב. שלהן

או bשבכל מקום זוגי שלהן מופיעות { a, b, c}שפת כל המילים מעל .8

c .תארו אוטומט זה גם על ידי טבלת מעברים.

.bשיש בהן מספר זוגי של מופעי { a, b, c}שפת כל המילים מעל .9

,a}מעל האלפבית ( שמכילה שתי מילים בלבד){ abaa, abbaa}השפה .11

b}.

Page 2: automatim.pdf

הספר הגבוה לטכנולוגיה בירושלים-בית2

אוטומטים ושפות פורמליות 150101

ה"ב

שפות רגולריות – 2' תרגיל מס

הוכחות

(:אין צורך בהוכחה פורמלית)הצדיקו או הפריכו את הטענות הבאות

. F = Qכי , כמו כן נתון. A = (, Q, q0, , F)נתון האוטומט דטרמיניסטי .1

מכילה את כל המילים מעל Aשפת האוטומט : במילים) L(A) = *: טענה

(.ב "הא

.רגולריתאיננה Lאזי , ה אינסופית כלשהישפ Lתהי .2

.מספר החישובים האפשריים הינו סופי, בכל אוטומט סופי דטרמיניסטי .3

q0ממצב ללא מעגליםמספר המסלולים , בכל אוטומט סופי דטרמיניסטי .4

.למצב כלשהו באוטומט הינו סופי

שפות רגולריות

.שאורכן זוגי{ a,b}שפת המילים מעל L1תהי .1

.bbb-המסתימות ב{ a,b}שפת המילים מעל L2תהי

בנו אוטומטים סופיים דטרמיניסטים המזהים אתL1 ואתL2.

לזיהוי השפה ' מהאוטומטים שבניתם בסעיף א אוטומט מכפלהבנו

. bbb-מסתימות ב ואינןכל המילים שאורכן זוגי : הבאה

שווה abהמילים -ישבהן מספר תת{ a,b}שפת המילים מעל Lתהי .2

.baהמילים -למספר תתי

L: , a, b, abba, aba, abaaba-דוגמאות למילים השייכות ל

L: ab, ba, baaaba-דוגמאות למילים שאינן שייכות ל

:הוכיחו או סתרו את הטענה הבאה

האוטומט צריך , מכיוון שלצורך בדיקת תקינות המילים, אינה רגולרית L: טענה

.סומהלבצע ספירה לא ח

Page 3: automatim.pdf

אוטומטים ושפות פורמליות 150101 2 הספר הגבוה לטכנולוגיה בירושלים-בית

ה"ב

תכונות סגירות של השפות הרגולריות – 3' תרגיל מס

בהכרח , רגולריתבהכרח קבעו האם היא , לגבי כל אחת מהשפות הבאות .1

.נמקו את קביעותיכם 1.או יתכן שהיא רגולרית ויתכן שלא, רגולרית לא

1. L = L1 L2 … Ln ,כאשר נתון ש- L1, L2,…, Ln הן שפות רגולריות.

.ופית של שפות רגולריותחיתוך קבוצה אינס .2

.רגולרית L – Rונתון שהשפה , Rכאשר נתונה שפה רגולרית , Lהשפה .3

.רגולרית L – Fונתון שהשפה , Fכאשר נתונה שפה סופית , Lהשפה .4

.שפות רגולריות מעל האלפבית L2-ו L1תהיינה .2

:רגולרית Lהוכיחו שהשפה הבאה

L = {a1b1a2b2...anbn | a1,...,an , b1,...,bn , a1a2...an L1 , b1b2...bn L2}

-כאשר האותיות במקומות האי, היא בעלת אורך זוגי Lכל מילה של : במילים)

(.L2-והאותיות במקומות הזוגיים מהוות מילה ב, L1-זוגיים מהוות מילה ב

לכל זוג מצבים של האוטומטים , כלומר) כפולבנו אוטומט מכפלה : הדרכה

(.מצבים באוטומט החדש שנימקוריים יהיו ה

. הראו שגם השפות הבאות רגולריות. שפה רגולרית כלשהי מעל Lתהי .3

אין צורך . תארו את הבניה, אם ההוכחה היא בעזרת בניה. תארו את הרעיון)

.(להוכיח שהבניה נכונה

1. L' = {a2|w|

| wL}

2. Pref(L) = { w* | u* wuL}

3. Sub(L) = { w* | x,z*, yL w=xyz }

.ישנם מקרים שכן וישנם מקרים שלא" = ייתכן"; בכל המקרים" = בהכרח" 1

Page 4: automatim.pdf

ושליםהספר הגבוה לטכנולוגיה ביר-בית2

אוטומטים ושפות פורמליות 150101

ה"ב

דטרמיניסטי-אוטומט סופי לא – 4' תרגיל מס

עם , ועם מצב התחלתי יחיד ללא מעברי , בנו אוטומטים לא דטרמיניסטיים .1

:לזיהוי כל אחת מהשפות הבאות, מספר מצבים מצומצם ככל האפשר

. {}השפה .1

. abb-שמסתיימות ב{ a,b}שפת המילים מעל .2

.ים-bזוגי של -או שיש בהן מספר אי aaהמכילות { a,b}שפת המילים מעל .3

על פי , דטרמיניסטילאוטומט סופי . ג.1תרגמו את האוטומט שבניתם בשאלה .2

.האלגוריתם שלמדנו בכיתה

עם מצב התחלתי יחיד וללא Aהראו שלכל אוטומט סופי לא דטרמיניסטי . א .3

ללא, עם מצב התחלתי יחיד Bקיים אוטומט סופי לא דטרמיניסטי , מעברי

:כך ש, מצב מקבל יחיד ועם מעברי

4. L(B) = L(A) או L(B) = L(A) – {}

Lהוכיחו שלכל שפה רגולרית ', בהתבסס על נכונות הבנייה שבניתם לסעיף א. ב

יש אוטומט סופי לא דטרמיניסטי עם מצב , שאיננה מכילה את המילה הריקה

.Lהמזהה את , מצב מקבל יחיד ועם ללא מעברי , התחלתי יחיד

Lהראו שגם . שפה רגולרית כלשהי Lתהי .5R ,שפת כל המילים המתקבלות , דהיינו

. היא רגולרית, ידי היפוך סדר הסימנים-על Lמהמילים של

.ידי היפוך סדר הסימנים-על cba-מתקבלת מ abc: דוגמה

Lהמזהה את , יוצרים אוטומט לא דטרמיניסטי: הדרכהR , מן האוטומט

.Lהמזהה את ,הדטרמיניסטי

.הוכיחו פורמלית את נכונות הבנייה(: נקודות 10)בונוס

, כל מצב מקבל למצב לא מקבל A-נניח שנהפוך ב, Aבהינתן אוטומט סופי כלשהו .6

? L(A) -האם נקבל בהכרח אוטומט המזהה את השפה המשלימה ל. ולהפך

.הוכיחו את תשובתכם

Page 5: automatim.pdf

הספר הגבוה לטכנולוגיה בירושלים-בית2

ים ושפות פורמליותאוטומט 150101

ה"ב

ביטויים רגולריים - 5' תרגיל מס

המתאימים לכל אחת מהשפות פשוטים ככל האפשרכתבו ביטויים רגולריים .1

. מדוע מתאים הביטוי לשפה, במידת הצורך, הסבירו. הבאות

.2שארכן מתחלק ב {a,b} שפת המילים מעל .1

.אותיות 3בנות לפחות {a,b}שפת המילים מעל .2

ים או במספר זוגי -bמסתיימות במספר זוגי של ש {a,b} שפת המילים מעל .3

.ים-aשל

ואין בהן שני מופעים aשמתחילות ומסתיימות ב {a,b}שפת המילים מעל .4

: דוגמאות שליליות. aababa, aaaa: דוגמאות חיוביות. bרצופים של האות

aabba, abaab.

.כתת מילה bbbabמכילות את שאינן {a,b}שפת המילים מעל .5

המזהה את השפה , כדאי לבנות אוטומט סופי דטרמיניסטי :הדרכה

.ומתוכו להסיק את הביטוי הרגולרי המבוקש, הנתונה

. בנו אוטומט סופי שיזהה את השפות המתאימות לביטויים הרגולרים הבאים .2

1. (baa)*(aa+bb)*

2. ab+b*(a+)a

Page 6: automatim.pdf

אוטומטים ושפות פורמליות 150101 2 הספר הגבוה לטכנולוגיה בירושלים-תבי

ה"ב

למת הניפוח לשפות רגולריות – 6' תרגיל מס

אם קבעתם . קבעו האם היא רגולרית או לא, ביחס לכל אחת מן השפות הבאות .1

אם קבעתם שהיא . הציגו ביטוי רגולרי פשוט ככל שתוכלו לשפה, שהיא רגולרית

.בעזרת למת הניפוחהוכיחו זאת , איננה רגולרית

◦ {a2m

(ba)m | m 0}

◦ {an | n=k

2 כלומר אורך המילה הוא ריבוע שלם { kN עבור

.שייכת aaaa, לא שייכת aaa, לא שייכת aa, שייכת לשפה a: דוגמה

◦ {xwxR | x {0, 1}

+, w {0,1}

*}

חישבו . ){a, b}שפת הביטויים הרגולריים החוקיים מעל האלפבית ◦

(.תחילה מהו האלפבית של שפת הביטויים הרגולריים האלה

{a, b}פת המילים שמתחילות ומסתיימות באותה האות מעל האלפבית הראו שש .2

כך שלכל מילה בשפה שאורכה לפחות ( ?מהו) nהראו שיש מספר טבעי , כלומר)מקיימת את למת הניפוח

n יש פירוק.)...

.קבוע כלשהו n 1עבור , Ln = {uu | u{a,b}*, |u| =n} :נגדיר את השפה .3

: רגולריתאינה Lnלכך שהשפה " הוכחה"הנה

w = aתהי n-1

ban-1

b Ln . אורך המילה מקיים. |w| = 2n > n ניפוחלכן למת ה

, w = xyz, |xy| ≤ n: כך wלפי הלמה ניתן לפרק את . צריכה להתקיים עבורה

|y| 1 כך שלכל k>=0 יתקיים xykz Ln .ל אך לכל בחירה ש y , יתקיים

xy, להיפך2z Ln !מסקנה :Ln אינה רגולרית .

.הראו היכן השגיאה בהוכחה. א

.רגולרית Lnהוכיחו שהשפה . ב

. מקיימת את למת הניפוח Lnהראו כיצד . ג

(: נקודות 30בונוס ) .4

:הראו שגם השפה הבאה רגולרית. שפה רגולרית כלשהי מעל Lתהי

Cycle(L) = { xy* | yxL }

Page 7: automatim.pdf

הספר הגבוה לטכנולוגיה בירושלי��בית2

אוטומטי� ושפות פורמליות 150101 ב"עתש

ה"ב

וצמצו� אוטומטי� Nerodeמשפט – 7' תרגיל מס

.11*(0+1) + *11: נתו� הביטוי הרגולרי הבא .1

שהיא התוצאה L המזהה את השפהמינימלי בנו אוטומט סופי דטרמיניסטי .א

.ביטוישל ה

בכ$ . (בי� כל זוג מצבי� של האוטומט קצרה ביותרמצאו מילה מפרידה .ב

).ותוכיחו את המינימליות של

?Lביחס לשפה *{0,1}מה� מחלקות השקילות של .ג

.והציגו ביטוי רגולרי שהמחלקה היא התוצאה שלו, תארו מילולית כל מחלקה

.שכל שפה סופית היא רגולרית Nerodeהראו בעזרת משפט . 2

הוכיחו את ?ביחס לכל אחת מהשפות הבאות *Σמה� מחלקות השקילות של . 3

.תשובותיכ�

.Σ = {a,b,c} ,L = {aba, acc, accb}. א

היא שפת המילי� שהאות האחת לפני אחרונה שלה� Lוהשפה , Σ={a,b,c}. ב

.cהיא

היא שפת המילי� שמסתיימות באות שונה מ� האות Lוהשפה , Σ = {0,1}. ג

.שבה ה� מתחילות

הוא n { ,היא שפת כל המילי� שאורכ� הוא ריבוע של� Lוהשפה ,Σ = {a}. ד

L = {aריבוע של� n |.

:אינ� רגולריותת שהשפות הבאו Nerodeבעזרת משפט הוכיחו .4

L1 = {a .אnb

2n | n > 0}

L2 = {ww | w∈{a,b} .ב*}

L3 = {ww .גR | w∈{a,b}

*}

L4 = {a .דn!

| n > 0}

Page 8: automatim.pdf

הספר הגבוה לטכנולוגיה בירושלי��בית2

אוטומטי� ושפות פורמליות 150101 ב"עתש

:כדלקמ� Aנתו� האוטומט . 5

A = ({a, b}, {q0, …, q10}, q0, δ, {q5, q10})

:נתונה בטבלה הבאה δפונקציית המעברי�

q a b

q0 q1 q6

q1 q2 q1

q2 q3 q3

q3 q1 q4

q4 q5 q10

q5 q5 q5

q6 q7 q6

q7 q8 q8

q8 q6 q4

q9 q10 q5

q10 q10 q10

.Aציירו את האוטומט .א

על פי האלגורית� שלמדנו �Aמצאו את האוטומט המינימלי השקול ל .ב

.בכיתה

הראו מילה , לכל זוג מצבי� של האוטומט המינימלי שבנית� .ג

.המפרידה ביניה�

Page 9: automatim.pdf

אוטומטים ושפות פורמליות 150101 הספר הגבוה לטכנולוגיה בירושלים-בית

ה"ב

דקדוקים רגולריים, דקדוקים – 8' תרגיל מס

.babאו המסתיימות ברצף bbaהמכילות את הרצף , שפת כל המילים Lתהי . א

.L(G) = L -כך ש Gבנו דקדוק רגולרי .1

.פי האלגוריתם שנלמד בכיתה-לאוטומט סופי על Gהמירו את הדקדוק .2

.L(A) = L -כך ש Aבנו אוטומט סופי דטרמיניסטי .3

.לדקדוק רגולרי לפי האלגוריתם שנלמד בכיתה Aהמירו את האוטומט .4

:כדלקמן Gנתון הדקדוק . ב

G = ({S, A, B}, {a, b}, P, S)

P מכילה את הכללים הבאים:

S aB | bA A aS | bAA | a B bS | aBB | b

. הציגו עץ גזירה עבורה, אם כן. קבעו האם היא בשפה, לכל אחת מהמילים הבאות

.הסבירו בקצרה למה לא, אם לא

abba. ד baa. ג abab. ב aa. א

Page 10: automatim.pdf

אוטומטים ושפות פורמליות 150101 הספר הגבוה לטכנולוגיה בירושלים-בית

ה"ב

דקדוקים חסרי הקשר – 9' תרגיל מס

:בנו דקדוק חסר הקשר לכל אחת מהשפות הבאות. א

ים -a-מספר ה ,wבכל תחילית של כך ש, wשל כל המילים { a,b}שפה מעל .1

ים-b-אינו קטן ממספר ה

2. {anb

2n | n 0 }

bושל aמכילה מספר שווה של w-כך ש, wשל כל המילים { a,b}שפה מעל .3

4. {anb

m | n m }

, איחוד) סגורה לפעולות הרגולריותהראו שמחלקת השפות חסרות ההקשר . ב

(.שרשור ואיטרציה

ביטוי רגולרי לדקדוק חסר הקשר שיוצר את ישירותהציעו אלגוריתם המתרגם . ג

זה מוכיח שכל שפה רגולרית היא חסרת )השפה שהיא תוצאת הביטוי הרגולרי

(.הקשר

נקודות לפותרים נכונה 30בונוס של –שאלת רשות . ד

:בנו דקדוק חסר הקשר שיוצר את השפה הבאה

{ w{a,b}* | uu איננה מהצורה w }

Page 11: automatim.pdf

הספר הגבוה לטכנולוגיה בירושלים-בית אוטומטים ושפות פורמליות 150101

ה"ב

הקשר-למת הניפוח לשפות חסרות – 10' תרגיל מס

אינן חסרות הקשרהוכיחו שהשפות הבאות:

1. {wcv | w is a substring of v; w, v {a, b}* }

({a, b, c}האלפבית הוא )

2. {anb

ma

nb

m | n > m 0}

3. {an | n = 2

k, k > 0}

אם . הקשר אם לאו-קבעו האם היא חסרת, לגבי כל אחת מן השפות הבאות

הראו כיצד מקיימת השפה את למת הניפוח לשפות , תשובתכם חיובית

:השתמשו בלמה להוכחת קביעתכם, אחרת. הקשר-חסרות

1. {anba

mba

n+m | n,m 0}

2. {a2n

bnab

n | n > 0}

3. {vb*w | v,w {a,b}

*, |v| = |w|}

., abb, bbb, aaabbabb, bbbaaa: דוגמאות למילים בשפה

.aaa, baabaaaabbb: למילים שאינן בשפהדוגמאות

לכל שפהL ב נתון נגדיר את השפה הבאה"מעל א:

L’ = {wwR | w L}

:הוכיחו או סיתרו את הטענות הבאות

.רגולריתבהכרח ’Lאז , רגולרית Lאם .1

.רגולרית לאבהכרח ’Lאז , רגולרית Lאם .2

.חסרת הקשרבהכרח ’Lאז , רגולרית Lאם .3

.חסרת הקשר לאבהכרח ’Lאז , תרגולרי Lאם .4

Page 12: automatim.pdf

11תרגיל –ד אוטומטים ושפות פורמליות "בס

1

אוטומט מחסנית – 11תרגיל . מחסנית שמזהה אותה-בנו אוטומט, לכל אחת מהשפות הבאות. א

.והוסיפו הסבר מפורט על אופן פעולתו, תארו כל אוטומט באופן ציורי ברור

1. {anb

m | n ≤ m ≤ 2n}

a}השפה המשלימה לשפה .2nb

n | n > 0 }( הגדירו

(.אילו מילים שייכות לשפה הזו במדויקלעצמכם

3. }...{ 11

+jnkjni2ii

i=k|babcabbaa=L

ים וגוש -cגוש של , ים-aמכילה מילים המורכבות מכמה גושים של Lהשפה

ים -a-מספר ה: כך שמתקיים התנאי הבא, ים מפרידים-bעם , ים-aנוסף של

? באיזה גוש. ים באחד הגושים הקודמים-a-בגוש האחרון שווה למספר ה

למשל . אך בהיפוך, ים-c -ר המספר הגוש נקבע על פי מספ

aababaaaabaaababccbaaa L.

4. {xy{a,b}* | |x| = |y|, x ≠ y}

(n + m + n + m = n + n + m + m: רמז)

כל מצב , "היתקעות"באוטומט מחסנית שאין בו אפשרות של , נניח שנהפוך. ב

את באילו מקרים יזהה האוטומט המתקבל . ולהפך, מקבל למצב לא מקבל

.הצדיקו את תשובתכם? השפה המשלימה לשפה שמזהה האוטומט המקורי

Page 13: automatim.pdf

12תרגיל –אוטומטים ושפות פורמליות ד"בס

הקשר-מחסנית ודקדוקים חסרי-שקילות אוטומטי - 12תרגיל

:פ האלגוריתם שלמדנו"מחסנית ע-תרגמו את הדקדוק הבא לאוטומט .1

S → aSbb | cX

X → cX | c

ותרגמו אותו לדקדוק שקול על פי , מחסנית שמזהה את השפה הבאה-בנו אוטומט. 2

: האלגוריתם שלמדנו בכתה

{wcwR

| w{a,b,c}* }

Page 14: automatim.pdf

סגירות של שפות חסרות הקשרתכונות – 31תרגיל

. R רגולריתושפה , Lחסרת הקשר נתונה שפה . א

קבוצת השפות , כלומר) חסרת הקשרהיא LRהראו שהשפה .1

(.סגורה לחיתוך עם שפות רגולריותחסרות ההקשר

הסבירו למה לא ניתן להוכיח באותה הדרך שקבוצת השפות .2

(.עם שפות חסרות הקשר)יתוך חסרות ההקשר סגורה לח

היא שפה חסרת הקשר {a,b,c}מעל {anbncn | n > 0}הוכיחו שהשפה המשלימה לשפה . ב

(.ה"השתמשו בתכונות הסגירות של שפות ח)