סיכול של הקורס חישוביות ומורכבות החישובים מאת ד"ר פרג' שיבאן.
הקורס כולל מכונות טיורינג, תורת הסיבוכיות, בעיית ההכרעה ועוד נושאים מרכזיים בתורת החישוביות ותורת הסיבוכיות.
הסיכום לקוח מהאתר: http://www.letach.net
12. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
III חלק
RE ושל R של סגירות תכונות
.(A של המשלימה )השפה A ∈ R אזי A ∈ R אם :,כלומר ,למשלים סגורה R .1
.ואיטרציה שירשור ,חיתוך ,לאיחוד סגורות RE וגם R גם .2
:אזי ,Σ אב מעל שפה A תהי 10.2 משפט
A ∈ RE וגם A ∈ RE ⇐⇒ A ∈ R
(שפות משפחת של co) co − E 11
:מסמנים אזי ,(שפות של מחלקה :)או משפחה היא E אם :סימון
co − E =
n
A ⊆ Σ∗
A ∈ E
o
:למשל
co − RE =
n
A ⊆ Σ∗
A ∈ RE
o
:עובדות שתי
.(למשלים סגורה R )כי co − R = R .1
.R = RE ∩ co − RE .2
IV חלק
בשפות הכרעה בעיות
שלו והקידוד מתמטי אובייקט 12
(....,אוטומט ,מט ,טבעי מספר ,מטריצה ,גרף :להיות )שיכול O מתמטי אובייקט בין נבדיל
.(מראש ידועה מסוימת בשיטה )קידוד .נתון Σ אב מעל O האובייקט של hOi הקידוד ובין
12
16. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
דוגמאות מספר 14
(A=Accept) מילה מקבל מסוים אוטומט האם ־ ADFA 14.1
A =
n
hB, wi w את מקבל Bו־ מילה היא w ,DFA הוא B
o
.w מילה קבלת היא והתכונה DFA אוטומט הוא כאן המתמטי האובייקט
.כריעה שפה היא ADF A
התיאור ולכן אלגוריתם לנו יש כי יכולים )ואנחנו ADF A את שמכריעה מט נבנה :הוכחה
:(המכונה יהיה שלו
,מילה היא wו־ DFA הוא B כאשר hB, wi קלט עם = M
:בצע n ≥ 0 כאשר w = a1a2 · · · an אם .1
.ההתחלתי המצב q = q0 ()א
:i = 1, ..., n לכל ()ב
.q ← δ (q, ai) .i
.דחה ־ לא ואם ,קבל ־ כן אם .q ∈ F אם בדוק .2
. ADF A ∈ Rש־ נובע ומכך
ריקה היא שפה האם ־ EDFA 14.2
EDF A =
n
hBi L (B) = ∅ו־ DFA הוא B
o
היא האוטומט שפת האם בדיקה היא והתכונה DFA אוטומט הוא כאן המתמטי האובייקט
.(EDF A בשפה יהיה ־ הריקה השפה היא ששפתו אוטומט כל ,)כלומר הריקה השפה
:EDF A את שמכריעה M מט נבנה :הוכחה
,DFA הוא B כאשר ,hBi קלט עם = M
.q0מ־ להשגה הניתנים המצבים כל את סמן .1
:)תזכורת .קבל ־ לא ואם ,דחה ־ כן אם .סומן המקבלים המצבים אחד אם בדוק .2
.(!ריקה שהשפה לוודא רוצים אנחנו
.EDF A ∈ Rש־ נובע ומכך
חסר־הקשר דקדוק עי מילה קבלת ־ ACFG 14.3
.דחה = הקשר חסר דקדוק
ACF G =
n
hG, wi w ∈ L (G)ו־ מילה היא w ,דחה הוא G
o
.כריעה בעיה היא ACF G
:ACF G את שמכריעה מט נבנה :הוכחה
,מילה wו־ דחה G כאשר hG, wi קלט עם = M
16
17. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
אחד הוא S האם ובדוק Gב־ לאיפוס הניתנים המשתנים כל את חשב ־ w = ε אם .1
.דחה ־ לא אם ,קבל ־ כן אם .מהם
את והפעל (CNF) חומסקי של הנורמלית לצורה G את העבר ־ w 6= ε אם .2
־ כן אם .שקיבלנו CNF בדקדוק לגזירה ניתנת w אם לבדיקה CY K האלגוריתם
.־דחה לא אם ,קבל
.ACF G ∈ R :ולכן
(L (G) = ∅ )האם ECFG 14.4
ECF G =
n
hGi L (G) = ∅ו־ דחה הוא G
o
:ECF G את שמכריעה מט נבנה :הוכחה
,דחה הוא G כאשר ,hGi קלט עם = M
שראינו האלגוריתם )לפי טרמינלית מילה שגוזרים G בדקדוק המשתנים כל את חשב .1
.(באוטומטים בקורס
.קבל ־ לא אם ,דחה ־ כן אם .טרמינלית מילה גוזר S אם בדוק .2
.ECF G ∈ R :ולכן
:הבאה לדיאגרמה לב נשים ,כעת
17
18. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
אבל ,הדיאגרמה על מפרטים יותר הסברים יהיו ([קיים אינו ]כרגע 'א )נספח נפרד בנספח
.R ⊂ RE כי נראה ובהמשך CFL ⊆ Rש־ בכך נתמקד כרגע
.(CFL ⊆ R ,)כלומר כריעה היא הקשר חסרת שפה כל 14.1 משפט
.L את שיוצר דחה ישנו אזי ,חה שפה L תהי :הוכחה
.(כזאת שקיימת מקודם )הוכחנו ACF G שמכריעה מט S תהי
:הבא באופן L את שמכריעה מט נבנה ,כעת
,w קלט עם = M
.(מכריעה מכונה היא S כי תעצור בטח )והיא שתעצור עד hG, wi על S את הרץ .1
.דחה ־ דחתה S אם ,קבל ־ קיבלה S 1ב־ אם .2
,w ∈ Σ∗
כל עבור ,כלומר ,L את שמכריעה מט לבנות היא שלנו המטרה :להוכחה הסבר
לנו שיהיה צריכים אנחנו כך לשם .לא או w ∈ L אם שמכריעה מט לבנות נרצה אנחנו
.אלגוריתם
השפה את שמכריע אלגוריתם יש כי הראנו ־אזי הקשר חסרת שפה היא Lו־ היות ,כעת
הראנו ובכך Sב־ שמשתמשת M מכונה שבנינו זה שעשינו מה ,לכן ,(כקלט w מילה )עבור
.כריעה היא שהשפה
(קודמת )בדוגמא S מט ובנינו ,חסרת־הקשר שפה היא L שפה כי לנו נתון ־ אחרות במילים
מילה עבור S באותה שמשתמשת M מט בנינו כעת .לא או בדקדוק מילה האם שמכריעה
בשפה היא אם w כל עבור שמכריעה (M) מט יש כי ־ כריעה שפה היא L ולכן ־ ספציפית
.לא או
(העצירה )בעיית במט הקבלה בעית 15
AT M =
n
hM, wi w ∈ L (M)ו־ מילה w ,מט M
o
:()הקבלה ההכרעה בעיית את מתארת זו שפה
.w את מקבלת M האם לבדוק ־ M של הקלט באב w ומילה מט בהינתן
AT M ∈ RE 15.1 משפט
18
19. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
:AT M את שמזהה מט נבנה :הוכחה .(לזיהוי )ניתנת חיובית כריעה שפה היא AT M ,כלומר
,מילה wו־ מט M כאשר hM, wi קלט עם = S
.w עלM את הרץ .1
.דחה ־ דחתה M ואם ,קבל ־ w את קבלה M 1 בעד בהרצה אם .2
כמה יש כי ,'ב בנספח )ההוכחה .כריעה אינה השפה ,כלומר .AT M /
∈ R 15.2 משפט
.(המשפט של ההוכחה לפני לעשות שצריך הכנות
ניתנת כריעה שפה שכל זה על דיברנו קודמים בחלקים הרי ־ R ⊂ RE כי לנו מראה גם זה
REב־ שנמצאת שפה ראינו וכעת R ⊆ RE :לכן ,REב־ היא למנייה ניתנת שפה וכל למנייה
.Rב־ ולא
שאמצעות מוכיחים אנחנו כי נראה פשוט ,כריעה אינה ששפה להוכיח שנרצה פעם כל ,כעת
.לסתירה ונגיע כריעה AT M ש־
:למשל
HALTT M =
n
hM, wi w על עוצרת Mו־ ,מילה w ,מט M
o
!עליה עוצרת בהכרח היא אבל ־ המילה את מקבלת בהכרח לא Mש־ לב נשים
.כריעה אינה HALTT M 15.3 משפט
,HALTT M את שמכריעה S מט קיימת אזי ,כריעה HALTT M ש־ בשלילה נניח :הוכחה
:הבא באופן T מט נבנה אזי
,מילה wו־ מט M כאשר hM, wi קלט עם = T
.שתעצור עד hM, wi על S את הרץ .1
.תשובתה את והחזר w על M את הרץ ־ קיבלה S המכונה 1 בצעד בהרצה אם .2
.דחה ־ דחתה S המכונה 1 בעצד בהרצה אם .3
.L (T) = AT M :היא T ושפת מכריעה מכונה היא T
.כריעה אינה AT M ש־ לעובדה סתירה ־ AT M את מכריעה T :קיבלנו
.כנל S שקיימת מההנחה נבעה זו סתירה
.כריעה אינה זו שפה לכן ־ HALTT M את שמכריעה S קיימת שלא היא המסקנה
.משל
ETM , NETM , ETM 15.1
ניתן שלה המשלים )רק לזיהוי ניתנת אינה ־ ET M =
n
hMi L (M) = ∅ו־ מט M
o
.(לזיהוי
.לזיהוי ניתנת ־ NET M =
n
hMi L (M) 6= ∅ו־ מט M
.לזיהוי ניתנת ־ ET M = NET M ∪
n
w מט של קידוד אינה w
o
.כריעה שפה היא ־
w מט של קידוד אינה w ־ השפה
:כמו־כן
19
20. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
.(לזיהוי )ניתנת חיובית כריעה AT M זא ־ (הקבלה )בעית AT M ∈ RE .1
.AT M /
∈ R .2
.HALTT M ∈ RE .3
־ A ∈ RE ו A ∈ RE ⇐⇒ A ∈ R :המשפט עפ .4
.AT M /
∈ RE ()א
.HALTT M /
∈ RE ()ב
.ET M /
∈ RE, ET M ∈ RE .5
(≤m) מיפוי רדוקצית 16
.A, B ⊆ Σ∗
תהיינה
מתקיימת w ∈ Σ∗
שעבור כך f : Σ∗
→ Σ∗
חשיבה פונקציה זוהי Bל־ Aמ־ מיפוי רדוקצית
:הבאה התכונה
w ∈ A ⇐⇒ f (w) ∈ B
באופן (Σ מעל שפות בין פונקציה זאת כלומר ,השפות כל )קבוצת 2Σ∗
על ≤m יחס נגדיר
:הבא
.Bל־ Aמ־ מיפוי רדוקצית קיימת ־ A ≤m B
אזי w ∈ A שאם כך f חשיבה פונקציה וקיימת A, B ⊆ Σ∗
:שפות שתי לנו יש אם ,כלומר
,Bל־ Aמ־ מיפוי רדוקציית לנו יש אזי f (w) /
∈ B אזי w /
∈ A אם ,וכמו־כן f (w) ∈ B
.A ≤m B :מתקיים ,כלומר
:אזי ,A ≤m B כי ונניח A, B ⊆ Σ∗
תהיינה 16.1 משפט
.(B /
∈ R ⇐ A /
∈ R :)או A ∈ R ⇐ B ∈ R .1
.(B /
∈ RE ⇐ A /
∈ RE :)או A ∈ RE ⇐ B ∈ RE .2
.(Σ )על טרנזיטיבי יחס הוא ≤m 16.2 משפט
.A ≤m B ⇐⇒ A ≤m B 16.3 משפט
C /
∈ מסוימת ששפה להוכיח רוצים למשל אנחנו שאם הוא מיפוי ברדוקציית השימוש רעיון
, ()למשל AT M /
∈ RE כי יודעים ואנחנו היות אזי ,()למשל RE
אחת משפה חשיבה )פונקציה Cל־ AT M מ־ חשיבה פונקציה ישנה כי מראים אנחנו אזי
.w ∈ AT M ⇐⇒ f (w) ∈ C :מתקיים כאשר (לשניה
AT M /
∈ ־ (2 סעיף 1 משפט )עפ ואז AT M ≤m C ־ ש נקבל זה את שנעשה ברגע ואז
.RE ⇒ C /
∈ RE
20
21. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
?מיפוי רדוקצית בונים כיצד 16.1
שפות שתי עבור A ≤m Bש־ להראות ,כלומר ,מיפוי רדוקצית לבנות רוצים אנחנו
.A, B ⊆ Σ∗
:שמתקיים כך f : Σ∗
→ Σ∗
חשיבה פונקציה שקיימת זה להראות שעלינו מה ,לכן
w ∈ A ⇐⇒ f (w) ∈ B
מילה הוא שלה שהקלט (כזאת )לבנות טיורינג מכונת שקיימת להראות צריכים אנחנו ,כלומר
־ Bב־ מילה זאת (הריצה שמסתיימת אחרי במכונה שנשאר מה ,)כלומר שלה והפלט Aב־
.Bב־ אינה הפלט מילת אזי Aב־ אינה היא הקלט מילה אם ־ וההפך
:הרעיון את שתמחיש פשוטה דוגמא ניקח ,למשל
:Σ = {0, 1}ו־ טיורינג מכונת היא M המקרים בכל
A =
n
hM, wi w ∈ 0n
, n ≥ 0, M
o
B =
n
hM, wi w ∈ 1n
, n ≥ 0 M
o
במצב מסיימת המכונה כאלו מילים עבור ורק ־ 0n
מהצורה המילים כל אלו ־ A של השפה
.מקבל
.הכרעה בעיות מייצגות הללו השפות שתי .1n
עבור רק כנל ־ B של השפה
w1 ∈ קלט כמילת שמקבלת MB מט לבנות נצטרך A ≤m Bש־ להראות בשביל ,כעת
:ומתקיים w2 ∈ {0, 1}
∗
פלט מילת עם ומסיימת {0, 1}
∗
w1 ∈ A ⇐⇒ w2 ∈ B
השפה את שמכריעה MA מכונה שישנה מניחים אנחנו כך שלשם כמובן . (w2 = f (w1))
.A
:הבא באופן Bל־ Aמ־ מיפוי רדוקצית נבנה ,לכן
hMA, wi → hMB, wi
,w קלט עם = MB
.w על MA את הרץ .1
:המילה את קיבלה המכונה 1 בצעד אם .2
.וקבל לאחדות במילה האפסים כל את הפוך ()א
.ודחה במילה הראשונה באות 0 רשום ־ אחרת .3
1n
ל־ אותה תהפוך MB אזי 0n
מהצורה היא ,כלומר ,Aב־ מילה היא w אם שאכן לב נשים
1n
מהצורה אינו הפלט גם אזי 0n
מהצורה אינה w אם זאת ולעומת ,Bב־ תהיה היא ולכן
.Bב־ אינו ולכן
מיפוי רדוקצית כאן בנינו ולכן w ∈ A ⇐⇒ f (w) ∈ B :שמקיימת חשיבה פונקציה זוהי
.A ≤m B :ולכן Bל־ Aמ־
מקבלים היינו אזי ־ 1n
מהצורה הייתה w אם כי המילה בתחילת 0 רשמנו 3 בצעד :הערה
...שיקרה אסור וזה ,Bב־ הוא הפלט אבל Aב־ אינה w שהמילה מצב
21
22. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
דוגמא 16.2
של השפה האם ומכריעה (מט של )קידוד hMi שמקבלת מט ־ REGT M בשפה נסתכל
.לא או רגולרית היא L (M) ,M
REGT M =
n
hMi רוגלרית שפה היא L (M)ו־ M
o
:כי נראה
.REGT M /
∈ RE .1
.REGT M /
∈ RE .2
:הוכחה
.1
AT M ≤m REGT M כי להראות מספיק 1 את להוכיח כדי
אם ,2 סעיף 1 ממשפט ,שלמעלה המשפטים שעפ )מהסיבה
( AT M /
∈ RE ⇒ REGT M /
∈ RE אזי AT M ≤m REGT M
:הבא באופן REGT M ל־ AT M מ־ מיפוי רדוקצית נבנה כך לשם
שפות שתדחה מכונה לבנות רוצים אנחנו .ההעתקה פונקצית את מתאר זה hM, wi → hMwi
.רגולריות לא
:כאשר
,x קלט עם = Mw
.דחה ־ 0n
1n
מהצורה אינה x אם .1
.תשובתה את והחזר w על M את הרץ ־ 0n
1n
מהצורה היא x אם .2
:לב נשים
L (Mw) =
(
∅ w את מקבלת לא M אם
{0n
1n
|n ≥ 0} w את מקבלת M אם
(מיפוי רדוקצית באמת היא שבנינו שההעתקה להוכיח צריך )תמיד :נכונות הוכחת
.חשיבה פונקציה שזו ברור
ולכן L (Mw) = ∅ זה במקרה .w את מקבלת לא M אזי hM, wi ∈ AT M אם ,כעת
. hMwi ∈ REGT M ש־ אומר וזה ,רגולרית שפה היא L (Mw)
:ההפוך בכיוון
.w את מקבלת M כלומר ,hM, wi ∈ AT M אז ,hM, wi /
∈ AT M אם
hMwi /
∈ לכן ,רגולרית אינה L (Mw) בפרט ,L (Mw) =
0n
1n
n ≥ 0 זה במקרה
.REGT M
.REGT M ל־ AT M מ־ מיפוי רדוקציית היא hM, wi → hMwi שההעתקה מוכיח זה
.AT M ≤m REGT M :על־כן
.2
כי , AT M ≤m REGT M ש־ להראות מספיק , זאת להוכיח כדי ־ REGT M /
∈ RE
.REGT M /
∈ RE המיפוי רדוקצית תכונות עפ ולכן AT M /
∈ RE
AT M ≤mש־ להראות מספיק אזי AT M ≤m REGT M ⇐⇒ AT M ≤ REGT M ו־ היות
.REGT M
:הבא באופן REGT M ל־ AT M מ מיפוי רדוקציית נבנה ובכן
hM, wi → hMwi
,x קלט עם = Mw
.קבל ־ 0n
1n
מהצורה הוא x אם .1
22
23. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
.תשובתה את והחזר w על M את הרץ ־ 0n
1n
מהצורה אינו x אם .2
:לב נשים
L (Mw) =
(
Σ∗
w את מקבלת M אם
{0n
1n
|n ≥ 0} w את מקבלת לא M אם
:נכונות הוכחת
שפה שהיא L (Mw) = Σ∗
הזה ובמקרה w את מקבלת M אז hM, wi ∈ AT M אם
.hMwi ∈ REGT M :מתקיים זה במקרה ,כלומר ,רגולרית
:ההפוך בכיוון
וזו ־ L (Mw) = {0n
1n
|n ≥ 0} :זה ובמקרה w את מקבלת לא M אז ,hM, wi /
∈ AT M
.hMwi /
∈ REGT M :ולכן ,רגולרית שפה אינה
∅ את או Σ∗
את שמקבלת מכונה 16.3
ספציפי קלט שעם טיורינג מכונת לבנות והיא בה להשתמש שניתן מכונה לבניית עודדרך ישנה
:(∅) מילה אף או (Σ∗
) המילים כל את תקבל ־
.w מילה כקלט המקבלת כלשהי Mw ־ מט לנו נתונה כי נניח :למשל
,(כלשהי )מילה x קלט עם = M
.w על Mw את הרץ .1
.Mw של תשובתה את החזר .2
w ∈ L (Mw) לאם בהתאם תשובה תחזיר והיא x מהקלט מתעלמת הנל המכונה כי לב נשים
:כלומר .לא או
L (M) =
(
Σ∗
w ∈ L (Mw)
∅ w /
∈ L (Mw)
.hMw, wi → hMi כמו בהעתקות להשתמש שרוצים (הכרחי )ואף שימושי הזה הדבר לפעמים
!חשיבה פונקציה תמיד היא הנל ההעתקה כי גם לב נשים
מוגבל צעדים מספר עם מיפוי רדוקצית 16.4
ל־ או qacceptל־ תגיע שהיא עד לרוץ תמשיך יכולה טיורינג מכונת ,מקודם שהוסבר כמו
אנחנו שבהם מקרים להיות יכולים לכן ,(כך אותה הגדרנו אם כלשהו אחר למצב )או qreject
כך לשם ,()למשל מכריעה מכונה לבנות נרצה אנחנו זאת בכל אבל ,לרוץ תפסיק לא המכונה
:שונות וריאציות בשתי Mw מט לבנות נוכל
:הבא באופן w על M את שמריצה ()מכריעה Mw מט נבנה ,w ומילה M מט בהינתן
:ראשונה גירסה
,x קלט עם = Mw
.צעדים |x| עד w על M את הרץ .1
.דחה ־ אחרת ,קבל ־ קיבלה M 1 בצעד בהרצה אם .2
23
24. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
לא שהוא שהוא במצב נמצאת שהמכונה להיות שיכול היא אחרת כותבים שאנחנו הסיבה
.היא היכן מושג לנו אין ולכן qreject
מצב זה אם ־ כלשהו במצב תהיה בוודאי היא צעדים |x| אחרי כי ־ מכריעה מכונה זאת לכן
.תדחה היא ־ מקבל שאינו אחר במצב זה ואם ,תקבל Mw מקבל
:w על M של הריצה אורך את nב־ נסמן w את מקבלת Mו־ במקרה
L (Mw) =
(
{x, |x| ≥ n} hM, wi ∈ AT M
∅ , hM, wi /
∈ AT M
:שנייה גירסה
,w קלט עם = Mw
.צעדים |x| עד w על M את הרץ .1
.קבל ־ אחרת ,דחה ־ קיבלה M 1 בצעד בהרצה אם .2
:כעת
L (Mw) =
(
{x, |x| n} hM, wi ∈ AT M
Σ∗
hM, wi /
∈ AT M
תנאי איזה יש כאשר ,הנל לבניות בהתאם הצורך במידת מכריעה מכונה לבנות ניתן ,לכן
...'וכו למשל השפה גודל על
≤m היחס של נוספות תכונות 16.5
:A ⊆ Σ∗
שפה עבור
A 6= Σ∗
⇐⇒ ∅ ≤m A (1)
∅ m Σ∗
(2)
A = ∅ ⇐⇒ A ≤m ∅ (3)
A = ∅ ⇐⇒ Σ∗
≤m A (4)
A = Σ∗
⇐⇒ A ≤m Σ∗
(5)
∀A ⊆ Σ∗
A ≤m A (6)
∀C, D ∈ R C ≤m D (7)
24
25. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
רייס משפט 17
ניסוחים 17.1
:ראשון ניסוח
:נסמן .C 6= REו־ C 6= ∅ כי ונניח שפות של משפחה C ⊂ RE תהי 17.1 משפט
AC =
n
hMi L (M) ∈ C, מט M
o
.כריעה אינה AC אזי
:שני ניסוח
את מקיימת שלה שהשפה מט קיימת כי ונניח ,טיורינג מכונות של שפות של תכונה P תהי
תכונה לא היא P ,)כלומר P התכונה את מקיימת אינה שלה שהשפה מט וקיימת P התכונה
:נסמן .(אותה מקיימת אינה שפה שאף תכונה לא וגם אותה מקיימות השפות שכל
AP =
n
hMi P התכונה את מקיימת L (M) ,מט M
o
.כריעה אינה AP אזי
במשפט שימוש + הסברים 17.2
אחרת ,מכונה של תכונה )ולא שפה של תכונה לנו שיש שברגע הוא רייס במשפט הרעיון
,(...תקף אינו המשפט
שמקיימת השפות משפחת ־ אותה לה שאין ושפה התכונה את לה שיש שפה שיש ברגע אזי
.כריעה אינה התכונה את
כך n ∈ N שקיים כך A ⊆ Σ∗
השפות כל ,כלומר ,סופית שפה התכונה את ניקח ,למשל
,|A| = nש־
,הסופית השפות קבוצת את AF ב־ נסמן
:למשל ,(AP 6= ∅ש־ נראה )וכך התכונה את שמקיימת לשפה דוגמא לתת צריכים אנחנו אזי
,A = {a}
A = {a∗
} למשל ,התכונה את מקיימת שאינה לשפה ודוגמא
25
26. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
התכונה את מקיימת שאינה לפחות אחת שפה קיימת כי AF ⊂ RE כי מראים אנחנו )ואז
,(הנל
הסופיות השפות קבוצת כי להראות ועל־פיו רייס במשפט להשתמש יכולים אנחנו ועכשיו
.כריעה אינה
.כריעה אינה הסופיות השפות כל את שכוללת השפה כלומר
AF =
n
hMi |L (M)| n, n ∈ N
o
/
∈ R
השפה להיות AP נגדיר ־ למשל ,כלומר ,מכונה של בתכונה מדובר היה אם ,זאת לעומת
למכונה שייכת כאן התכונה .ימינה זזה (הקלט )מילת w של האחרונה באות המכונה שבה
...עצמה לשפה ולא
־שלמהRE שפה 18
:הבאות הדרישות שתי את מקיימת A אם ־שלמהRE נקראת A שפה 18.1 הגדרה
.A ∈ RE .1
אחרת שפה מכל לעשות אפשר ,)כלומר B ≤m A :מתקיים B ∈ RE שפה לכל .2
.(אליה רדוקציה REב־
־שלמהRE לשפה דוגמא 18.1
.־שלמהRE שפה היא AT M
:כי להוכיח נצטרך זאת להוכיח בשביל
.AT M ∈ RE .1
.B ≤m AT M :מתקיים B ∈ RE לכל .2
.לנו ידוע ־ 1
.B את המזהה M מט אזי ,כלשהי שפה B ∈ RE תהי ־ 2
:העתקה נגדיר
fM : Σ∗
→ AT M
fM (w) = hM, wi
.חשיבה פונקציה בבירור היא fM
fM (w) ∈ כלומר ,hM, wi ∈ AT M ש־ אומר וזה w את מקבלת M אזי w ∈ B אם :כעת
.AT M
,כלומר ,hM, wi /
∈ AT M ש־ אומר וזה w את מקבלת לא M אזי w /
∈ B אם :ההפוך בכיוון
.fM (w) /
∈ AT M
מטרנזיטיביות נובע )זה ־שלמהRE היא A אזי AT M ≤m Aו־ A ∈ RE אם 18.2 הערה
.(≤m היחס
26
27. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
V חלק
הסיבוכיות תורת
oו־ O 19
:פונקציות שתי f (n) , g (n) יהיו
f (n) = O (g (n))
.f (n) ≤ C · g (n) :מסוים n0 ∈ Nמ־ שהחל כך C 0 קיים אםם
.limn→∞
f(n)
g(n) = 0 אםם f (n) = o (g (n))
...'וכו סימונים ,הגדרות :זמן סיבוכיות 20
.Rב־ שהן בשפות ורק אך נעסוק אנחנו הסיבוכיות בתורת
.כריעות שהן בשפות ורק אך ,כלומר
.(קלט כל על )עוצרת מכריעה מט M תהיי
שלה בריצה מבצעת שהמכונה החישוב צעדי מספר הוא w קלט מילת על M של הריצה אורך
לקונפיגורציה נוכחית מקונפיגורציה המכונה של מעבר הוא חישוב צעד כאשר ,w על
.העוקבת
עבור המוגדרת tM : N → N פונקציה זוהי (M של הזמן סיבוכיות :)או M של הריצה זמן
:על־ידי n ∈ N
tM = n מאורך קלט מילת על M של ביותר הגדול הריצה אורך
ש־ אומרים אזי ,t (n) הפונקציה היא M של הזמן סיבוכיות אם
t (n) בזמן רצה M
נצטרך הנראה ככל ואנחנו n באורך הוא הקלט )כי t (n) ≥ nש־ תמיד מנחים אנחנו ,כמובן
.(אחת פעם לפחות אותו לקרוא
27
28. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
O ־ הזמן סיבוכיות תיאור 20.1
,שלה המדויקים בפרטים נתעניין פחות אזי ,מט של הזמן סיבוכיות את לתאר נרצה כאשר
.שלה האסיפטוטית בהתנהגות אלא
.t (n) = 30n3
+ 7n2
+ 3n = O n3
:למשל
עבור O nk
היא M של הזמן סיבוכיות אם ,פולינומי בזמן רצה שהיא M מט על אומרים
.k ≥ 1
O
2nk
היא M של הזמן סיבוכיות אם אקספוננציאלי בזמן רצה שהיא M מט על אומרים
.k ≥ 1 עבור
שקולה M0
חד־סרטית מט קיימת t (n) בזמן שרצה M ־סרטיתk מט לכל 20.1 משפט
.O
t (n)
2
בזמן ורוצה Mל־
שקולה פולינומי בזמן ורצה A את המכריעה מט קיימת האמירה ,שפה A תהי 20.2 מסקנה
.פולינומי בזמן ורצה A את המכריעה חד־סרטית מט קיימת ־ לאמירה
סיבוכיות מחלקות סימון 20.2
:נסמן ,t (n) ≥ n שמקיימת t : N → N פונקציה עבור
TIME (t (n)) =
n
A
M מט וקיימת וקיימת ,שפה A
A את ומכריעה O (t (n)) בזמן שרצה
o
:ומתקיים ,שפות של מחלקה היא TIME (t (n))
.O (t (n)) בזמן ורצה A את שמכריעה M מט קיימת ⇐⇒ A ∈ TIME (t (n))
:לציין כדאי
t (n) = O (s (n)) ⇐⇒ TIME (t (n)) ⊆ TIME (s (n))
מטלד של זמן סיבוכיות 20.3
בעץ מדובר שהפעם רק ,מט של הזמן לסיבוכיות דומה מאוד מטלד של הזמן סיבוכיות
כאשר ,(עוצרות הריצות כל ,)כלומר סופיים לעלים מהשורש המסלולים כל על שבו חישוב
.לעלה מהשורש ביותר הגדול המסלול אורך היא tM (n) הפונקציה הפעם
:סימון
:נסמן t (n) ≥ n ,שמקיימת t : N → N :פונקציה עבור
NTIME (t (n)) =
n
A
שרצה M מטלד וקיימת ,שפה A
A את ומכריעה O (t (n)) בזמן
o
:ומתקיים ,שפות של מחלקה היא NTIME
O (t (n)) בזמן ורצה A את שמכריעה M מטלד קיימת ⇐⇒ A ∈ NTIME (t (n))
M0
דטרמינסטית מט ת קיימ ,t (n) בזמן שרצה M חד־סרטית מטלד לכל 20.3 משפט
.2O(t(n))
בזמן שרצה Mל־ שקולה
28
29. החישובים ומורכבות חישוביות
'ב סמסטר ־ שיבאן 'פרג דר
P, NP, EXP המחלקות 20.4
:P, NP, EXP :מחלקות לשלוש מחלקים ניתן השונות טיורינג מכונות הריצה זמני את
P =
[
k≥1
TIME nk
NP =
[
k≥1
NTIME nk
EXP =
[
k≥1
TIME
2nk
:המחלקות משמעות
.פולינומי בזמן שרצה ()דטרמינסטית מט עי להכרעה הניתנות השפות מחלקת היא ־ P
.פולינומי בזמן שרצה מטלד עי להכרעה הניתנות השפות מחלקת היא ־ NP
.אקספוננציאלי בזמן שרצה ()דטרמינסטית מט עי להכרעה הניתנות השפות מחקת היא ־ EXP
:A (בעיה )או שפה עבור
.A את ומכריעה פולינומי בזמן שרצה M מט קיימת ⇐⇒ A ∈ P
.A את ומכריעה פולינומי בזמן שרצה M מטלד קיימת ⇐⇒ A ∈ NP
.A את ומכריעה אקספוננציאלי בזמן שרצה M מט קיימת ⇐⇒ A ∈ EXP
ההיררכיה משפט 20.4.1
:אזי ,t (n) בזמן הרצה מט לנו יש ויכ t (n) ≥ n כי נניח
TIME (t (n)) ( TIME
t (2n)
3
:כי לנו ידוע כעת
P ⊆ NP ⊆ EXP
במדעי כיום הפתוחה השאלה ,ולכן P 6= EXP כי יודעים אנחנו ההירכיה משפט ועפ
ניתן מטלד באצמעות לפתור שניתן בעיה כל האם ,)כלומר P = NP האם הינה המחשב
מט כל כי ־ טריוויאלי הוא P ⊆ NP ההפוך הכיוון ,דטרמינסטית מט באצמעות לפתור
(....מטלד בעצם היא דטרמינסטית
NPוב־ Pב־ לשפות דוגמאות 20.5
Pב־ לשפה דוגמא
PATH =
n
hG, s, ti tל־ sמ־ Gב־ מסלול וקיים ,בגרף צמתים s, tו־ מכוון גרף G
o
.PATH ∈ P :טענה
:הבא באופן פולינומי בזמן ורצה PATH את המכריעה מט נבנה :הוכחה
,כנל hG, s, ti קלט עם = M
.s את סמן .1
סמן ־ מסומן לא vו־ מסומן u שבה (u, v) קשת ולכל Gב־ הקשתות רשימת על עבור .2
.v את
.2 לצעד חזור ־ חדשה צומת סומנה 2 צעד בביצוע אם .3
29