כ"ב/אלול/תשע"ד
אס"ד -תרגילים
תרגיל 1
א"ב } ,{a, bכל המילים שמספר ה a -בהן מתחלק ב3-
או בצורת רישום אחרת }{#a mod 3 = 0
b
b
פתרון – נתחיל בטיוטה
כיוון שיש שלוש אפשרויות לחלוקה
q1
של aב( 3-שארית )1,2,0יהיו 3
מצבים שכל אחד ייצג שארית אחרת
a
האות aתעביר בין מצבי השאריות
באופן מעגלי
האות bאינה משפיעה ,ולכן לא מעבירה מצב
a
q0
a
q2
b
1
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
אס"ד -תרגילים
b
b
תרגיל - 1מעקב
a
q1
a
q0
a
q2
b
מסלול מקבל עבור המילה – ababa
מקבל q0 a q1 b q1 a q2 b q2 a q0 -
מסלול שאינו מקבל עבור המילה –babba
לא מקבל – q0 b q0 a q1 b q1 b q1 a q2
2
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
אס"ד -תרגילים
תרגיל 2
א"ב } ,{a, bכל המילים ששארית החלוקה של מספר הa-
ועוד מספר ה b-בהם ב 4-היא זוגית
או בצורת רישום אחרת {((#a+ #b) mod 4) mod 2 = 0} -
פתרון
כאן נצפה ל 4-מצבים ,לכ"א מהשאריות
אין הבדל בין שתי האותיות ,תמיד ביחד
שני מצבים מקבלים ,שארית 0ושארית 2
q1
a, b
q0
a, b
a, b
q2
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
a, b
q3
3
1
כ"ב/אלול/תשע"ד
אס"ד -תרגילים
תרגיל - 2מעקב
a, b
q1
q0
a, b
a, b
a, b
q2
q3
מסלול מקבל עבור המילה – abab
מקבל q0 a q1 b q2 a q3 b q0 -
מסלול שאינו מקבל עבור המילה –babba
לא מקבל – q0 b q1 a q2 b q3 b q0 a q1
4
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
אס"ד -תרגילים
תרגיל - 3שילוב
א"ב } ,{a, bכל המילים המסתיימות ב ab-ומספר הa-
שבהם זוגי
𝑏
פתרון
𝑏
q3
𝑏
q2
𝑎
𝑎
𝑎
q1
q0
𝑎
𝑏
5
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
אס"ד -חיבור של שני אוטומטים
.1
בונים טבלת אוטומט לכל שפה
אות קלט2
אות קלט1
(ישירות או ע"י שרטוט והמרה)
.2
קלט /מצב
מצב 1
מצב 2
מייצרים טבלה "מחברת" לשני האוטומטים
מחברים כל מצב מהאוטומט הראשון לכל אחד מהמצבים באוטומט השני
(סה"כ יצאו מספר מצבים אוטומט אחד Xמספר מצבים אוטומט שני)
לכל אחד מהמצבים "המחוברים" רושמים עבור כל אחת מאותיות הקלט,
לאיזה מצב צריך לעבור
(לפי מצב ראשון אוטומט ראשון +מצב שני אוטומט שני).
.3
משרטטים אוטומט (או טבלת מעברים וכו') לפי הטבלה
"המחברת"
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
6
2
כ"ב/אלול/תשע"ד
אס"ד -חיבור של שני אוטומטים
דוגמה – חיבור אס"ד עבור השפה
א"ב }L = {# a mod 2 = 0, #b mod 3 ≠ 0}, {a, b
פתרון
נבנה אוטומט לכל אחד מהחלקים בנפרד
א"ב }L1 = {# a mod 2 = 0}, {a, b
א"ב }L2 = {#b mod 3 ≠ 0}, {a, b
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
7
אס"ד -חיבור של שני אוטומטים
א"ב }L1 = {# a mod 2 = 0}, {a, b
b
a
קלט /מצב
q0
q1
∙q0
q1
q0
q1
A1
𝑏
𝑏
𝑎
q1
q0
𝑎
8
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
אס"ד -חיבור של שני אוטומטים
א"ב }L2 = {#b mod 3 ≠ 0}, {a, b
𝑎
b
a
p1
p0
p0
p2
p1
∙p1
p0
p2
∙p2
𝑎
A2
קלט /מצב
𝑏
p1
p0
𝑏
𝑏
p2
𝑎
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
9
3
כ"ב/אלול/תשע"ד
אס"ד -חיבור של שני אוטומטים
חיבור הטבלאות
b
a
A1
q0
q1
∙q0
q1
q0
q1
b
a
A2
p1
p0
p0
p2
p1
∙p1
p0
p2
∙p2
קלט /מצב
b
a
q0 p1
q1 p0
∙ q0p0
q0 p2
q1 p1
∙
∙ q0p1
q0 p0
q1 p2
∙
∙ q0p2
q1 p1
q0 p0
q1p0
q1 p2
q0 p1
∙ q1p1
q1 p0
q0 p2
∙ q1p2
נסמן נקודה לכל מצב חדש qipjעבור חלק המצב ב( A1-מצב ה )qi-היה מקבל
נסמן נקודה לכל מצב חדש qipjעבור חלק המצב ב( A2-מצב ה )pj-היה מקבל
אם הדרישה היא לשני התנאים (כמו כאן) שתי נקודות מצב מקבל
אם הדרישה היא לפחות אחד מהתנאים (לא כמו כאן) נקודה מצב מקבל
10
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
אס"ד -חיבור של שני אוטומטים
אוטומט החיבור
q1p0
𝑎
𝑎
b
𝑏
q1p1
b
𝑎
𝑎
b
q1p2
q0p0
𝑏
q0p1
b
𝑎
𝑎
קלט /
b
a
q0p1
q1p0
q0p2
q1p1
q0p0
q1p2
∙∙ q0p1
∙∙ q0p2
q1p1
q0p0
q1p0
q1p2
q0p1
q1p0
q0p2
∙ q1p1
∙ q1p2
מצב
∙ q0p0
q0p2
אס"ד – אוטומט סופי דטרמיניסטי -שיעור 3
11
4
© Copyright 2025