‫הסתברות‬ 1‫החישובים‬ ‫מורכבות‬
‫החישובים‬ ‫מורכבות‬
!‫בסוף‬ ‫עניינים‬ ‫תוכן‬
I ‫חלק‬
‫חזרה‬
‫הסתברות‬ 1
‫מדגם‬ ‫מרחב‬ 1.1
:‫וקביה‬ ‫הטלת‬ ‫עבור‬ ,‫למשל‬ .‫מסוים‬ ‫מאורע‬ ‫עבור‬ ‫שיש‬ ‫האפשרויות‬ ‫כל‬ ‫את‬ ,‫כלומר‬ .‫המדגם‬ ‫מרחב‬ ‫את‬ Ω-‫ב‬ ‫נסמן‬
.Ω = {1, 2, 3, 4, 5, 6}
∀x ∈ Ω : 0 ≤ Pr (x) ≤ 1
‫מאורע‬ 1.2
.A ⊆ Ω ,Ω ‫של‬ ‫תת-קבוצה‬ ‫היא‬ ‫מאורע‬
Pr (A) =
∑
x∈A
Pr (x)
.(‫לתת-בעיות‬ ‫הבעיה‬ ‫את‬ ‫)לחלק‬ ‫פשוטים‬ ‫יותר‬ ‫מאורעות‬ ‫של‬ ‫בצורה‬ ‫אותו‬ ‫ולהציג‬ ‫אותו‬ ‫לפשט‬ ‫נעדיף‬ A ‫מאורע‬ ‫כשיש‬
A ‫מאורע‬ ‫פירוק‬ 1.3
.‫לתתי-מאורעות‬ ‫אחד‬ ‫מאורע‬ ‫שמפרקים‬ ‫או‬ ,‫מאורעות‬ ‫מספר‬ ‫על‬ ‫מדברים‬ ‫כאשר‬
Union Bound ‫האיחוד‬ ‫חסם‬ 1.3.1
Pr (A ∪ B) ≤ Pr (A) + Pr (B)
1
‫הסתברות‬ 1‫החישובים‬ ‫מורכבות‬
‫והדחה‬ ‫הכלה‬ 1.3.2
Pr (A ∪ B) = Pr (A) + Pr (B) − Pr (A ∩ B)
‫לפעמים‬ ‫קשה‬ ‫יותר‬ ‫גם‬ ‫ולכן‬ ‫יותר‬ ‫עדין‬ ‫כלי‬ ‫זהו‬ ‫והדחה‬ ‫הכלה‬ .‫והדחה‬ ‫הכלה‬ ‫מאשר‬ ‫יותר‬ ‫גס‬ ‫כלי‬ ‫הוא‬ ‫האיחוד‬ ‫חסם‬
.‫בעיות‬ ‫איתו‬ ‫לפתור‬
‫מותנית‬ ‫הסתברות‬ 1.4
A ‫מאורע‬ ‫שקרה‬ ‫בהינתן‬ ,‫כלומר‬ ,P (B|A) :‫היא‬ B-‫ב‬ A ‫של‬ ‫המותנית‬ ‫ההסתברות‬ .A, B :‫מאורעות‬ ‫שני‬ ‫לנו‬ ‫נתונים‬
...‫יקרה‬ B-‫ש‬ ‫ההסתברות‬ ‫מה‬
:‫שיקרו‬ ‫המאורעות‬ ‫שני‬ ‫על‬ ‫מדובר‬ ‫כאשר‬
Pr (A ∩ B) = Pr (A)
‫קודם‬
· Pr (B|A)
‫אח"כ‬
‫תלויים‬ ‫בלתי‬ ‫מאורעות‬ 1.4.1
B-‫ש‬ ‫ההסתברות‬ ‫על‬ ‫ישפיע‬ ‫לא‬ ‫התרחש‬ ‫לא‬ ‫או‬ ‫התרחש‬ A-‫ש‬ ‫שזה‬ ‫אומר‬ ‫זה‬ ‫אזי‬ ,(‫)ב"ת‬ ‫תלויים‬ ‫בלתי‬ ‫המאורעות‬ ‫כאשר‬
.‫יתרחש‬
:‫כזה‬ ‫במקרה‬
Pr (A|B) = Pr (A) , Pr (B|A) = Pr (B)
:‫אפשרויות‬ ‫שלוש‬ ‫ישנן‬
Pr (A|B) > Pr (A) , Pr (B|A) > Pr (B) :‫חיובית‬ ‫תלות‬
Pr (A|B) < Pr (A) , Pr (B|A) < Pr (B) :‫שלילית‬ ‫תלות‬
Pr (A ∩ B) = Pr (A) · Pr (B) :‫אי-תלות‬
:‫אי-תלות‬ ‫ישנה‬ ‫כאשר‬ ,‫כללי‬ ‫ובאופן‬
Pr (A1 ∩ · · · ∩ An) =
∏
1≤i≤n
Pr (Ai)
,∀i : Pr (Ai) = p :‫כלומר‬ ,‫הסתברות‬ ‫אותה‬ ‫את‬ ‫יש‬ ‫המאורעות‬ ‫לכל‬ ‫ואם‬
.Pr (A1 ∩ · · · ∩ An) = pn
:‫אזי‬
:‫מאורע‬ ‫לכל‬ ‫קבועה‬ ‫ההסתברות‬ ‫כאשר‬ ‫רעיון‬ ‫אותו‬ ‫הוא‬ ‫הרעיון‬ ‫איחוד‬ ‫לגבי‬
Pr (A1 ∪ · · · ∪ An) ≤
∑
1≤i≤n
Pr (Ai) = n · Pr (Ai)
.(‫חזק‬ ‫כלי‬ ‫זה‬ ‫)ולכן‬ .‫בלתי-תלויים‬ ‫למאורעות‬ ‫וגם‬ ‫תלויים‬ ‫למאורעות‬ ‫גם‬ ‫נכון‬ ‫וזה‬
‫מקרי‬ ‫משתנה‬ 1.5
.f : Ω → R :R-‫ל‬ Ω-‫מ‬ ‫פונקציה‬ ‫זוהי‬ ‫מקרי‬ ‫משתנה‬
.X, Y, Z, ...-‫ב‬ ‫אותה‬ ‫נסמן‬ ‫אנחנו‬
‫תוחלת‬ 1.6
.E (f) = µ (f) :‫מסמנים‬ f ‫מקרי‬ ‫משתנה‬ ‫עבור‬ ‫אשר‬ ,‫משוקלל‬ ‫ממוצע‬ ‫היא‬ ‫תוחלת‬
:‫נשתמש‬ ‫לא‬ ‫שבהן‬ ‫לתוחלת‬ ‫הגדרות‬ ‫שתי‬
2
‫קירוב‬ ‫אלגוריתמי‬ 3‫החישובים‬ ‫מורכבות‬
$$$$$$$$∑
x∈Ω
Pr (x) · f (x)
$$$$$$$$$$$∑
V ∈Im(f)
Pr (x = V ) · V z
.‫התוחלת‬ ‫לינאריות‬ ‫הוא‬ ‫בו‬ ‫שנשתמש‬ ‫הכלי‬ ‫זאת‬ ‫לעומת‬
.(‫לחסם‬ ‫)בדומה‬ ‫עובדת‬ ‫תמיד‬ ‫התוחלת‬ ‫לינאריות‬
E (f + g) = E (f) + E (g)
E


∑
1≤i≤n
fi

 =
∑
1≤i≤n
E (fi)
∑
x
Pr (x) (f (x) + g (x)) =
∑
x
Pr (x) f (x) +
∑
x
Pr (x) g (x)
:‫יותר‬ ‫קצר‬ ‫בניסוח‬ ‫או‬
E
(∑
fi
)
=
∑
E (fi)
‫טיילור‬ ‫קירוב‬ 2
:x < 1
2 ‫עבור‬
e
x
2 ≤ 1 + x ≤ ex
≤ 1 + 2x
:ln ‫נעשה‬ ‫וכעת‬
x
2
≤ ln (1 + x) ≤ x ≤ ln (1 + 2x)
‫קירוב‬ ‫אלגוריתמי‬ 3
:‫קירוב‬ ‫לאלגוריתמי‬ ‫גרסאות‬ ‫שלוש‬ ‫ישנן‬
.‫הכרעה‬
.‫חיפוש‬
.‫אופטימיזציה‬
(G ‫גרף‬ ‫)של‬ ‫הקשירות‬ ‫בעיית‬ :‫דוגמה‬ 3.1
(‫קשיר‬ ‫הוא‬ ‫הגרף‬ ‫)האם‬
.G ‫הגרף‬ :‫קלט‬
?‫קשיר‬ G ‫הגרף‬ ‫האם‬ ‫הכרעה‬ ‫בעיית‬
(?‫פורש‬ ‫עץ‬ ‫ישנו‬ ‫)האם‬ .‫פורש‬ ‫עץ‬ ‫מצא‬ ‫חיפוש‬ ‫בעיית‬
(?‫מינימלי‬ ‫פורש‬ ‫עץ‬ ‫ישנו‬ ‫)האם‬ .‫מינימלי‬ ‫פורש‬ ‫עץ‬ ‫מצא‬ ‫אופטימיזציה‬ ‫בעיית‬
3
(k-wise independece) ‫משתנים‬ ‫של‬ ‫אי-תלות‬ 4‫החישובים‬ ‫מורכבות‬
‫ערך‬ ‫פונקציית‬ 3.2
.‫מסוים‬ ‫ערך‬ ‫לנו‬ ‫מחזירה‬ ‫והיא‬ ‫לבעיה‬ ‫מבעיה‬ ‫שמשתנה‬ ‫פונקציה‬ ‫היא‬ ‫ערך‬ ‫פונקציית‬
:‫הקשירות‬ ‫בעיית‬ ‫בדוגמת‬ ,‫למשל‬
‫קשירות‬ (G, w, T) =
{∑
e∈T w (e) T − ‫פורש‬ ‫עץ‬
w (G) + 1 ‫אחרת‬
(‫קבוע‬ ‫)=יחס‬ ‫קירוב‬ ‫פקטור‬ 3.3
.‫קירוב‬ ‫מצאנו‬ ‫אבל‬ ‫האופטימלי‬ ‫הפתרון‬ ‫את‬ ‫לה‬ ‫מצאנו‬ ‫שלא‬ ‫בעיה‬ ‫ישנה‬
.‫באחוזים‬ ‫אותה‬ ‫נמדוד‬ ,‫כלומר‬ - ‫כפלית‬ ‫שגיאה‬ ‫נמדוד‬
.α = 1.1 :‫הקירוב‬ ‫פקטור‬ .(‫)למשל‬ 10% ‫היותר‬ ‫לכל‬ ‫נשלם‬ - ‫מינימיזציה‬ ‫בעיית‬
.‫מקורב‬ ‫מחיר‬ ≤ 1.1· ‫מזערי‬ ‫מחיר‬ :‫כלומר‬
.α = 0.8 ‫הקירוב‬ ‫פקטור‬ .‫מהמקסימום‬ ‫פחות‬ 20% ‫היותר‬ ‫לכל‬ ‫נרוויח‬ - ‫מקסימיזציה‬ ‫בעיית‬
.‫מקורב‬ ‫≥רווח‬ 0.8· ‫מרבי‬ ‫רווח‬ :‫כלומר‬
‫מדויקות‬ ‫הגדרות‬ 3.3.1
?α (‫תחרותיות‬ ‫)יחס‬ ‫פקטור‬ ‫מבטיח‬ A ‫אלגוריתם‬ ‫מתי‬
‫מקסימיזציה‬
(x, A (x)) ≥
≤1
α. max
w sols
(x, w)
.‫משתפר‬ ‫הקירוב‬ ‫כך‬ α → 1-‫ש‬ ‫ככל‬
.‫אופטימלי‬ ‫למעשה‬ ‫המקורב‬ ‫הפתרון‬ α = 1 ‫כאשר‬
‫מינימיזציה‬
(x, A (x)) ≤
≥1
α. min
w sols
(x, w)
.‫רע‬ ‫נהיה‬ ‫הקירוב‬ α → 0 ‫כש‬
.‫משתפר‬ ‫הקירוב‬ ‫כך‬ α → 1-‫ש‬ ‫ככל‬
.‫אופטימלי‬ ‫פתרון‬ ‫למעשה‬ ‫הוא‬ ‫המקורב‬ ‫הפתרון‬ - α = 1 ‫כאשר‬
.‫רע‬ ‫נהיה‬ ‫הקירוב‬ α → ∞-‫כש‬
(k-wise independece) ‫משתנים‬ ‫של‬ ‫אי-תלות‬ 4
.‫ב"ת‬ ‫אחידים‬ ‫מקריים‬ ‫משתנים‬ X, Y ∈ {0, 1}
.Z2-‫ב‬ ‫שאיבריו‬ ‫בשדה‬ ‫חיבור‬ - Z = X ⊕ Y ‫שלישי‬ ‫משתנה‬ ‫נגדיר‬
‫ההסתברות‬ X Y Z
1
4 0 0 0
1
4 0 1 1
1
4 1 0 1
1
4 1 1 0
‫)אם‬ ‫חזקה‬ ‫מאוד‬ ‫תלות‬ ‫יש‬ ‫בשלשות‬ .‫השלישי‬ ‫את‬ ‫יודעים‬ ‫תמיד‬ - ‫שניים‬ ‫יודעים‬ ‫אם‬ - Y, Z ‫ועל‬ X, Z ‫על‬ ‫להסתכל‬ ‫ניתן‬
.(‫השלישי‬ ‫את‬ ‫יודעים‬ - ‫שניים‬ ‫יודעים‬
.(‫אחידה‬ ‫בהתפלגות‬ ‫הן‬ ‫האפשרויות‬ ‫כל‬ ,‫)כלומר‬ ‫האחר‬ ‫מה‬ ‫יודעים‬ ‫לא‬ ⇐ ‫אחד‬ ‫יודעים‬ ‫אם‬ :‫אי-תלות‬ ‫יש‬ ‫בזוגות‬
4
‫בולאניים‬ ‫מעגלים‬ ‫מול‬ ‫פולינומים‬ 5‫החישובים‬ ‫מורכבות‬
‫הכללות‬ 4.1
:‫על‬ ‫נדבר‬ Z2-‫ב‬ ‫שלוש‬ ‫מול‬ ‫משתנים‬ ‫שני‬ ‫במקום‬
.(Zp = {0, 1, ..., p − 1} :‫)תזכורת‬ .‫ראשוני‬ ‫הוא‬ p ‫כאשר‬ Zp-‫ב‬ k + 1 ‫מול‬ ‫משתנים‬ k
:‫וב"ת‬ ‫אחיד‬ ‫באופן‬ ‫מגרילים‬
x1, . . . , xk ∈ Zp
:‫עבור‬ ‫אזי‬
xk+1 = (x1 + · · · + xk) mod p
.‫(-יות‬k + 1)-‫ב‬ ‫מלאה‬ ‫תלות‬ ‫יש‬ .‫א‬
.‫בשדה‬ ‫אחיד‬ xk+1 .‫ב‬
.‫-יות‬k-‫ב‬ ‫ב"ת‬ ‫הם‬ x1, . . . , xk+1 :‫המקריים‬ ‫המשתנים‬ ‫כל‬ .‫ג‬
‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ 4.2
:‫אם‬
.(0 ‫כולם‬ ‫)שלא‬ ‫קבועים‬ a1, . . . , ak ∈ Zp
.‫וב"ת‬ ‫אחיד‬ ‫באופן‬ ‫מוגרלים‬ x1, . . . , xk ∈ Zp
:‫אזי‬
.Zp ‫מעל‬ ‫אחיד‬ ‫מתפלג‬ - xk+1 = a1x1 + · · · + akxk
.Pr (xk+1 = v) = 1
p :v ∈ Zp ‫לכל‬ ,‫אחרות‬ ‫במילים‬
‫בולאניים‬ ‫מעגלים‬ ‫מול‬ ‫פולינומים‬ 5
XOR ‫שער‬ - ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ 5.1
1 = T, 0 = F :‫תזכורת‬
‫פלט‬
?>=<89:;∨
OO1
1
1
?>=<89:;∧
66llllllllll ?>=<89:;∧
hh‚‚‚‚‚‚‚‚‚‚
?>=<89:;¬
33ggggggggggggggggg ?>=<89:;¬
kk‡‡‡‡‡‡‡‡‡‡‡‡‡‡‡‡‡
x1
OO
=={{{{
x2
aagggg
OO
XOR ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ :1 ‫איור‬
.‫מעגלים‬ ‫ללא‬ ‫מכוון‬ ‫גרף‬ :‫בולאני‬ ‫מעגל‬
.0 ‫כניסה‬ ‫דרגת‬ ‫קלטים‬
.0 ‫יציאה‬ ‫דרגת‬ ‫פלטים‬
5
‫בולאניים‬ ‫מעגלים‬ ‫מול‬ ‫פולינומים‬ 5‫החישובים‬ ‫מורכבות‬
‫המעגל‬ ‫חיזוק‬ 5.2
.‫וקטן‬ ‫קבוע‬ ,‫ראשוני‬ ‫הוא‬ q ‫כאשר‬ Zq ‫משדה‬ ‫יהיו‬ (0/1)Z2-‫ב‬ ‫להיות‬ ‫במקום‬ ,‫הביניים‬ ‫תוצאות‬
:MOD ‫שער‬ - ‫נוסף‬ ‫מסוג‬ ‫שער‬ ‫ונוסיף‬
MODq (y1, . . . , ym) =
{
0
∑m
i=1 yi = 0
1
∑m
i=1 yi ̸= 0
‫פולינומים‬ 5.3
(‫יחיד‬ ‫)משתנה‬ ‫הגדרה‬ 5.3.1
P (y) =
∑
1≤i≤d
aiyi
.d = deg (P (y))-‫ו‬ ad ̸= 0 ‫כאשר‬ ,‫בשדה‬ ‫קבועים‬ ‫הם‬ ‫-ים‬a-‫ה‬ ‫כל‬ ‫כאשר‬
‫רב-משתנים‬ ‫לפולינום‬ ‫דוגמה‬ 5.3.2
:5.1 ‫דוגמא‬
2 · y1
deg=1
+3 · (y2)
4
deg=4
+1 · (y1)
3
· (y2)
2
deg=3+2=5
deg = max {1, 4, 5} = 5 :‫היא‬ ‫הפולינום‬ ‫דרגת‬ ‫ולכן‬
‫נמוכה‬ ‫מדרגה‬ ‫פולינומים‬ ‫ע"י‬ ‫מעגלים‬ ‫קרוב‬ 5.4
‫מעגלים‬ ‫סדרת‬ 5.4.1
‫הגדרה‬
‫הפלט‬ ‫את‬ ‫מניב‬ Cn (x1, . . . , xn) :‫מתקיים‬ x1, . . . , xn ‫קלט‬ ‫לכל‬ ‫אם‬ ‫חישובית‬ ‫בעיה‬ ‫פותרת‬ {Cn} ‫מעגלים‬ ‫סדרת‬
.‫הנכון‬
‫יעילות‬
.Cn ‫במעגל‬ ‫הצלעות‬ ‫מספר‬ ‫ע"פ‬ {Cn} ‫של‬ ‫היעילות‬ ‫את‬ ‫למדוד‬ ‫מקובל‬
‫פולינומים‬ ‫סדרת‬ 5.4.2
‫הגדרה‬
.‫הנכון‬ ‫הפלט‬ ‫את‬ ‫מניב‬ Pn (x1, . . . , xn) x1, . . . , xn ‫קלט‬ ‫לכל‬ ‫אם‬ ‫חישובית‬ ‫בעיה‬ ‫פותרת‬ {Pn} ‫פולינומים‬ ‫סדרת‬
‫יעילות‬
.deg (Pn) ‫הפולינום‬ ‫כדרגת‬ {Pn} ‫של‬ ‫היעילות‬ ‫את‬ ‫למדוד‬ ‫מקובל‬
‫משפט‬
‫השדה‬ ‫)מעל‬ ‫יחסית‬ ‫קטנה‬ ‫מדרגה‬ ‫פולינומים‬ ‫סדרת‬ ‫ע"י‬ ‫לקרב‬ ‫ניתן‬ ‫יחסית‬ ‫קטן‬ s ‫שערים‬ ‫מספר‬ ‫עם‬ cn ‫מעגלים‬ ‫סדרת‬ ‫כל‬
.(‫ראשוני‬ q ‫כאשר‬ ,Zq
.Prx1,...,xn
[Pn (x1, . . . , xn) ̸= Cn (x1, . . . , xn)] = o (1) ,‫כלומר‬
.‫לאפס‬ ‫שואף‬ ⇐ o (1) :‫למעלה‬ ‫שלנו‬ ‫ובמקרה‬ ,
f(n)
g(n)
−−−−→
n→∞
0 ‫אם‬ f (n) = o (g (n)) :‫תזכורת‬
6
‫בולאניים‬ ‫מעגלים‬ ‫מול‬ ‫פולינומים‬ 5‫החישובים‬ ‫מורכבות‬
‫לפולינומים‬ (‫)מעגלים‬ ‫שערים‬ ‫המרת‬ 5.5
‫פרמה‬ ‫משפט‬ 5.5.1
:(a p) p-‫ל‬ ‫שזר‬ a ‫לכל‬ ‫אזי‬ ,‫ראשוני‬ p ‫אם‬
ap−1
≡ 1 (mod p)
NOT ‫שער‬ 5.5.2
PNOT (y) = 1 − y
MOD ‫שער‬ 5.5.3
PMOD (y1, . . . , yn) =
( n∑
i=1
yi
)q−1
=
{
0
∑
yi = 0
1
∑
yi ̸= 0
AND ‫שער‬ 5.5.4
@@@@@@@@@@@@@@@@@@@@@
PAND (y1, . . . , ym) =
m∏
i=1
yi =
{
1
∏
yi = 1
0 ∃i (yi) = 0
:‫זאת‬ ‫ובמקום‬ ‫זאת‬ ‫נפסול‬ ‫לכן‬ - (m) ‫עצומה‬ ‫דרגה‬ ‫בעל‬ ‫אבל‬ ‫מדויק‬
PAND (y1, . . . , ym) = 1 − (POR (1 − y1, . . . , 1 − ym))
OR ‫שער‬ 5.5.5
.‫לשגיאה‬ ‫קטן‬ ‫סיכוי‬ ‫כבר‬ ‫יש‬ ‫ולכן‬ ‫הסתברות‬ ‫מכניסים‬ ‫כבר‬ ‫אנחנו‬ OR-‫ה‬ ‫בשער‬
.(‫מדויק‬ ‫)ולא‬ ‫מקורב‬ ‫פתרון‬ ‫פירושו‬ - P :‫נסמן‬
:(5.5.1) ‫פרמה‬ ‫ובמשפט‬ (4.2) ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫בעיקרון‬ ‫נשתמש‬
POR (y1, . . . , ym) =
( m∑
i=1
aiyi
)q−1
.‫וב"ת‬ ‫אחיד‬ ‫באופן‬ ‫מוגרלים‬ a1, . . . , am ∈ Zq ‫כאשר‬
:‫יהיה‬ ‫הסופי‬ ‫השער‬ ,‫לבסוף‬
POR (y1, . . . , ym) = POR
(
P
(1)
OR (y1, . . . , ym) , . . . , P
(r)
OR (y1, . . . , ym)
)
7
‫לינאריות‬ ‫בדיקת‬ 7‫החישובים‬ ‫מורכבות‬
‫מסכמת‬ ‫טבלה‬ 5.6
Pr (‫)שגיאה‬ deg
NOT 0 1
MOD 0 q − 1
OR 1
q q − 1 ‫הגברה‬ ‫לפני‬
1
qr r (q − 1) ‫הגברה‬ ‫אחרי‬
AND 1
qr r (q − 1)
‫הקירוב‬ ‫משפט‬ 5.7
‫משפט‬
‫השדה‬ ‫)מעל‬ {Pn} ‫פולינומים‬ ‫סדרת‬ ‫ע"י‬ ‫לקרב‬ ‫ניתן‬ ,d ‫קבוע‬ ‫בעומק‬ s = 2
O
(
n
1
2d
)
‫מגודל‬ {Cn} ‫מעגלים‬ ‫סדרת‬ ‫כל‬
.O (
√
n) - ‫יחסית‬ ‫קטנה‬ ‫מדרגה‬ (‫וקבוע‬ ‫ראשוני‬ q ‫כאשר‬ Zq
(‫קירוב‬ ‫)יחס‬ ‫פקטור‬ 6
:‫כרצוננו‬ ‫טוב‬ ‫קירוב‬ ‫לקבל‬ ‫היא‬ ‫מטרה‬
A
‫אלגוריתם‬
(
x
‫קלט‬
, ε
‫דיוק‬ ‫דרישת‬
)
.1 − ε :‫קירוב‬ ‫פקטור‬ - ‫מקסימיזציה‬ ‫בעיית‬
.1 + ε :‫קירוב‬ ‫פקטור‬ - ‫מינימיזציה‬ ‫בעיית‬
Poly
(
n, 1
ε
)
:‫הריצה‬ ‫זמן‬
.n3
· 2(1
ε ) :‫פולינומי‬ ‫לא‬ ‫ריצה‬ ‫לזמן‬ ‫דוגמה‬ ,n3
·
(1
ε
)2
:‫פולינומי‬ ‫ריצה‬ ‫לזמן‬ ‫דוגמה‬
‫לינאריות‬ ‫בדיקת‬ 7
‫לינאריות‬ ‫ופונקציות‬ ‫בולאניות‬ ‫פונקציות‬ ‫הגדרת‬ 7.1
:‫הבולאניות‬ ‫הפונקציות‬ ‫כל‬ ‫קבוצת‬ ‫זאת‬ Hn
Hn =
{
h h : {0, 1}
n
→ {0, 1}
}
:‫למשל‬
f : {0, 1}
n
→ {0, 1}
f (⃗x) =
n∑
i=1
xi
.1 ‫אחרת‬ 0 ‫מחזירה‬ ‫היא‬ ‫זוגי‬ ‫הוא‬ ‫בו‬ ‫האחדות‬ ‫מספר‬ ‫ואם‬ {0, 1}-‫מ‬ ‫המורכב‬ n ‫באורך‬ ‫וקטור‬ ‫המקבלת‬ ‫פונקציה‬ ‫זוהי‬
.f ∈ Hn ‫כמובן‬
‫הבולאניות‬ ‫הפונקציות‬ ‫כמות‬ 7.1.1
.2(2n
)
= 4n
‫היא‬ ‫הבולאניות‬ ‫הפונקציות‬ ‫כמות‬
:‫הסבר‬
2n
‫עבור‬ ‫לכן‬ ,‫לפלט‬ ‫אפשרויות‬ ‫שתי‬ ‫לנו‬ ‫יש‬ ‫אפשרות‬ ‫ולכל‬ ‫קלט‬ ‫לווקטורי‬ ‫אפשרויות‬ 2n
‫לנו‬ ‫יש‬ n ‫באורך‬ ‫וקטור‬ ‫עבור‬
.4n
- ‫אפשריות‬ ‫תוצאות‬ 2(2n
)
‫סה"כ‬ ‫לנו‬ ‫יש‬ ‫אפשרויות‬
8
‫לינאריות‬ ‫בדיקת‬ 7‫החישובים‬ ‫מורכבות‬
‫לינאריות‬ ‫פונקציות‬ 7.1.2
:Ln ‫של‬ ‫ההגדרה‬ .‫לינאריות‬ ‫גם‬ ‫שהם‬ ‫הבולאניות‬ ‫הפונקציות‬ ‫קבוצת‬ ‫זוהי‬ Ln
Ln =
{
h h ∈ Hn ∧ (h (⃗x) + h (⃗y) = h (⃗x + ⃗y))
}
.‫כמובן‬ f (x) ∈ Ln
:⃗x + ⃗y ‫של‬ ‫ההגדרה‬
(⃗x + ⃗y) = (x1 + y1, x2 + y2, . . . , xn + yn)
‫הסטטיסטי‬ ‫המרחק‬ 7.2
‫פונקציות‬ ‫שתי‬ ‫בין‬ ‫הסטטיסטי‬ ‫המרחק‬ 7.2.1
‫קלטים‬ ‫מגרילים‬ ‫אנחנו‬ :‫הסתברותיים‬ ‫לכלים‬ ‫עוברים‬ ‫אנחנו‬ ‫אזי‬ ,Ω (2n
) :‫עצום‬ ‫הוא‬ f ∈ Hn ‫של‬ ‫הקלטים‬ ‫ומרחב‬ ‫היות‬
.‫תלוי‬ ‫ובלתי‬ ‫אחיד‬ ‫באופן‬
.⃗x ∈ {0, 1}
n
:‫נגדיר‬
∆ (f, g) = Pr [f (⃗x) ̸= g (⃗x)]
:‫אזי‬ 2n
-‫ה‬ ‫מתוך‬ ‫קלטים‬ ‫בשני‬ ‫רק‬ ‫נבדלות‬ (‫מהן‬ ‫כרגע‬ ‫משנה‬ ‫)שלא‬ f, g ∈ Hn ‫הפונקציות‬ ‫כי‬ ‫נניח‬
∆ (f, g) = Pr [f (⃗x) ̸= g (⃗x)] =
2
2n
=
1
2n−1
‫לינארית‬ ‫לפונקציה‬ ‫סטטיסטי‬ ‫מרחק‬ 7.2.2
.‫לינארית‬ ‫אינה‬ f ∈ Hn ‫הפונקציה‬ ‫כי‬ ‫נניח‬
:‫כעת‬
∆ (f) = min
l∈Ln
{∆ (f, l)}
‫לינארית‬ ‫פונקציה‬ ‫לבין‬ f ‫בין‬ ‫הבדל‬ ‫פחות‬ ‫כמה‬ ‫שיש‬ ‫זאת‬ - "‫קרובה‬ ‫"הכי‬ ‫הלינארית‬ ‫הפונקציה‬ ‫את‬ ‫מחפשים‬ ‫אנחנו‬ ,‫כלומר‬
.‫כלשהי‬
‫המרכזי‬ ‫המשפט‬ 7.3
:‫מתקיים‬ f ∈ Hn ‫פונקציה‬ ‫לכל‬
ε (f) ≤ 3 · ∆ (f) (1)
∆ (f) ≤ 3 · ε (f) (2)
.ε (f) < 1
6 ‫כאשר‬ ‫רק‬ ‫מתקיים‬ (2) ‫חלק‬
.‫לינארית‬ ‫לפונקציה‬ ‫סטטיסטית‬ ‫קרבה‬ ‫בין‬ ‫קשר‬ ‫לנו‬ ‫נותן‬ ‫המשפט‬
‫התפלגות‬ ‫שיש‬ ‫)בהנחה‬ ‫הקלט‬ ‫של‬ ‫דגימות‬ ‫עושים‬ ‫אנחנו‬ ‫אזי‬ ,‫לינארית‬ ‫היא‬ ‫הפונקציה‬ ‫האם‬ ‫לבדוק‬ ‫ניתן‬ ‫תמיד‬ ‫ולא‬ ‫היות‬
.(‫לקלטים‬ ‫אחידה‬
9
‫חישובים‬ ‫מורכבות‬ 8‫החישובים‬ ‫מורכבות‬
II ‫חלק‬
‫טיורינג‬ ‫מכונות‬
‫חישובים‬ ‫מורכבות‬ 8
.‫קוגניטיבית‬ ‫מורכבות‬ ‫על‬ ‫ולא‬ (‫המחשב‬ ‫של‬ ‫)משאבים‬ ‫אלגוריתמית‬ ‫מורכבות‬ ‫על‬ ‫כאן‬ ‫על‬ ‫ידובר‬
‫אלגוריתם‬ ‫מאפיין‬ ‫מה‬ 8.1
‫נתונים‬ 8.1.1
(‫)בהתחלה‬ ‫קלט‬
.‫ביניים‬ ‫תוצאת‬
.(‫)בסוף‬ ‫פלט‬
:‫עיקריות‬ ‫תכונות‬ ‫שלוש‬ ‫ישנן‬ ‫כאשר‬
.‫מוסכם‬ ‫קידוד‬ ‫לכולם‬ ‫יש‬ .1
.(‫סופי‬ ‫הוא‬ ‫גם‬ ‫)הקידוד‬ ‫סופי‬ ‫גודל‬ ‫בעל‬ ‫כולם‬ .2
.(‫גודל‬ ‫בכל‬ ‫להיות‬ ‫יכולים‬ ‫אבל‬ ,‫סופי‬ ‫בגודל‬ ‫הם‬ ,‫)כלומר‬ ‫חסום‬ ‫אינו‬ ‫הנתונים‬ ‫גודל‬ .3
‫חוקים‬ 8.1.2
:‫תכונות‬ ‫כמה‬ ‫גם‬ ‫ישנן‬ (8.1.1 ‫הנתונים‬ ‫עם‬ ‫לעבוד‬ ‫איך‬ ‫)של‬ ‫החוקים‬ ‫מבחינת‬
.(‫דרכים‬ ‫בכמה‬ ‫חוק‬ ‫חוק‬ ‫לפרש‬ ‫ניתן‬ ‫לא‬ ,‫)כלומר‬ .‫חד-משמעיים‬ ‫הם‬ ‫החוקים‬
.‫מופעל‬ ‫חוק‬ ‫איזה‬ ‫ידוע‬ (‫צעד‬ ‫)בכל‬ ‫רגע‬ ‫בכל‬
.‫סופי‬ ‫הוא‬ ‫החוקים‬ ‫מספר‬
.‫החישוב‬ ‫מקומיות‬
:‫הבא‬ ‫באופן‬ ‫עובד‬ ‫חוק‬ ‫כל‬
.‫נתונים‬ Θ (1) ‫קרא‬ .1
.‫עליהם‬ ‫מקומית‬ ‫פעולה‬ ‫עשה‬ .2
.‫אחרים‬ ‫נתונים‬ Θ (1) ‫כתוב‬ .3
10
‫חישוב‬ ‫מכונות‬ 9‫החישובים‬ ‫מורכבות‬
‫היסודית‬ ‫השאלה‬ 8.2
.‫אותה‬ ‫לפתור‬ ‫שיכול‬ ‫אלגוריתם‬ ‫יש‬ (‫חישובית‬ ‫)בעיה‬ ‫בעיה‬ ‫לכל‬ ‫האם‬ ‫בחישוביות‬ ‫היסודית‬ ‫השאלה‬
.‫נכון‬ ‫פלט‬ ‫סופי‬ ‫בזמן‬ ‫מפיקה‬ ‫קלט‬ ‫שעל‬ (‫חישוב‬ ‫)שיטת‬ ‫אלגוריתם‬ ‫ישנו‬ ,‫כלומר‬
(39 ‫בעמוד‬ i ‫בהוכחה‬ ‫העצירה‬ ‫בעיית‬ ‫את‬ ‫לראות‬ ‫)ניתן‬ !‫לא‬ - (1936) ‫טיורינג‬ ‫ע"פ‬
‫חישוב‬ ‫מכונות‬ 9
:‫החישוב‬ ‫במכונת‬ ‫נתונים‬ ‫של‬ ‫מקומות‬ ‫שלוש‬ ‫ישנם‬
.‫קלט‬ .1
.‫ביניים‬ ‫תוצאת‬ .2
.‫פלט‬ .3
.‫חסום‬ ‫ולא‬ ‫סופי‬ ‫הוא‬ ‫מאלה‬ ‫אחד‬ ‫כל‬ ‫של‬ ‫הקידוד‬ ‫כאשר‬
‫קלט‬ ‫סרט‬ △ a b
↑
‫עבודה‬ ‫סרט‬ △ d c e
↑
‫פלט‬ ‫סרט‬ △ f g
↑
Σ - ‫וסופי‬ ‫מוסכם‬ ‫מאלף-בית‬ ‫אות‬ ‫תא‬ ‫בכל‬
9
8
6
7
‫טיורינג‬ ‫למכונת‬ ‫דוגמה‬ :2 ‫איור‬
‫החישוב‬ ‫אופן‬ 9.1
.‫סופית‬ Q ‫מצבים‬ ‫קבוצת‬ ‫ישנה‬
:‫הבא‬ ‫באופן‬ ‫מתבצע‬ ‫חישוב‬
‫מעברים‬ ‫פונקציית‬f (q, σI, σW , σO) = (q′
, σI, dI, σ′
W , dW , σW , dO)
.(‫בהתאמה‬ .‫פלט‬ ,‫עבודה‬ ,‫)קלט‬ Input, Work, Output :‫המכונה‬ ‫סרטי‬ ‫שלושת‬ ‫את‬ ‫מסמלים‬ - I, W, O ‫כאשר‬
.σ ∈ Σ, d ∈ {L, S, R} = {Left, Stay, Right}
.‫הבא‬ ‫המצב‬ = q′
.(↑-‫ב‬ ‫מסומן‬ ‫זה‬ ‫)אצלנו‬ ‫קורא‬ ‫ראש‬ ‫סרט‬ ‫לכל‬
‫חישוב‬ ‫מתבצע‬ ‫כיצד‬ 9.1.1
‫אתחול‬
. ‫ואחריו‬ ‫קלט‬ ‫רשום‬ - ‫קלט‬ ‫סרט‬
. - ‫ריקים‬ - ‫עבודה/פלט‬ ‫סרט‬
.(‫)בהתחלה‬ ‫בקצה‬ ‫הסרטים‬ ‫בכל‬ ‫קורא‬ ‫ראש‬
.‫באתחול‬ ‫המכונה‬ ‫נמצאת‬ ‫ובו‬ qstart ∈ Q ‫מצב‬ ‫יש‬
‫החישוב‬ ‫עצירת‬
.‫החישוב‬ ‫לעצירה‬ ‫גורמת‬ ‫אליהם‬ ‫שהגעה‬ Q′
⊆ Q ‫מצבים‬ ‫של‬ ‫תת-קבוצה‬ ‫יש‬
.‫כפלט‬ ‫שנחשב‬ ‫מה‬ ‫זה‬ - ‫העצירה‬ ‫ברגע‬ ‫הפלט‬ ‫בסרט‬ ‫שרשום‬ ‫מה‬
11
‫אוניברסליות‬ 10‫החישובים‬ ‫מורכבות‬
‫החישוב‬ ‫פלט‬ ‫סימון‬ 9.1.2
:‫מסומן‬ ‫החישוב‬ ‫פלט‬
M (x)
[x ‫קלט‬ ‫עם‬ M ‫]מכונה‬
.M (x) = ∞ :‫מסמנים‬ ‫צעדים‬ ‫אינסוף‬ ‫מבצע‬ ‫חישוב‬ ‫אם‬
.‫בלבד‬ ‫לקריאה‬ - ‫הקלט‬ ‫סרט‬
.‫בלבד‬ ‫לכתיבה‬ - ‫הפלט‬ ‫סרט‬
‫טיורינג‬ ‫מכונת‬ ‫של‬ ‫וריאנטים‬ 9.2
‫מכילה‬ ‫היא‬ ‫מה‬ ‫המכונה‬ ‫וריאנט‬
‫סופי‬ Σ ,‫פלט‬ ‫סרט‬ ,‫עבודה‬ ‫סרט‬ ,‫קלט‬ ‫סרט‬ ‫סטנדרטית‬ ‫טיורינג‬ ‫מכונת‬
‫עבודה‬ ‫-סרטי‬k ‫שיש‬ ‫רק‬ ‫סטנדרטית‬ ‫טיורינג‬ ‫מכונת‬ ‫כמו‬ ‫דבר‬ ‫אותו‬ ‫מחוזקת‬ ‫טיורינג‬ ‫מכונת‬
‫סופי‬ Σ ,‫יחיד‬ ‫סרט‬ ‫מוחלשת‬ ‫טיורינג‬ ‫מכונת‬
‫בינארי‬ Σ ,‫יחיד‬ ‫סרט‬ ‫מאוד‬ ‫מוחלשת‬ ‫טיורינג‬ ‫מכונת‬
..‫כך‬ ‫נקרא‬ RAM ‫עם‬ ‫למ"ט‬ ‫לכן‬ ‫במ"ט‬ ‫שאין‬ ‫מה‬ ‫אקראית‬ ‫גישה‬ ‫יש‬ ‫מודרני‬ ‫למחשב‬ RAM ‫מחוזקת‬ ‫טיורינג‬ ‫מכונת‬
‫המרכזי‬ ‫המשפט‬ 9.2.1
:9.1 ‫משפט‬
.‫שקולים‬ ‫המודלים‬ ‫כל‬
.M′
(x) = M (x) :x ‫קלט‬ ‫שלכל‬ ‫כך‬ ‫בינארי‬ Σ ‫יחיד‬ ‫סרט‬ ‫עם‬ ‫מוחלשת‬ M′
‫מ"ט‬ ‫יש‬ M ‫מודרני‬ ‫מחשב‬ ‫לכל‬
‫יעילה‬ ‫סימולציה‬ 9.2.2
:‫קבוע‬ c ‫כאשר‬
Time (M′
(x)) ≤ (Time (M (x)))
c
‫סימולציה‬ ‫זמן‬ 9.2.3
:‫למכונה‬ ‫ממכונה‬ ‫מעבר‬ ‫בין‬ ‫יש‬ ‫האטה‬ ‫זמן‬ ‫כמה‬
‫מ"ט‬
‫מוחלשת‬
‫מאוד‬
‫מ"ט‬
‫מוחלשת‬
O(1)
kk
‫מ"ט‬
‫מחוזקת‬
O(n2
)
kk
‫מ"ט‬
‫מחוזקת‬
RAM
O(n2
)
kk
‫מחשב‬
‫מודרני‬
O(1)
kk
‫אוניברסליות‬ 10
.‫נפרדת‬ ‫מכונה‬ ‫היה‬ ‫אלגוריתם‬ ‫כל‬ ‫טיורינג‬ ‫עד‬
.‫אוניברסלית‬ ‫מכונה‬ ‫היא‬ ‫טיורנג‬ ‫מכונת‬
12
‫חישובית‬ ‫מורכבות‬ 12‫החישובים‬ ‫מורכבות‬
:10.1 ‫משפט‬
:‫מקיים‬ M ‫מ"ט‬ ‫של‬ ‫קידוד‬ M ‫כאשר‬ - ⟨M⟩ , x - ‫קלט‬ ‫שכל‬ MU ‫אוניברסלית‬ ‫מכונה‬ ‫יש‬
.MU (⟨M⟩ , x) = M (x) :x ‫קלט‬ ‫לכל‬ :‫נכונות‬
.T = Time (M (x)) ‫כאשר‬ Time (MU (⟨M⟩ , x)) ≤ Θ (T · ln T) :‫יעילות‬
‫אלגוריתם‬ ‫של‬ ‫יעילות‬ 11
:‫אם‬ ‫יעיל‬ ‫יקרא‬ M ‫אלגוריתם‬
max
|x|=n
(Time (M (x))) = Θ (nc
)
.‫קבוע‬ c ‫כאשר‬
.‫הקלט‬ ‫באורך‬ ‫כתלות‬ ‫בזמן‬ ‫יעילות‬ ‫מודדים‬ ‫שאנחנו‬ ‫הוא‬ ‫הרעיון‬
.‫פולינומי‬ ‫בזמן‬ ‫רץ‬ ‫הוא‬ ‫אם‬ ,‫יעיל‬ ‫הוא‬ ‫אלגוריתם‬ ,‫כלומר‬
.‫סביר‬ ‫בזמן‬ ‫מודרני‬ ‫מחשב‬ ‫על‬ ‫רץ‬ - n · log n, n2
, n3
- ‫יעיל‬
.‫יעיל‬ ‫לא‬ ‫בזמן‬ ‫מודרני‬ ‫מחשב‬ ‫על‬ ‫רץ‬ - 2n
, n! - ‫יעיל‬ ‫לא‬
III ‫חלק‬
(‫)חזרה‬ ‫חישוביות‬
:‫הבסיסית‬ ‫מהשאלה‬ ‫נתחיל‬
?‫כריעות‬ ‫לא‬ ‫בעיות‬ ‫יש‬ ‫האם‬
.HALT -‫העצירה‬ ‫בעיית‬ ‫את‬ ‫יש‬ - ‫שכן‬ ‫היא‬ ‫התשובה‬
‫כריעות‬ ‫לא‬
•HALT
‫כריעות‬
‫חישובית‬ ‫מורכבות‬ 12
?(‫קלות‬ ‫שכולן‬ ‫)או‬ ‫קשות‬ ‫כריעות‬ ‫בעיות‬ ‫ישנן‬ ‫האם‬ "‫הבאה‬ ‫השאלה‬ ‫נשאלת‬ ‫כעת‬
,‫כלומר‬
‫כריע‬ ‫לא‬
‫כריע‬ ‫לא‬ :‫או‬ ‫קשה‬ ‫כריע‬
‫קל‬ ‫כריע‬ ‫קל‬ ‫כריע‬
.‫פולינומי‬ ‫בזמן‬ ‫פתיר‬ ‫קל‬
.‫פולינומי‬ ‫סופר‬ ‫בזמן‬ ‫אלגוריתם‬ ‫כל‬ ‫קשה‬
‫ההיררכיה‬ ‫משפט‬ 12.1
:‫הגדרה‬
:‫הבאה‬ ‫הפונקציה‬ ‫את‬ ‫נגדיר‬ ,T : N → N :‫בהינתן‬
DTIME (T) = Time (T) =
{
L Θ (T (n)) ‫בזמן‬ L ‫את‬ ‫שמכריעה‬ M ‫מ"ט‬ ‫יש‬
}
.(n ‫)או‬ .‫הקלט‬ ‫אורך‬ ‫הוא‬ L ‫כאשר‬
:‫למשל‬
L =
{
G ‫קשיר‬ ‫גרף‬ G
}
∈ Time (n)
:Time ‫של‬ ‫מחלקות‬ ‫כמה‬ ‫על‬ ‫נסתכל‬ ‫כעת‬
13
‫טבעית‬ ‫בעיות‬ 13‫החישובים‬ ‫מורכבות‬
Time (2n
)
P
Time
(
n3
)
Time
(
n2
)
Time (n)
§
¦
¤
¥
#
" !
5
4
2
3
'
&
$
%
9
8
6
7
:‫היא‬ ‫שלה‬ ‫וההגדרה‬ ‫הפולינומית‬ ‫המחלקה‬ ‫היא‬ P
P =
∪
k∈N
DTIME
(
nk
)
(.‫הריצה‬ ‫כדי‬ ‫תוך‬ ‫שקורה‬ ‫מה‬ ‫אלא‬ ‫הפלט/קלט‬ ‫לא‬ ‫היא‬ ‫הבעיה‬ ‫לכן‬ .‫ביט‬ ‫בד"כ‬ ‫הוא‬ ‫הפלט‬ ,‫הכרעה‬ ‫בבעיית‬ ‫ומדובר‬ ‫)היות‬
:12.1 ‫משפט‬
.(‫)סבירות‬ T1, T2 : N → N ‫לכל‬
:T1 ‫בזמן‬ ‫להכריע‬ ‫ניתן‬ ‫לא‬ ‫אבל‬ T2 ‫בזמן‬ ‫להכריע‬ ‫שניתן‬ ‫בעיות‬ ‫יש‬ ‫אזי‬ T1 ln T1 ≪ T2 ‫אם‬
∃L ∈ DTIME (T2) DTIME (T1)
.40 ‫בעמוד‬ ‫נמצאת‬ 1
‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬
‫כריעות‬ ‫אינן‬ ‫)ובפרט‬ Θ (2n
)-‫ב‬ ‫כריעות‬ ‫אינן‬ ‫אבל‬ Θ (3n
) :‫בזמן‬ ‫שכריעות‬ ‫בעיות‬ ‫יש‬ ‫אזי‬ :T1 = 2n
, T2 = 3n
:‫למשל‬
.(‫פולינומי‬ ‫בזמן‬
‫טבעית‬ ‫בעיות‬ 13
?‫קשות‬ (‫)מעניינות‬ ‫טבעיות‬ ‫בעיות‬ ‫ישנן‬ ‫אם‬ ‫השאלה‬
?‫טבעית‬ ‫בעיה‬ ‫נגדיר‬ ‫כיצד‬ 13.1
.S (‫השאלה‬ ‫על‬ ‫ְעונה‬) ‫חוקי‬ ‫פתרון‬ ‫למצוא‬ ‫צריך‬ ,‫קלט‬ ‫בהינתן‬ ,‫כלומר‬ ,‫חיפוש‬ ‫בבעיות‬ ‫נתמקד‬ ‫טבעית‬ ‫בעיה‬ ‫להגדיר‬ ‫כדי‬
?‫טבעית‬ ‫לא‬ ‫חיפוש‬ ‫בעיית‬ ‫נגדיר‬ ‫איך‬ 13.2
.x ‫לקלט‬ ‫ביחס‬ ‫חוקי‬ ‫פתרון‬ S ‫האם‬ ,‫ביעילות‬ ‫לבדוק‬ ‫ניתן‬ ‫לא‬ ,S ‫פתרון‬ ‫הצעת‬ ‫בהינתן‬ ‫אפילו‬
:‫הבא‬ ‫הדבר‬ ‫מתקיים‬ ‫אם‬ ‫טבעית‬ ‫נקראת‬ ‫חיפוש‬ ‫בעיית‬ ,‫אחרות‬ ‫במילים‬
.x ‫לקלט‬ ‫ביחס‬ ‫חוקי‬ ‫פתרון‬ S ‫האם‬ ‫לבדוק‬ ‫ניתן‬ ,(‫פתרון‬ ‫)הצעת‬ S ‫בהינתן‬
:13.1 ‫דוגמא‬
‫כלשהו‬ ‫מספר‬ - n ,‫מספרים‬ ‫של‬ A ‫קבוצה‬ ‫לנו‬ ‫נתונה‬ ‫שבה‬ (SUBSET-SUM) ‫הסכום‬ ‫בעיית‬ ‫את‬ ‫למשל‬ ‫ניקח‬
.‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬1
14
NP ‫המחלקה‬ 14‫החישובים‬ ‫מורכבות‬
:‫שיתקיים‬ ‫כך‬ S ⊆ A ‫תת-קבוצה‬ ‫קיימת‬ ‫האם‬ :‫היא‬ ‫והשאלה‬
|S|
∑
i=0
Si = n
?n ‫הוא‬ ‫אבריה‬ ‫שסכום‬ (S) A ‫של‬ ‫תת-קבוצה‬ ‫קיימת‬ ‫האם‬ - ‫אחרות‬ ‫במילים‬ ‫או‬
.A ‫של‬ ‫תת-קבוצה‬ ‫זוהי‬ S-‫ו‬ ,n ‫והחסם‬ (A) ‫הקבוצה‬ ‫זאת‬ x ‫כאן‬ ‫כלומר‬
:13.2 ‫דוגמא‬
‫ליטרלים‬ k ‫יש‬ ‫שלו‬ ‫פסוקית‬ ‫שבכל‬ CNF ‫פסוק‬ ‫לנו‬ ‫נתון‬ ‫שבה‬ ‫בעיה‬ .k − SAT-‫ה‬ ‫בעיית‬ ‫היא‬ ‫נוספת‬ ‫דוגמה‬
:‫למשל‬ .(‫שלילתם‬ ‫או‬ ‫)משתנים‬
C =
∧

α1 ∨ · · · ∨ αk
‫ליטרלים‬ k


.αi ∈ {x1, . . . xn, x1, . . . , xn} :‫מתקיים‬ 1 ≤ i ≤ k ‫לכל‬ ‫כאשר‬
.‫אמת‬ ‫הערך‬ ‫את‬ ‫תתן‬ C ‫)כלומר‬ C = T-‫ש‬ ‫כך‬ - xi ∈ {T, F} :i ‫לכל‬ ,‫כלומר‬ ,‫השמה‬ ‫ישנה‬ ‫האם‬ ‫היא‬ ‫השאלה‬
.(C ‫את‬ ‫תספק‬ ‫ההשמה‬
.‫השמה‬ ‫תהיה‬ S-‫ו‬ ,(φ ‫הפסוקית‬ ‫של‬ ‫קידוד‬ ‫שזה‬ ‫בגלל‬ ‫זה‬ ⟨⟩-‫)ה‬ ⟨φ⟩-‫ב‬ ‫שנסמנה‬ ‫הפסוקית‬ ‫תהיה‬ x ‫כאן‬ ‫אזי‬
.‫טבעית‬ ‫שלה‬ ‫החיפוש‬ ‫גרסת‬ ‫אם‬ ‫טבעית‬ ‫נקראת‬ ‫הכרעה‬ ‫בעיית‬
:‫ביעילות‬ ‫לבדוק‬ ‫ניתן‬
:(‫פתרון‬ - S ,‫קלט‬ - x) ‫טיורינג‬ ‫מכונת‬ ‫יש‬
M (x, S) =
{
Accept x − ‫ל‬ ‫ביחס‬ ‫חוקי‬ S
Reject ‫אחרת‬
NP ‫המחלקה‬ 14
:‫דברים‬ ‫שלושה‬ ‫לקיים‬ ‫צריכה‬ ‫היא‬ ,L ∈ NP ‫כלומר‬ ,NP ‫למחלקה‬ ‫שייכת‬ ‫תהיה‬ L ‫ששפה‬ ‫בשביל‬
‫תקבל‬ ‫היא‬ ‫אם‬ ‫אמת‬ ‫תחזיר‬ ,‫השפה‬ ‫את‬ ‫שמכריעה‬ M ‫)המכונה‬ L ‫בשפה‬ ‫נמצא‬ x ‫הקלט‬ ,‫כלומר‬ ,x ∈ L ‫אם‬ ‫שלמות‬
:(‫כקלט‬ x ‫את‬
∃S ⇒ M (x, S) = Accept
:‫אזי‬ ,x /∈ L ‫אם‬ ‫נאותות‬
∀S ⇒ M (x, S) = Reject
:‫קבוע‬ c, d, f < 0 ‫עבור‬ ‫יעילות‬
Time (M (x, S)) ≤ Θ (|x|
c
)
:‫נדרוש‬ ,‫הרבה‬ ‫מאיתנו‬ ‫יידרש‬ ‫לא‬ ‫הפתרון‬ ‫שגם‬ ‫כדי‬ ‫אבל‬
Time (M (x, S)) ≤ Θ
(
(|x| + |S|)
d
)
.|S| ≤ Θ
(
|x|
f
)
:‫הוא‬ ‫שלהן‬ ‫שהאורך‬ ‫פתרונות‬ ‫על‬ ‫רק‬ (‫כימות‬ ‫נעשה‬ ‫)או‬ ‫נדרוש‬ ‫לכן‬
15
‫פולינומית‬ ‫רדוקציה‬ - (Karp) ‫קארפ‬ ‫רדוקציית‬ 15‫החישובים‬ ‫מורכבות‬
:1 ‫הסבר‬
‫קיים‬ x ∈ L ‫אם‬ ‫אזי‬ ,S ‫פתרון‬ ‫והצעת‬ x ‫קלט‬ ‫מקבלת‬ ‫והיא‬ L ‫השפה‬ ‫את‬ ‫שמכריעה‬ M ‫מכונה‬ ‫לנו‬ ‫ונתונה‬ ‫נניח‬
.‫אמת‬ ‫תחזיר‬ ‫המכונה‬ x ‫את‬ ‫נכניס‬ ‫אם‬ ‫שבו‬ (‫לפחות‬ ‫)אחד‬ ‫חוקי‬ ‫פתרון‬
.‫מהשפה‬ ‫חלק‬ ‫לא‬ ‫הוא‬ x ‫כי‬ ‫אותו‬ ‫תדחה‬ ‫תמיד‬ ‫המכונה‬ - ‫נקבל‬ S ‫פתרון‬ ‫איזה‬ ‫משנה‬ ‫לא‬ ‫אזי‬ x /∈ L ‫אם‬ ,‫שני‬ ‫מצד‬
,(‫מהשפה‬ ‫חלק‬ ‫הוא‬ ‫)כי‬ ‫אמת‬ ‫עבורו‬ ‫שיחזיר‬ ‫פתרון‬ ‫לקבל‬ ‫לדעת‬ ‫צריכה‬ ‫המכונה‬ - x ∈ L ‫אם‬ ,‫אחד‬ ‫מצד‬ ,‫כלומר‬
.(....‫אותה‬ "‫"לרמות‬ ‫ניתן‬ ‫יהיה‬ ‫)שלא‬ x /∈ L- ‫במידה‬ ‫פתרון‬ ‫כל‬ ‫לדחות‬ ‫לדעת‬ ‫צריכה‬ ‫גם‬ ‫היא‬ ‫שני‬ ‫מצד‬
.‫הכרחיות‬ ‫אלו‬ ‫תכונות‬ ‫שתי‬ ‫לכן‬
‫המחשב‬ ‫במדעי‬ ‫המרכזית‬ ‫הבעיה‬ 14.1
?‫קלה‬ ‫היא‬ ‫טבעית‬ ‫בעיה‬ ‫שכל‬ ‫או‬ ?‫קשות‬ ‫טבעית‬ ‫בעיות‬ ‫ישנן‬ ‫האם‬ ‫היא‬ ‫השאלה‬
‫טבעיות‬ NP
‫קשות‬ ‫טבעיות‬
P ‫קלות‬ :‫או‬ P = NP ‫קלות‬
P NP P = NP
‫מייצגת‬ ‫בעיה‬ 14.2
.‫מייצגת‬ ‫בעיה‬ ,‫כלומר‬ ,‫נציג‬ (P, NP, ...) ‫מחלקה‬ ‫לכל‬ ‫למצוא‬ ‫הוא‬ ‫כאן‬ ‫הניסיון‬
:‫מייצגת‬ ‫תהיה‬ ‫שהיא‬ ‫כדי‬ ‫הדרישות‬ ‫אלו‬ C ‫מהמחלקה‬ L ‫שפה‬ ‫עבור‬
.L ∈ C .1
.C-‫ב‬ 2
‫קשה‬ ‫הכי‬ L .2
:‫לזכור‬ ‫כדאי‬
.‫קשה‬ C ⇐ ‫קשות‬ ‫בעיות‬ C-‫ב‬ ‫⇐יש‬ ‫קשה‬ L ‫אם‬
.‫קלה‬ C ⇐ ‫קלות‬ C-‫ב‬ ‫הבעיות‬ ‫כל‬ ⇐ ‫קלה‬ L ‫אם‬
?"‫קשה‬ ‫"הכי‬ ‫נגדיר‬ ‫איך‬ 14.2.1
.L′
‫כמו‬ ‫לפחות‬ ‫קשה‬ L ‫יתקיים‬ L′
∈ C ‫לכל‬
:14.1 ‫הגדרה‬
.L′
‫להכרעת‬ ‫יעיל‬ ‫לאלגוריתם‬ ‫להסב‬ ‫ניתן‬ L ‫להכרעת‬ ‫יעיל‬ A ‫אלגוריתם‬ ‫כל‬
‫פולינומית‬ ‫רדוקציה‬ - (Karp) ‫קארפ‬ ‫רדוקציית‬ 15
.‫בתשובה‬ ‫לגעת‬ ‫בלי‬ L-‫ל‬ L′
‫של‬ ‫מקלט‬ ‫אחת‬ ‫שאילתה‬ ‫לבצע‬ ‫אפשרות‬ ‫לנו‬ ‫יש‬ ‫שבה‬ L-‫ל‬ L′
-‫מ‬ ‫רדוקציה‬ ‫זוהי‬
L-‫ל‬ ‫כקלט‬ ‫שולחים‬ ‫שאותה‬ f (x) ‫ופונקציה‬ L′
-‫ל‬ ‫כקלט‬ ‫אותו‬ ‫ששולחים‬ x ‫לנו‬ ‫יש‬ ‫כלומר‬
:‫מתקיימים‬ ‫הבאים‬ ‫התנאים‬ ‫שני‬ ‫כאשר‬
.x ∈ L′
⇐⇒ f (x) ∈ L .‫א‬
.‫פולינומי‬ ‫בזמן‬ ‫חשיבה‬ ‫הפונקציה‬ ‫כלומר‬ .(‫קבוע‬ c ‫)כאשר‬ Time (f (x)) = Θ (|x|
c
) .‫ב‬
.L′
≤p L :‫הבא‬ ‫באופן‬ ‫הרדוקציה‬ ‫את‬ ‫מסמנים‬
.‫יותר‬ ‫גדול‬ ‫ריצה‬ ‫זמן‬ = ‫קושי‬ ‫יותר‬ ,‫כלומר‬ ,‫הריצה‬ ‫זמן‬ ‫מבחינת‬ ‫לקושי‬ ‫הכוונה‬2
16
‫פולינומית‬ ‫רדוקציה‬ - (Karp) ‫קארפ‬ ‫רדוקציית‬ 15‫החישובים‬ ‫מורכבות‬
:15.1 ‫דוגמא‬
:‫הבאות‬ ‫השפות‬ ‫שתי‬ ‫את‬ ‫ניקח‬
.A2 =
{
x x
2 ∈ N
}
,A1 =
{
x ‫ראשוני‬ x, x ≥ 3
}
.‫הזוגיים‬ ‫המספרים‬ ‫כל‬ = A2-‫ו‬ ,3-‫מ‬ ‫הגדולים‬ ‫הראשוניים‬ ‫המספרים‬ ‫כל‬ = A1
:‫הבאה‬ ‫הרדוקציה‬ ‫להיות‬ ‫יכולה‬ A1 ≤p A2 ,‫אזי‬
.x ∈ N :‫קלט‬
.f (x) ∈ N :‫פלט‬
.x ‫את‬ ‫קרא‬ .‫א‬
.3-‫מ‬ ‫וגדול‬ ‫ראשוני‬ x ‫האם‬ ‫בדוק‬ .‫ב‬
.x + 1 ‫את‬ ‫החזר‬ :‫כן‬ ‫אם‬ 1.
.x ‫את‬ ‫החזר‬ :‫אחרת‬ 2.
:‫הבאה‬ ‫הפונקציה‬ ‫זאת‬ ‫כאן‬ ‫לנו‬ ‫שיש‬ ‫מה‬ ‫כי‬ ‫לב‬ ‫נשים‬
f (x) =
{
x + 1 ‫ראשוני‬ x ≥ 3
x ‫אחרת‬
.f (x) = 18 ∈ A2-‫ו‬ x = 17 ∈ A1 :‫ואכן‬ f (x) = 18 ‫אזי‬ x = 17 ‫למשל‬ ‫ניקח‬ ‫ואם‬
.f (x) = 27 /∈ A2-‫ו‬ x = 27 /∈ A1 ‫אזי‬ x = 27 ‫ניקח‬ ‫אם‬ :‫זאת‬ ‫ולעומת‬
.(‫פולינומי‬ ‫בזמן‬ ‫חשיבה‬ f-‫ש‬ ‫)וכמובן‬
‫בדוגמה‬ ‫שיש‬ ‫)מה‬ ‫אחרת‬ ‫לשפה‬ ‫אותה‬ ‫לנו‬ ‫מתרגמת‬ ‫רק‬ ‫אלא‬ ‫בעיה‬ ‫לנו‬ ‫פותרת‬ ‫אינה‬ ‫שהיא‬ - ‫הרדוקציה‬ ‫לגבי‬ ‫לזכור‬ ‫כדאי‬
‫ברדוקציות‬ ,‫הבעיות‬ ‫שתי‬ ‫את‬ ‫לפתור‬ ‫שניתן‬ ‫כמובן‬ ,‫הרעיון‬ ‫את‬ ‫להמחיש‬ ‫יותר‬ ‫שבאה‬ ‫פשוטה‬ ‫מאוד‬ ‫דוגמה‬ ‫זאת‬ 15.1
‫הפלט‬ ‫על‬ ‫תעבוד‬ ‫והפונקציה‬ ‫לפתרון‬ ‫כבדיקה‬ "‫ב"עד‬ ‫נשתמש‬ ‫ולכן‬ ,‫הבעיה‬ ‫את‬ ‫לפתור‬ ‫איך‬ ‫נדע‬ ‫תמיד‬ ‫לא‬ ‫יותר‬ ‫מתקדמות‬
.(13.2-‫ב‬ ‫שהוסבר‬ ‫כפי‬ ,‫למאמת‬ ‫העד‬ ‫מהכנסת‬ ‫שיוחזר‬
:‫הבא‬ ‫הדבר‬ ‫את‬ ‫בעצם‬ ‫זה‬ ‫לנו‬ ‫שיש‬ ‫מה‬ ,‫לכן‬
L′
x•
(L′
)C x•
Lf(x)
LCf(x)
%%
99
‫הפולינומית‬ ‫הרדוקציה‬ ‫פעולת‬ :3 ‫איור‬
‫מעבירה‬ ‫רק‬ ‫הרדוקציה‬ .‫בשפה‬ ‫אינו‬ ‫שהוא‬ ‫או‬ ‫בשפה‬ ‫שהוא‬ ‫או‬ (x) ‫קלט‬ ‫כל‬ ‫כאשר‬ ,‫שיש‬ ‫הקלטים‬ ‫כל‬ ‫את‬ ‫מסמל‬ ‫עיגול‬ ‫כל‬
.‫אותה‬ ‫פותרת‬ ‫לא‬ ‫אבל‬ ‫לשנייה‬ ‫אחת‬ ‫מבעיה‬ ‫אותנו‬
.f (x) /∈ L2 ‫בהכרח‬ ‫אזי‬ x /∈ L1 ‫אם‬ ‫אזי‬ ,L1 ≤p L2 ‫רדוקציה‬ ‫לנו‬ ‫יש‬ ‫אם‬
.‫ועל‬ ‫חח"ע‬ ‫בהכרח‬ ‫אינן‬ ‫אך‬ ‫ההפרדה‬ ‫על‬ ‫שומרות‬ (‫)הרדוקציות‬ ‫הפונקציות‬ ‫כי‬ ‫לזכור‬ ‫חשוב‬
‫-שלמה‬C ‫שפה‬ 15.1
:15.1 ‫הגדרה‬
:‫מתקיים‬ L ∈ C ‫לכל‬ ‫אם‬ ,(C ‫סיבוכיות‬ ‫מחלקת‬ ‫עבור‬ ‫)קשה‬ ‫-קשה‬C ‫הינה‬ L
L ≤p L
17
‫ואופטימיזציה‬ ‫חיפוש‬ ,‫הכרעה‬ ‫של‬ ‫גרסאות‬ ‫בין‬ ‫שקילות‬ 16‫החישובים‬ ‫מורכבות‬
.‫-שלמה‬C ‫נקראת‬ ‫היא‬ ‫אזי‬ L ∈ C ‫אם‬
:‫אזי‬ ,(‫-שלמה‬NP ‫הינה‬ L ,‫)כלומר‬ L ∈ NPC ‫תהי‬
.NP P ‫קשה‬ ‫מחלקה‬ NP ‫אז‬ L /∈ P ,‫כלומר‬ ,"‫"קשה‬ L ‫אם‬ .‫א‬
.NP ⊆ P ‫קלה‬ ‫מחלקה‬ NP ‫אז‬ ,L ∈ P ,‫כלומר‬ ,"‫"קלה‬ L ‫אם‬ .‫ב‬
‫ואופטימיזציה‬ ‫חיפוש‬ ,‫הכרעה‬ ‫של‬ ‫גרסאות‬ ‫בין‬ ‫שקילות‬ 16
.‫האופטימיזציה‬ ‫גרסת‬ ‫את‬ ‫שמגדירה‬ ‫קלה‬ ‫ערך‬ ‫פונקציית‬ ‫יש‬ Karp ‫של‬ ‫הבעיות‬ 22 ‫ובפרט‬ ‫שלמות‬ NP-‫ה‬ ‫הבעיות‬ ‫למרבית‬
:‫הגדרה‬ ‫מעצם‬
‫הכרעה‬ ‫גרסת‬ ≤ ‫חיפוש‬ ‫גרסת‬ ≤ ‫אופטימיזציה‬ ‫גרסת‬
.‫יעיל‬ ‫חישוב‬ ‫כדי‬ ‫עד‬ ‫שקולות‬ ‫כולם‬ ‫למעשה‬
3 − SAT ‫דוגמת‬ 16.1
:‫מצבים‬ ‫שני‬ ‫רק‬ ‫ישנם‬ 3 − SAT ‫עבור‬
.‫קשות‬ ‫שהן‬ ‫או‬ ‫קלות‬ ‫הגרסאות‬ ‫ששלושת‬ ‫או‬
‫שקילות‬ ‫דוגמת‬ 16.1.1
.‫החיפוש‬ ‫לגרסת‬ ‫יעיל‬ ‫אלגוריתם‬ ‫יש‬ NP-‫ב‬ ‫בעיה‬ ‫לכל‬ ‫אזי‬ P = NP ‫אם‬
:‫האלגוריתם‬
.‫החיפוש‬ ‫להכרעת‬ B ‫יעיל‬ ‫אלגוריתם‬ ‫נראה‬ 3
SAT ‫להכרעת‬ ‫יעיל‬ A ‫אלגוריתם‬ ‫בהינתן‬
φ (x1, . . . , xn) :‫קלט‬
."‫ספיקה‬ ‫לא‬ φ"‫ש‬ ‫ומכריז‬ ‫עוצר‬ ‫החיפוש‬ ‫אלגוריתם‬ ‫אזי‬ ‫ספיקה‬ ‫לא‬ φ-‫ש‬ ‫קובע‬ A ‫אם‬ .‫א‬
:‫אחרת‬ .‫ב‬
:n ‫עד‬ 1-‫מ‬ ‫החל‬ i ‫משתנה‬ ‫לכל‬ (1)
-‫ש‬ ‫סופית‬ ‫נקבע‬ ‫אזי‬ ‫ספיקה‬ ‫נוסחה‬ φ (x1 ← v1, . . . , xi ← T, . . . xn ← vn) :‫כי‬ ‫קובע‬ A ‫אם‬ .i
.‫הבא‬ ‫למשתנה‬ ‫ונמשיך‬ xi = T
.xi = F-‫ש‬ ‫סופית‬ ‫נקבע‬ :‫אחרת‬ .ii
:‫האלגוריתם‬ ‫ריצת‬ ‫זמן‬
Θ (n · Time (A))
.P-‫ב‬ ‫הנ"ל‬ ‫האלגוריתם‬ ‫גם‬ ‫אזי‬ A ∈ P-‫ש‬ ‫ובכלל‬
:2 ‫הסבר‬
‫השמה‬ ‫ישנה‬ ‫כי‬ ‫שקבע‬ A ‫אלגוריתם‬ ‫באותו‬ ‫השתמשנו‬ ,‫כלומר‬ ,‫ספיקה‬ ‫היא‬ φ ‫כי‬ ‫לנו‬ ‫נאמר‬ ‫באלגוריתם‬ ‫השני‬ ‫בשלב‬
‫עוברים‬ ‫אנחנו‬ ‫ולכן‬ .‫אותה‬ ‫תספק‬ φ-‫ל‬ ‫שההשמה‬ ‫כך‬ T/F ‫בולאנית‬ ‫השמה‬ ‫קיימת‬ xi ‫לכל‬ ,‫כלומר‬ ,φ-‫ל‬ ‫מספקת‬
‫ערך‬ ‫אותו‬ ‫את‬ ‫נציב‬ ‫)כאשר‬ ‫מספקת‬ ‫השמה‬ ‫תתן‬ F-‫ש‬ ‫בוודאי‬ ‫אז‬ ‫מספקת‬ ‫השמה‬ ‫תתן‬ ‫לא‬ T ‫ואם‬ ‫משתנה‬ ‫משתנה‬
.φ-‫ל‬ ‫מספקת‬ ‫השמה‬ ‫אין‬ ‫כי‬ ‫מגלים‬ ‫היינו‬ ‫הראשון‬ ‫בשלב‬ ‫כבר‬ ‫אחרת‬ .(‫במשתנה‬
."‫שחורה‬ ‫"קופסה‬ ‫בתור‬ ‫בו‬ ‫משתמשים‬ ‫ואנחנו‬ ‫קיים‬ ‫שהוא‬ ‫לנו‬ ‫נתון‬ ‫אבל‬ ,A ‫אלגוריתם‬ ‫אותו‬ ‫מהו‬ ‫יודעים‬ ‫לא‬ ‫שאנחנו‬ ‫לזכור‬ ‫חשוב‬3
18
coNP ‫המחלקה‬ 19‫החישובים‬ ‫מורכבות‬
DSR ‫שיטת‬ 17
‫הקלט‬ ‫כמות‬ ‫את‬ ‫במעט‬ ‫הורדנו‬ ‫פעם‬ ‫כל‬ ‫אנחנו‬ (3−SAT ‫בעיית‬ ‫עבור‬ ‫השקילות‬ ‫)דוגמת‬ 16.1.1-‫ב‬ ‫באלגוריתם‬ ‫שראינו‬ ‫כמו‬
.‫הנתון‬
....‫בודקים‬ ‫ואז‬ ‫הקלט‬ ‫את‬ ‫מפחיתים‬ ‫אנחנו‬ ‫פעם‬ ‫שכל‬ ‫הרעיון‬ - Downward Self Reducibility - DSR :‫נקרא‬ ‫זה‬ ‫דבר‬
(‫-דטרמיניסטי‬ ‫לא‬ ‫חישוב‬ NP ‫)הגדרת‬ ‫מטל"ד‬ 18
‫עוברים‬ - ‫לאחרת‬ ‫אחת‬ ‫קונפיגורציה‬ ‫מכל‬ ‫שעוברים‬ ‫במקום‬ ‫שבה‬ ‫מכונה‬ ‫היא‬ (‫דטרמיניסטית‬ ‫לא‬ ‫טיורינג‬ ‫)מכונת‬ ‫מטל"ד‬
.‫אחת‬ ‫מקונפיגורציה‬ ‫ליותר‬
δ (q, σ1, . . . , σk)
δ (q, σ1, . . . , σk)
55kkkkkkkkkkk
))‚‚‚‚‚‚‚‚‚‚
...
δ
(
q, σ
(l)
1 , . . . , σ
(l)
k
)
.‫שונות‬ ‫תוצאות‬ x ‫אותו‬ ‫על‬ M ‫של‬ ‫שונות‬ ‫בהרצות‬ ‫יתכנו‬ ‫לכן‬
.T (n) ≤ Θ (|x|
c
) :‫אפשרית‬ ‫ריצה‬ ‫ולכל‬ x ‫שלכל‬ ‫כך‬ C ‫קבוע‬ ‫ישנו‬ ‫אם‬ ‫יעילה‬ ‫היא‬ ‫כי‬ M ‫כל‬ ‫נאמר‬
:(‫הרצות‬ ‫כמה‬ ‫בפועל‬ ‫להיות‬ ‫יכול‬ ‫)אשר‬ x ‫על‬ M ‫של‬ ‫אפשרית‬ ‫הרצה‬ ‫בכל‬
‫כל‬ ,‫זאת‬ ‫לעומת‬ ‫אם‬ .M (x) = Accept ‫כי‬ ‫נאמר‬ ‫אזי‬ ,Accept-‫ב‬ ‫שמסיימת‬ ‫מסוים‬ ‫קלט‬ ‫על‬ ,‫אחת‬ ‫הרצה‬ ‫ישנה‬ ‫אם‬
M (x) = ‫כי‬ ‫נאמר‬ ‫אזי‬ ,Accept-‫ב‬ ‫שמסתיימת‬ ‫אחת‬ ‫הרצה‬ ‫אפילו‬ ‫אין‬ ,‫קרי‬ ,Reject-‫ב‬ ‫מסתימות‬ ‫האפשריות‬ ‫ההרצות‬
.Reject
.NPnd-‫ב‬ ‫הזה‬ ‫מהסוג‬ ‫המכונות‬ ‫של‬ ‫המחלקה‬ ‫את‬ ‫נסמן‬
:18.1 ‫משפט‬
NPnd = NP∃
.(14) NP ‫המחלקה‬ ‫של‬ ‫הרגילה‬ ‫ההגדרה‬ ‫זאת‬ NP∃ ‫כאשר‬
coNP ‫המחלקה‬ 19
coC ‫המחלקה‬ 19.1
:‫הבא‬ ‫באופן‬ coC ‫את‬ ‫להגדיר‬ ‫תמיד‬ ‫ניתן‬ C ‫סיבוכיות‬ ‫מחלקת‬ ‫בהינתן‬
coC =
{
L LC
∈ C
}
=
{
LC
L ∈ C
}
.(‫החישוביות‬ ‫בתורת‬ ‫שנהוג‬ ‫)כמו‬ ‫שפה‬ ‫על‬ ‫ולא‬ x ‫קלט‬ ‫על‬ ‫מדברים‬ ‫שאנחנו‬ ‫לציין‬ ‫חשוב‬
.x /∈ L ⇐⇒ x ∈ LC
:‫וההפך‬ x ∈ L ⇐⇒ x /∈ LC
:‫כלומר‬
L LC
•x •y
.x /∈ LC
, y /∈ L :‫ולכן‬ ,x ∈ L, y ∈ LC
:‫למשל‬ ‫שלמעלה‬ ‫באיור‬
19
coNP ‫המחלקה‬ 19‫החישובים‬ ‫מורכבות‬
coP = P 19.2
.(‫)ביעילות‬ ‫פולינומי‬ ‫בזמן‬ ‫להכריע‬ ‫ניתן‬ ‫השפות‬ ‫שתי‬ ‫ואת‬ ‫היות‬ coP = P ‫כי‬ ‫לומר‬ ‫ניתן‬ P ‫המחלקה‬ ‫של‬ ‫במקרה‬
.‫ל"ד‬ ‫נתונים‬ ‫ובלי‬ ‫כמתים‬ ‫בלי‬ ‫מוגבלים‬ ‫במשאבים‬ ‫חישוב‬ ‫ע"י‬ ‫שמוגדרת‬ ‫מחלקה‬ ‫היא‬ P
.‫וההפך‬ ‫מקבלים‬ ‫ללא‬ ‫המקבלים‬ ‫המצבים‬ ‫את‬ ‫להפוך‬ ‫הוא‬ P ‫של‬ ‫במקרה‬ ‫לעשות‬ ‫שצריך‬ ‫מה‬ ‫כל‬
‫לפתור‬ ‫לא‬ ‫אבל‬ ‫פולינומי‬ ‫בזמן‬ (‫)עד‬ ‫נכון‬ ‫הוא‬ ‫פתרון‬ ‫האם‬ ‫לבדוק‬ ‫ניתן‬ NP-‫שב‬ ‫מכיוון‬ ‫יותר‬ ‫מורכב‬ ‫כבר‬ ‫המצב‬ coNP-‫ב‬
.‫העדים‬ ‫מבחינת‬ ‫הפוך‬ coNP ‫את‬ ‫להגדיר‬ ‫הוא‬ ‫שנצטרך‬ ‫מה‬ ‫לכן‬ ,‫פולינומי‬ ‫בזמן‬ ‫הבעיה‬ ‫את‬
‫מצב‬ ← M-‫ב‬ ‫מקבל‬ ‫שמצב‬ ‫לכך‬ ‫פרט‬ M ‫למכונה‬ ‫שזהה‬ MC
‫במכונה‬ ‫נביט‬ T (n) ‫בזמן‬ L ‫את‬ ‫מכריעה‬ M ‫אם‬
.MC
-‫ב‬ ‫מקבל‬ ‫מצב‬ ← M-‫ב‬ ‫דוחה‬ ‫ומצב‬MC
-‫ב‬ ‫דוחה‬
Time (M (x)) = Time
(
MC
(x)
)
.Θ-‫ב‬ ‫צורך‬ ‫אין‬ ‫שאפילו‬ ‫כך‬ ‫לחלוטין‬ ‫זהה‬ ‫וזה‬
coNP =
{
L LC
∈ NP
}
=
{
LC
L ∈ NP
}
:coNP-‫ב‬ ‫נמצאות‬ ‫אשר‬ ‫שפות‬ ‫שתי‬ ‫על‬ ‫נסתכל‬
:19.1 ‫דוגמא‬
:φ ‫נוסחה‬ ‫של‬ ‫הספיקות‬ ‫לבעיית‬ ‫באשר‬
(SAT)
C
= SATC
=
{
⟨φ⟩ ‫ספיקה‬ ‫לא‬ φ
}
.SATC
-‫ב‬ ‫היא‬ ‫אזי‬ ‫ספיקה‬ ‫אינה‬ ‫היא‬ ‫ואם‬ SAT-‫ב‬ ‫היא‬ ‫אזי‬ ‫ספיקה‬ ‫נוסחה‬ ‫היא‬ φ ‫אם‬ ,‫כלומר‬
:19.2 ‫דוגמא‬
:‫בגרפים‬ ‫צביעה‬ ‫בעיית‬
.‫3-צביע‬ ‫הוא‬ G ‫גרף‬ ‫האם‬
(3 − COL)
C
=
{
⟨G⟩ ‫3-צביע‬ ‫אינו‬ G
}
.‫המשלימה‬ ‫השפה‬ ‫את‬ ‫חיפשנו‬ ‫שלמעלה‬ ‫הדוגמאות‬ ‫בשתי‬
.‫3-צביע‬ ‫אינו‬ ‫שהוא‬ ‫גרף‬ ‫מחפשים‬ ‫אנחנו‬ (3 − COL)
C
-‫ב‬ ‫אזי‬ ,‫3-צביע‬ ‫שהוא‬ ‫גרף‬ ‫מחפשים‬ ‫אנחנו‬ 3−COL-‫ב‬ ‫אם‬ ,‫כלומר‬
‫כמתים‬ ‫באמצעות‬ coNP ‫הגדרת‬ 19.3
:‫נחליף‬ ‫שפשוט‬ ‫הוא‬ ‫כאן‬ ‫שנעשה‬ ‫מה‬ ,∀, ∃ ‫כמתים‬ ‫עם‬ (14) NP ‫את‬ ‫הגדרנו‬
:L ∈ coNP ‫אם‬
x ∈ L ⇐⇒ ∀ ˜w ⇒ V (x, w) = Accept
x /∈ L ⇐⇒ ∃ ˜w ⇒ V (x, w) = Reject
:‫)תזכורת‬ ‫תתקבל‬ ‫לגרף‬ ‫שניתן‬ ‫צביעה‬ ‫כל‬ :‫אזי‬ ‫צביע‬ ‫שאינו‬ G ‫גרף‬ ‫לנו‬ ‫נתון‬ ‫אם‬ ,(‫בגרפים‬ ‫צביעה‬ ‫)בעיית‬ 19.2 ‫לדוגמה‬ ‫בהמשך‬
.‫דחייה‬ ‫נקבל‬ - (w) ‫שלו‬ ‫לצביעה‬ ‫העד‬ ‫את‬ ‫שנתן‬ ‫ברגע‬ ‫אזי‬ ,‫צביע‬ G ‫ואם‬ (....3 − COLC
‫על‬ ‫מדברים‬ ‫אנחנו‬
20
‫החישובים‬ ‫מורכבות‬
:3 ‫הסבר‬
‫אזי‬ (‫צביע‬ ‫שאינו‬ ‫גרף‬ ,‫)למשל‬ ‫בשפה‬ ‫קלט‬ ‫לנו‬ ‫נתון‬ ‫אם‬ :‫הפוך‬ ‫בדיוק‬ ‫הוא‬ ‫הרעיון‬ ‫כאן‬ - 1 ‫בהסבר‬ ‫שמתואר‬ ‫כפי‬
‫אזי‬ ,‫3-צביע‬ ‫הגרף‬ ‫אם‬ ,‫זאת‬ ‫לעומת‬ .‫צבעים‬ ‫בשלושה‬ ‫הגרף‬ ‫את‬ ‫לצבוע‬ ‫ניתן‬ ‫ולא‬ ‫היות‬ ‫לבדיקה‬ ‫עד‬ ‫כל‬ ‫תקבל‬ ‫המכונה‬
3 − COL-‫ב‬ ‫נהיה‬ ‫ואנחנו‬ ‫היות‬ - Reject ‫תחזיר‬ ‫המכונה‬ ‫אזי‬ - ‫אותה‬ ‫נקבל‬ ‫ואם‬ ,‫הגרף‬ ‫של‬ ‫חוקית‬ ‫צביע‬ ‫קיימת‬
.3 − COLC
-‫ב‬ ‫ולא‬
G ∈ 3 − COLC
⇐⇒ ‫3-צביע‬ ‫אינו‬ G ⇐⇒ ∀ ˜w V (G, w) = Accept
G /∈ 3 − COLC
⇐⇒ ‫3-צביע‬ G ⇐⇒ ∃ ˜w V (G, w) = Reject
:19.1 ‫משפט‬
.LC
‫השפה‬ ‫הגדרת‬ ‫ובאמצעות‬ ‫הכמתים‬ ‫באמצעות‬ ‫ההגדרה‬ :‫שקולות‬ coNP ‫של‬ ‫ההגדרות‬ ‫שתי‬
NP ̸= coNP-‫ש‬ ‫ההשערה‬ 19.4
:‫שלמטה‬ ‫באיור‬ ‫שמתואר‬ ‫כפי‬ .NP ̸= coNP :‫היא‬ ‫המרכזית‬ ‫ההשערה‬ ‫אבל‬ ,P ⊆ coNP-‫ו‬ P ⊆ NP :‫בבירור‬
P
coNPNP
rrrrrrrrrrrrrrrrr
vvvvvvvvvvvvvvvvv
:‫למשל‬
‫אבל‬ ,‫ספיקה‬ φ-‫ש‬ ‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫מהווה‬ w ‫יחידה‬ ‫מספקת‬ ‫השמה‬ φ ‫פסוקית‬ ‫עבור‬ ‫כי‬ SATC
/∈ NP ‫כי‬ ‫משוער‬
?‫ספיקה‬ ‫אינה‬ φ ‫כי‬ ‫יעיד‬ ‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫איזה‬
...3 − COLC
‫לגבי‬ ‫כנ"ל‬
co (NPC) = (coNP) C
IV ‫חלק‬
PH - ‫פולינומית‬ ‫היררכיה‬
21
coNP-‫ו‬ NP-‫ל‬ ‫שמעבר‬ ‫מה‬ 20‫החישובים‬ ‫מורכבות‬
coNP-‫ו‬ NP-‫ל‬ ‫שמעבר‬ ‫מה‬ 20
‫משתי‬ ‫אחת‬ ‫באף‬ ‫נמצאות‬ ‫שלא‬ ‫בעיות‬ ‫גם‬ ‫ישנן‬ ‫אבל‬ ,coNP-‫ב‬ ‫או‬ NP-‫ב‬ ‫שהן‬ (‫)שפות‬ ‫בעיות‬ ‫עם‬ ‫התעסקנו‬ ‫עכשיו‬ ‫עד‬
...‫הללו‬ ‫המחלקות‬
‫לפתרון‬ ,‫אחד‬ ‫כמת‬ ‫רק‬ ‫היה‬ coNP-‫וב‬ NP-‫ב‬ .‫בבעיה‬ ‫שיש‬ ‫הכמתים‬ ‫לכמות‬ ‫להתייחס‬ ‫צריך‬ ‫הרעיון‬ ‫את‬ ‫להבין‬ ‫בשביל‬
.‫כמתים‬ ‫שני‬ ‫שמצריכה‬ ‫לבעיה‬ ‫דוגמה‬ ‫נראה‬ ‫עכשיו‬ ‫אבל‬
(‫כמתים‬ ‫שני‬ ‫עם‬ ‫לבעיה‬ ‫)דוגמה‬ ‫המזערי‬ ‫המעגל‬ ‫בעיית‬ 20.1
:‫הבאה‬ ‫השפה‬ ‫על‬ ‫נתסכל‬
MinCircut =
{
⟨C⟩
‫הוא‬ C ‫הבולאני‬ ‫המעגל‬
fC ‫לחישוב‬ ‫מזערי‬ ‫בגודל‬ ‫מעגל‬
}
C ‫על‬ ” < ” ‫יחס‬ .C ‫של‬ ‫בגרף‬ ‫הצלעות‬ ‫כמספר‬ ‫מוגדר‬ ‫גודל‬ ‫כאשר‬ ,C2-‫מ‬ ‫קטן‬ C1 ‫המעגל‬ ‫כאשר‬ - C1 < C2 :‫סימון‬
4
‫מלא‬ ‫סדר‬ ‫יחס‬ ‫הוא‬
∀C′
(
(C′
< C) → ∃y (C′
(y) ̸= C (y))
)
.‫למעגלים‬ ‫קלט‬ ‫הוא‬ y ‫כאשר‬
.‫שגוי‬ ‫מעגל‬ C′
‫אז‬ C-‫מ‬ ‫יותר‬ ‫קטן‬ C′
‫אם‬ ,C′
‫אחר‬ ‫מעגל‬ ‫לכל‬ :‫הבא‬ ‫הדבר‬ ‫את‬ ‫היא‬ ‫אומרת‬ ‫שלמעלה‬ ‫שהנוסחה‬ ‫מה‬
:‫הבאים‬ ‫התנאים‬ ‫התקיימו‬ ‫כאן‬ ‫בבעיה‬ ‫כי‬ ‫לב‬ ‫נשים‬
.∀, ∃ :‫כימותים‬ ‫שני‬ ‫היו‬ .‫א‬
.|C′
| , |y| = poly (n) ‫מחרוזת‬ ‫על‬ ‫היה‬ ‫מהם‬ ‫אחד‬ ‫כל‬ .‫ב‬
.‫לבדיקה‬ ‫קל‬ ‫היה‬ ‫התנאי‬ .‫ג‬
:‫מתקיימים‬ ‫התנאים‬ ‫שלושת‬ ‫בה‬ ‫שגם‬ ‫דוגמה‬ ‫עוד‬ ‫על‬ ‫נתסכל‬
:φ-‫ב‬ ‫לספק‬ ‫מצליחה‬ w ‫שההשמה‬ ‫הפסוקיות‬ '‫מס‬ = V al (φ, k)
(φ, k) ∈ EXACT − SAT ⇒
(
∃w1 (Val (φ, w1) ≥ k)
)
∧
(
∀w2 (Val (φ, w2) ≤ k)
)
‫של‬ ‫השמטה‬ ‫כל‬ ‫אבל‬ ,‫ספיקה‬ ‫שאינה‬ φ ‫נוסחה‬ ‫לנו‬ ‫נתונה‬ ‫שבה‬ ‫בעיה‬ - Critic − SAT-‫ה‬ ‫בעיית‬ ‫היא‬ ‫נוספת‬ ‫דוגמה‬
.‫לספיקה‬ ‫אותה‬ ‫תהפוך‬ φ-‫מ‬ ‫שרירותית‬ ‫פסוקית‬
:x ∈ Critic − SAT
(
∀w (V (φ, w)) = Reject
‫לבדיקה‬ ‫קל‬ ‫תנאי‬
)
∧
(
∃w1, . . . , wm
∧
1≤i≤m
(∨ (φCi, wi) = Accept)
‫לבדיקה‬ ‫קל‬ ‫תנאי‬
)
‫מספיק‬ ‫לא‬ ‫לכן‬ ,i ‫פסוקית‬ ‫כל‬ ‫עבור‬ ‫אחד‬ ,‫הללו‬ (‫הללו‬ ‫)ההשמות‬ ‫הפתרונות‬ ‫כל‬ ‫קיימים‬ ‫שיהיו‬ ‫חייבים‬ - ∃w1 . . . , wm
.‫אחרת‬ ‫התאמה‬ ‫להיות‬ ‫יכולה‬ ‫שנסיר‬ ‫פסוקית‬ ‫ולכל‬ - ‫אחד‬ ‫פתרון‬ ‫עבור‬ ‫רק‬ ‫תקף‬ ‫זה‬ ‫אז‬ ‫כי‬ - ”∃w...” :‫כמו‬ ‫משהו‬ ‫לרשום‬
.i-‫ה‬ ‫הפסוקית‬ ‫פחות‬ φ (‫)הקלט‬ ‫הפסוק‬ ‫זה‬ - φCi
.φCi-‫ל‬ ‫המספקת‬ ‫ההשמה‬ ‫זאת‬ - wi
.‫יותר‬ ‫גדול‬ ‫מעגל‬ ‫איזה‬ ‫להכריע‬ ‫ניתן‬ ‫תמיד‬ ,‫כלומר‬4
22
‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬ 21‫החישובים‬ ‫מורכבות‬
‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬ 21
‫סימונים‬ 21.1
.V (x) = Accept-‫ש‬ ‫פירושו‬ V (x)
.V (x) = Reject-‫ש‬ ‫פירושו‬ ¬V (x)
.‫פולינומי‬ ‫בזמן‬ ‫המשתנים‬ ‫את‬ ‫לבדוק‬ ‫ניתן‬ - ∃, ∀
ΠkP-‫ו‬ ΣkP 21.2
.(‫קבוע‬ ‫הוא‬ c ‫)כאשר‬ Θ (|x|
c
) ≥ ‫פולינומי‬ ‫בזמן‬ ‫שרצה‬ ‫מכונה‬ ‫זאת‬ - M = V ‫ההגדרות‬ ‫בכל‬
‫המשמעות‬ ‫המחלקה‬
x ∈ L ⇐⇒ V (x)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ P = Σ0P = Π0P
x ∈ L ⇐⇒ ∃w1V (x, w1)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ NP = Σ1P
x ∈ L ⇐⇒ ∀w1V (x, w1)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ coNP = Π1P
x ∈ L ⇐⇒ ∃w1∀w2V (x, w1, w2)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Σ2P
x ∈ L ⇐⇒ ∀w1∃w2V (x, w1, w2)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Π2P
x ∈ L ⇐⇒ ∃w1∀w2∃w3V (x, w1, w2, w3)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Σ3P
x ∈ L ⇐⇒ ∀w1∃w2∀w3V (x, w1, w2, w3)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Π3P
x ∈ L ⇐⇒ ∃w1∀w2 · · · Qwk V (x, w1, w2, . . . , wk)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ :L ∈ ΣkP
x ∈ L ⇐⇒ ∀w1∃w2 · · · Qwk V (x, w1, w2, . . . , wk)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ : L ∈ ΠkP
.k ‫זוגיות‬ ‫לפי‬ ‫נקבע‬ Q ∈ {∀, ∃} ‫כאשר‬
ΣkP, ΠkP ⊆ Σk+1P, Πk+1P
PH ‫הגדרת‬ 21.3
:‫הבא‬ ‫האיור‬ ‫על‬ ‫נסתכל‬
:‫כלומר‬ ,‫המחלקות‬ ‫כל‬ ‫של‬ ‫איחוד‬ ‫זה‬ PH
PH =
∪
k∈N
ΣkP =
∪
k∈N
ΠkP
:‫לזכור‬ ‫שכדאי‬ ‫דברים‬ ‫כמה‬ ‫הנה‬ ,‫כמו-כן‬
co (ΣkP) = ΠkP
co (ΠkP) = ΣkP
23
‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬ 21‫החישובים‬ ‫מורכבות‬
P
coNP NP
••••••••••••
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
Π2P Σ2P
1
1
1
1
1
1
1
1
1
w
w
w
w
w
w
w
w
w
w
w
w
w
w
w
qqqqqqqqqqqqqqq
Π3P Σ3P
qqqqqqqqqqqqqqqqqqqqqqqqqqqqq
wwwwwwwwwwwwwwwwwwwwwwwwwwwww
PH
QkP ‫מחלקה‬ ‫כל‬
‫מה‬ ‫כל‬ ‫את‬ ‫כוללת‬
,‫למשל‬ ,‫שמתחתיה‬
‫מה‬ ‫מוצג‬ ‫משמאל‬ ‫באיור‬
:Σ2P ‫המחלקה‬ ‫כוללת‬
‫האזור‬ ‫בתוך‬ ‫שיש‬ ‫)מה‬
(.‫המקווקו‬ ‫בקו‬ ‫שמסומן‬
P
coNP NP
qqqqqqqqqqqqqqqqqqqqqqqqqqqqq
wwwwwwwwwwwwwwwwwwwwwwwwwwwww
Π2P Σ2P
wwwwwwwwwwwwwwwwwwwwwwwwwwwww
qqqqqqqqqqqqqqqqqqqqqqqqqqqqq
Π3P Σ3P
qqqqqqqqqqqqqqqqqqqqqqqqqqqqq
wwwwwwwwwwwwwwwwwwwwwwwwwwwww
PH
‫פולינומית‬ ‫היררכיה‬ :4 ‫איור‬
'‫וכו‬ P ̸= NP ‫לגבי‬ ‫מרכזיות‬ ‫השערות‬ 21.4
ΠkP Σk+1P - "‫מעריכית‬ ‫כוח‬ ‫תוספת‬ ‫יש‬ ∃ ‫"לכמת‬ P ̸= NP
ΣkP ∀k+1P - "‫מעריכית‬ ‫כוח‬ ‫תוספת‬ ‫יש‬ ∀ ‫"לכמת‬ P ̸= coNP
ΣkP ̸= ΠkP - "(‫אחד‬ ‫לכל‬ ‫כוח‬ ‫)אותו‬ ‫שונה‬ ‫כוח‬ ‫תוספת‬ ‫יש‬ ‫שונים‬ ‫"לכמת‬ NP ̸= coNP
‫הקריסה‬ ‫משפט‬ 21.5
‫והופכות‬ ‫קורסות‬ ‫הקומות‬ ‫כל‬ ,‫כלומר‬ .‫קורס‬ ‫שמעל‬ ‫מה‬ ‫כל‬ - ‫שמעליה‬ ‫לזאת‬ ‫שווה‬ ‫הרמות‬ ‫שאחת‬ ‫שמספיק‬ ‫אומר‬ ‫המשפט‬
:‫המשפט‬ ‫של‬ ‫פרטי‬ ‫מקרה‬ .‫אחת‬ ‫קומה‬ ‫להיות‬
P = NP ⇒ P = PH
24
‫חישוב‬ ‫קונפיגורצית‬ 23‫החישובים‬ ‫מורכבות‬
V ‫חלק‬
‫זיכרון‬ ‫סיבוכיות‬
.‫ריצה‬ ‫זמן‬ ‫אחרי‬ ‫בחשיבותו‬ ‫השני‬ ‫המשאב‬ ‫הוא‬ ‫זיכרון‬
.S-‫ב‬ ‫אותו‬ ‫נסמן‬
:‫אזי‬ ,(‫שעון‬ ‫)פעימות‬ ‫זמן‬ - T ,‫זיכרון‬ - S
S ≤ T
.‫לזמן‬ ‫בניגוד‬ ‫למחזר‬ ‫ניתן‬ ‫וזיכרון‬ ‫היות‬ ,S ≪ T :‫עבורן‬ ‫בעיות‬ ‫שיש‬ ‫משערים‬ ‫וכמו-כן‬
S ≪ T ‫שבו‬ ‫למקרה‬ ‫דוגמת‬ 22
:‫משתנים‬ n-‫ו‬ ‫פסוקיות‬ m ‫עם‬ SAT ‫של‬ ‫הדוגמה‬ ‫על‬ ‫נתסכל‬
.‫השמות‬ 2n
-‫ה‬ ‫כל‬ ‫את‬ ‫בלולאה‬ ‫סורקים‬
.”Accept” ‫ועונים‬ ‫עוצרים‬ ‫אזי‬ ‫מספקת‬ ‫היא‬ ‫ואם‬ φ-‫ב‬ ‫מציבים‬ w ‫השמה‬ ‫כל‬
.”Reject” ‫עונים‬ ‫מספקת‬ ‫השמה‬ ‫נמצאה‬ ‫לא‬ ‫אם‬ ,‫הסריקה‬ ‫בסוף‬
:‫סה"כ‬
S (n) = &&2n
· n + Θ (log m)
(‫מאוד‬ ‫קצר‬ ‫)משהו‬ ‫החישוב‬ ‫אותו‬ ‫של‬ ‫תוצאה‬ ‫רק‬ ‫שומרים‬ ‫אנחנו‬ ,‫זיכרון‬ ‫ממחזרים‬ ‫שאנחנו‬ ‫היא‬ 2n
‫את‬ ‫שביטלנו‬ ‫הסיבה‬
.‫משתמשים‬ ‫אנחנו‬ ‫שבה‬ ‫ההשמה‬ ‫של‬ ‫אינדיקציה‬ +
.SAT ∈ D − SPACE (‫הקלט‬ ‫)אורך‬
.2Ω(n)
‫זמן‬ ‫דורשת‬ SAT-‫ש‬ ‫משערים‬
.NP, coNP, PH ⊆ P − SPACE
‫פולינומי‬ ‫זיכרון‬
:‫למעשה‬
:‫סביר‬ S ‫עבור‬
S ≤ T ≤ 2Θ(S)
.(‫אותו‬ ‫למחזר‬ ‫היכולת‬ ‫)בגלל‬ ‫מזמן‬ ‫חזק‬ ‫יותר‬ ‫הרבה‬ ‫שזיכרון‬ ‫משערים‬
‫חישוב‬ ‫קונפיגורצית‬ 23
.(9 ‫)חלק‬ ‫חישוב‬ ‫מכונות‬ - ‫כאן‬ ‫בהרחבה‬ ‫מ"ט‬ ‫על‬ ‫דובר‬ ‫בעיקרון‬
.‫ופלט‬ ‫עבודה‬ ,‫קלט‬ :‫במ"ט‬ ‫סרטים‬ ‫שלושה‬ ‫ישנן‬
.S (n) ‫בזיכרון‬ L ‫שפה‬ ‫את‬ ‫מכריעה‬ M ‫מכונה‬ ‫כי‬ ‫אומרים‬
.x /∈ L ⇐⇒ M (x) = Reject ,x ∈ L ⇐⇒ M (x) = Accept
.c · S ≥ ‫העבודה‬ ‫בסוף‬ M ‫ניגשת‬ ‫שאליהם‬ ‫התאים‬ ‫שמספר‬ ‫כל‬ c ‫קבוע‬ ‫קיים‬
25
‫זיכרון‬ - ‫סיבוכיות‬ ‫מחלקות‬ 24‫החישובים‬ ‫מורכבות‬
S : N → N
?‫ישנן‬ ‫קונפיגורציות‬ ‫כמה‬ 23.1
.‫אפשרי‬ ‫קונפיגורציות‬ ‫מספר‬ ‫על‬ ‫חסם‬ ‫למצוא‬ ,‫כלומר‬ .‫האפשרי‬ ‫הקונפיגורציות‬ ‫מספר‬ ‫על‬ ‫לעמוד‬ ‫ננסה‬
.‫קונפיגורציה‬ ‫הוא‬ ‫כזה‬ ‫חישוב‬ ‫כל‬ - (9.1) ‫החישוב‬ ‫אופן‬ :‫כאן‬ ‫קונפיגורציה‬ ‫מהי‬ ‫על‬ ‫לקרוא‬ ‫ניתן‬ ‫כזכור‬
:‫חסמים‬ ‫אלו‬ ‫נחפש‬ ‫שאנחנו‬ ‫מה‬
n · S · |Σ|S
· |Q|
.‫הקלט‬ ‫בסרט‬ ‫הקורא‬ ‫הראש‬ ‫מיקום‬ n
.‫העבודה‬ ‫בסרט‬ ‫מיקום‬ S
,‫כלומר‬ ,Σ-‫מ‬ ‫אחת‬ ‫אות‬ ‫יש‬ ‫מהם‬ ‫אחד‬ ‫שבכל‬ ‫בסרט‬ ‫תאים‬ S ‫לנו‬ ‫יש‬
.‫אפשרויות‬ |Σ| ‫יש‬ ‫תא‬ ‫כל‬ ‫עבור‬
|Σ|
S
.‫שישנם‬ ‫המצבים‬ ‫מספר‬ Q
.‫אותו‬ ‫לצמצם‬ ‫נוכל‬ ‫ולכן‬ ,S < |Σ|
S
:|Σ| > 2 ‫עבור‬ ,‫כעת‬
.S ≥ Ω (log n) ‫עבור‬ 5
n · 2Θ(S)
= 2Θ(S)
:‫כמו-כן‬
‫נכנס‬ ‫ואז‬ - ‫אליה‬ ‫שנחזור‬ ‫קונפיגורציה‬ ‫תהיה‬ ‫בוודאי‬ ‫אז‬ ‫כי‬ ,‫הקונפיגורציות‬ ‫מספר‬ ‫על‬ ‫יעלה‬ ‫שהזמן‬ ‫ייתכן‬ ‫לא‬ ,‫כעת‬
.(‫מעגל‬ ‫ייסגר‬ ‫בהכרח‬ ‫אז‬ ‫)כי‬ ‫אינסופית‬ ‫ללולאה‬
:‫לכן‬
T ≤ 2Θ(S)
'
&
$
%
‫זיכרון‬ - ‫סיבוכיות‬ ‫מחלקות‬ 24
.log (n) :‫מזערי‬ "‫"סביר‬ ‫עבודה‬ ‫זיכרון‬
.poly (n) :‫מרבי‬ "‫"סביר‬ ‫עבודה‬ ‫זיכרון‬
:‫נסמן‬
P − SPACE =
∪
k∈N
D − SPACE
(
nk
)
L = L − SPACE = D − SPACE ∈ (log n)
.‫לוגריתמי‬ ‫זיכרון‬ - T ≤ 2Θ(log n)
= nΘ(1)
⇐= S = Θ (log n)
‫ההיררכיה‬ ‫משפט‬ 24.1
:‫מקום‬ ‫סיבוכיות‬ ‫לגבי‬ (12.1 ‫)משפט‬ ‫זמן‬ ‫סיבוכיות‬ ‫של‬ ‫ההיררכיה‬ ‫למשפט‬ ‫מאוד‬ ‫בדומה‬
:‫אזי‬ S1 ≪ S2 ‫אם‬
D − SPACE (S1) D − SPACE (S2)
.L P − SPACE :‫ובפרט‬
.40 ‫בעמוד‬ ‫נמצאת‬ 6
‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬
.n · 2Θ(S) = 2Θ(S)+log(n) = 2Θ(S) :‫כי‬5
.‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬6
26
‫זיכרון‬ - ‫סיבוכיות‬ ‫מחלקות‬ 24‫החישובים‬ ‫מורכבות‬
‫המחלקות‬ ‫של‬ ‫ההיררכיה‬ 24.2
L ⊆ P ⊆ NP ⊆ P − SP ACE
‫אחד‬ ‫אף‬ ‫את‬ ‫להוכיח‬ ‫איך‬ ‫ידוע‬ ‫לא‬ ‫אבל‬ , ‫בעצם‬ ‫הוא‬ ⊆-‫ה‬ ‫אחד‬ ‫שלפחות‬ ‫בוודאי‬ ‫אזי‬ L P − SPACE-‫ו‬ ‫היות‬
.... -‫מה‬
?L ̸= NP :‫פתוחה‬ ‫בעיה‬ 24.2.1
?‫לוגריתמי‬ ‫בזיכרון‬ ‫כריעה‬ SAT ‫האם‬ ‫היא‬ ‫הפתוחה‬ ‫והשאלה‬ 2Θ(n)
‫זמן‬ ‫דורשת‬ SAT-‫ש‬ ‫משערים‬
?P ̸= P − SPACE ‫האם‬ ‫השאלה‬ ‫נשאלת‬ ‫גם‬ ‫וכמו-כן‬
27
‫צרמלו‬ ‫משפט‬ 26‫החישובים‬ ‫מורכבות‬
VI ‫חלק‬
‫במשחקים‬ ‫מנצחות‬ ‫אסטרטגיות‬
‫משחקים‬ ‫הגדרת‬ 25
.‫לסירוגין‬ ‫משחקים‬ ‫אשר‬ ‫שחקנים‬ ‫שני‬ ‫ישנם‬ ‫במשחק‬ N
.|x| = n .‫פתיחה‬ ‫מצב‬ = ‫קלט‬ N
.‫שחקן‬ ‫מאף‬ ‫מוסתר‬ ‫לא‬ ‫מידע‬ ‫שום‬ ,‫כלומר‬ - ‫מלא‬ ‫מידע‬ ‫קיים‬ N
:(poly (n) ‫)בזמן‬ ‫ביעילות‬ ‫לפתור‬ ‫ניתן‬ N
.‫נוכחי‬ ‫צעד‬ ‫בעקבות‬ ‫משחק‬ ‫מצב‬ ‫לעדכן‬ R
.‫התוצאה‬ ‫מה‬ - ‫כן‬ ‫ואם‬ ‫משחק‬ ‫סיום‬ ‫מצב‬ ‫זהו‬ ‫האם‬ ‫לקבוע‬ R
.poly (n) ≥ ‫במשחק‬ ‫הצעדים‬ ‫מספר‬ R
. poly (n) ≥ ‫באורך‬ ‫תיאור‬ ‫צעד‬ ‫ולכל‬ ‫מצב‬ ‫לכל‬ R
.‫שחור/תיקו‬ ‫לבן/ניצחון‬ ‫ניצחון‬ :‫ב‬ ‫מסתיים‬ ‫משחק‬ ‫כל‬ N
‫צרמלו‬ ‫משפט‬ 26
:‫הבאים‬ ‫משלושת‬ ‫אחד‬ ‫מתקיים‬ ‫לעיל‬ ‫שתואר‬ ‫כפי‬ ‫משחק‬ ‫לכל‬
.‫לניצחון‬ ‫אסטרטגיה‬ ‫יש‬ ‫ללבן‬ .‫א‬
.‫לניצחון‬ ‫אסטרטגיה‬ ‫יש‬ ‫לשחור‬ .‫ב‬
.‫תיקו‬ ‫שמבטיחה‬ ‫אסטרטגיה‬ ‫יש‬ ‫לשניהם‬ .‫ג‬
?‫מנצחת‬ ‫אסטרטגיה‬ ‫יש‬ (‫)לבן‬ ‫הפותח‬ ‫שלשחקן‬ ‫רושמים‬ ‫כיצד‬ 26.1
G (· · · ) =
{
Accept ‫מנצח‬ ‫לבן‬
Reject ‫אחרת‬
28
‫לא-דטרמינסטי‬ ‫זיכרון‬ ‫סיבוכיות‬ 28‫החישובים‬ ‫מורכבות‬
?‫נותרו‬ ‫צעדים‬ ‫כמה‬ ‫מסמנים‬ ‫כיצד‬ 26.2
∃w1G (x, w1) 1
∃w1∀w2G (x, w1, w2) 2
∃w1∀w2∃w3G (x, w1, w2, w3) 3
...
∃w1∀w2 · · · QwmG (x, w1, w2, . . . , wm) m
TQBF 27
:True Quantified Boolean Formula ‫בשיטת‬ ‫זה‬ ,‫במשחק‬ ‫מנצחת‬ ‫אסטרטגיה‬ ‫ישנה‬ ‫אם‬ ‫להכריע‬ ‫נוספת‬ ‫דרך‬
:‫לפסוק‬ ‫מספקת‬ ‫השמה‬ ‫ישנה‬ ‫האם‬ ‫למצוא‬ ‫הוא‬ ‫כאן‬ ‫הרעיון‬



∃x1∀x2∃x3 · · · Qmφ (· · · )
ψ
‫אמיתי‬ ‫הפסוק‬



‫מפצלים‬ ‫פשוט‬ ‫אזי‬ ,‫אחד‬ ‫מביט‬ ‫יותר‬ ‫מכיל‬ ‫שלמעלה‬ wi-‫ו‬ ‫במידה‬ .‫אחד‬ ‫ביט‬ ‫הוא‬ xi ‫וכל‬ ,‫כמתים‬ ‫ללא‬ φ (· · · ) ‫כאשר‬
.‫ביטים‬ ‫למספר‬ wi ‫כל‬
TQBF ‫להכרעת‬ ‫אלגוריתם‬ 27.1
.43 ‫בעמוד‬ 1 ‫אלגוריתם‬ :‫כאן‬ ‫האלגוריתם‬ ‫את‬ ‫לראות‬ ‫ניתן‬
‫-שלמה‬PSPACE ‫היא‬ TQBF 27.2
:‫כלומר‬
.TQBF ∈ D − SPACE ‫וגם‬ TQBF ∈ PSPACE .‫א‬
.PSPACE-‫ב‬ ‫קשה‬ ‫הכי‬ ‫גם‬ ‫והיא‬ PSPACE ‫את‬ ‫מייצגת‬ TQBF .‫ב‬
.L ≤p T QBF :‫מתקיים‬ L ∈ PSPACE ‫לכל‬
TQBF ‫של‬ ‫הזיכרון‬ ‫סיבוכיות‬ 27.3
:(‫הכמתים‬ ‫)מספר‬ m > 1 ‫עבור‬
S (m, l) = S (m − 1, l)
.S (m, l) = Θ (m) + Θ (l) :‫זיכרון‬ ‫במחזור‬ ‫ונשתמש‬ 2m
-‫ה‬ ‫את‬ ‫נוריד‬ ‫ולכן‬ 2m
‫הינו‬ ‫הנסיגה‬ ‫נוסחת‬ ‫פתרון‬
.(45 ‫)עמוד‬ 8 ‫הסבר‬ ‫לאחר‬ ‫מיד‬ ‫למצוא‬ ‫ניתן‬ ‫לכך‬ ‫ההסבר‬ ‫את‬ .Θ
(
S2
)
‫והוא‬ ‫לינארי‬ ‫הוא‬ ‫הריצה‬ ‫זמן‬ ‫כעת‬
‫לא-דטרמינסטי‬ ‫זיכרון‬ ‫סיבוכיות‬ 28
.‫מעריכית‬ ‫דטרמיניסטית‬ ‫הלא‬ ‫הכוח‬ ‫תוספת‬ - P ̸= NP
.‫סימטרית‬ ‫לא‬ ‫דטרמיניסטית‬ ‫הלא‬ ‫הכוח‬ ‫תוספת‬ - coNP ̸= NP
:‫אזי‬ S (n) ≥ Ω (n) ‫אם‬ ."‫"סדירה‬ ‫זיכרון‬ ‫פונקציית‬ S : N → N ‫תהי‬
:28.1 ‫משפט‬
.(Savitch ‫)משפט‬ ND − SPACE (S) ⊆ D − SPACE
(
S2
)
7
44 ‫בעמוד‬ L ≤p TQBF :‫כאן‬ ‫לראות‬ ‫ניתן‬ ‫למשפט‬ ‫ההוכחה‬ ‫את‬
.‫המתבקשת‬ ‫המסקנה‬ ‫את‬ ‫לראות‬ ‫ניתן‬ ‫ההוכחה‬ ‫בסוף‬7
29
‫רקע‬ 29‫החישובים‬ ‫מורכבות‬
.(Immerman Szelopcsenyi) coND − SPACE (S) = ND − SPACE (S)
VII ‫חלק‬
(‫אוב‬ ‫)פונקציית‬ ‫האורקל‬ ‫גישת‬
(1643) ‫האורקל‬ ‫בפני‬ ‫ניצבים‬ ‫ואכילס‬ ‫תטיס‬
‫רקע‬ 29
.‫אותה‬ ‫לפתור‬ ‫נוכל‬ ‫בעתיד‬ ‫והאם‬ ,P = NP ‫האם‬ ‫השאלה‬ ‫את‬ ‫לפתור‬ ‫מצליחים‬ ‫איננו‬ ‫מדוע‬ ‫היא‬ ‫השאלות‬ ‫אחת‬
‫לא‬ ‫גם‬ ‫היא‬ ‫ומדוע‬ ‫נפתרה‬ ‫לא‬ ‫עוד‬ ‫היא‬ ‫מדוע‬ ‫הסבר‬ ‫שמציע‬ (BGS - Baker Gill Solovay) ‫מאמר‬ ‫פורסם‬ 1975 ‫בשנת‬
....‫שלנו‬ ‫ההוכחות‬ ‫מערכת‬ ‫עם‬ ‫תיפתר‬
.(‫אוב‬ ‫פונקציית‬ :‫)או‬ ‫האורקל‬ ‫גישת‬ - ‫חדש‬ ‫כלי‬ ‫גויס‬ ‫כך‬ ‫לשם‬
‫אורקל‬ ‫גישת‬ 29.1
.‫מקבילים/דמיוניים‬ ‫יקומים‬ ‫על‬ ‫כרגע‬ ‫מדברים‬ ‫אנחנו‬
M :‫כלומר‬ .O-‫ל‬ ‫אורקל‬ ‫גישת‬ ‫יש‬ M ‫מכונה‬ ‫לכל‬ ‫היקום‬ ‫שבאותו‬ (‫ויחידה‬ ‫)אחת‬ O ‫שפה‬ ‫ישנה‬ ‫מקביל‬ ‫ביקום‬ ‫כי‬ ‫נניח‬
.x ∈ O ‫האם‬ - ‫מהצורה‬ ‫שאלה‬ ‫לכל‬ ‫נכונה‬ ‫תשובה‬ ‫יחיד‬ ‫חישוב‬ ‫בצעד‬ ‫מקבלת‬
‫גם‬ ‫ומותר‬ x1, . . . , xn−1 ‫רוצים‬ ‫שאנחנו‬ ‫שאילתות‬ ‫כמה‬ ‫אורקל‬ ‫אותו‬ ‫את‬ ‫לשאול‬ ‫מותר‬ ,‫כלומר‬ ,‫אדפטיבית‬ ‫היא‬ ‫הגישה‬
.(‫השאילתות‬ ‫בבניית‬ ‫הוא‬ ‫כאן‬ ‫)המחיר‬ .‫בקודמותיה‬ ‫תלויה‬ ‫תהיה‬ xn ‫שאילתה‬ ‫שכל‬
‫סימונים‬ 29.2
.O ‫לאורקל‬ ‫גישה‬ ‫עם‬ ‫גישה‬ ‫עם‬ x ‫קלט‬ ‫על‬ M ‫מכונה‬ ‫של‬ ‫הריצה‬ ‫את‬ MO
(x)-‫ב‬ ‫מסמנים‬
.O ‫לאורקל‬ ‫גישה‬ ‫בעזרת‬ (P-‫ה‬ ‫)בגלל‬ (14) ‫ביעילות‬ ‫להכריע‬ ‫שניתן‬ ‫השפות‬ ‫על‬ ‫אוסף‬ ‫זהו‬ - PO
.O ‫לאורקל‬ ‫גישה‬ ‫בעזרת‬ ‫ל"ד‬ ‫באופן‬ ‫ביעילות‬ ‫להכריע‬ ‫שניתן‬ ‫השפות‬ ‫על‬ ‫אוסף‬ ‫זהו‬ - NPO
.‫לאורקל‬ ‫גישה‬ ‫באמצעות‬ ‫ביעילות‬ SAT ‫את‬ ‫לפתור‬ ‫ניתן‬ ‫שבו‬ ‫יקום‬ ‫זה‬ - PSAT
:‫למשל‬
.‫כמותו‬ ‫ועונה‬ ‫לאורקל‬ x ‫קלט‬ ‫מעבירה‬ M ‫מכונה‬ - SAT ∈ PSAT
.‫להפך‬ ‫ועונה‬ ‫לאורקל‬ x ‫קלט‬ ‫מעבירה‬ M ‫מכונה‬ - SATC
∈ PSAT
30
‫רקע‬ 29‫החישובים‬ ‫מורכבות‬
:‫תזכורת‬
‫קופסה‬ ‫מעין‬ ‫כמו‬ ,‫יחיד‬ ‫חישוב‬ ‫בצעד‬ x ∈ O ‫האם‬ ‫להכריע‬ ‫ניתן‬ ‫מקביל‬ ‫שביקום‬ ‫שפה‬ ‫זאת‬ - O
.‫שחורה‬
.‫בודקים‬ ‫אנחנו‬ ‫שאותו‬ ‫הקלט‬ ‫זה‬ - x
.NP, coNP ⊆ PSAT
:‫כי‬ ‫מכך‬ ‫נובע‬
:‫למשל‬ ,‫שאילתות‬ ‫שתי‬ ‫ידרשו‬ (∃ · · · ) ∧ (∀ · · · ) ‫של‬ ‫בצורה‬ ‫בהיררכיה‬ 2 ‫ברמה‬ ‫בעיות‬
:29.1 ‫דוגמא‬
.Exact − SAT =
{
(φ, k) Val (φ) = K
}
:‫אםם‬ (φ, k) ∈ E.S.
[∃w1 Val (φ, w1) ≥ k]
(φ, k) ∈ L
‫תשובה‬ ‫נותן‬ ‫אורקל‬
f (φ, k) ‫חיובית‬
∧ [∀w2 Val (φ, k) ≤ k]
‫תשובה‬ ‫נותן‬ ‫אורקל‬
f (φ, k + 1) ‫שלילית‬
.‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫יש‬ ‫כי‬ L ∈ NP - L =
{
(φ, k) Val (φ) ≥ k
}
‫כאשר‬
.L≤p
SAT :‫קארפ‬ ‫רדוקציית‬ ‫היא‬ f ‫כאן‬
‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ - ‫מסורתית‬ ‫הוכחה‬ 29.3
: ‫טיעון‬ ‫אחר‬ ‫טיעון‬ ,‫ההוכחה‬ ‫את‬ ‫נרשום‬ ‫אזי‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫לרשום‬ ‫נרצה‬ ‫אם‬
φ1 ⊢ φ2 ⊢ · · · ⊢ φm
.O ‫שרירותי‬ ‫לאורקל‬ ‫בגישה‬ ‫תיקונים‬ ‫ללא‬ ‫תקף‬ ‫להיות‬ ‫צריך‬ φi ⊢ φi+1 ‫מעבר‬ ‫כל‬ ‫כאשר‬
:‫מסורתיות‬ ‫להוכחות‬ ‫דוגמאות‬
.‫הזמן‬ ‫של‬ ‫ההיררכיה‬ ‫משפט‬ .‫א‬
.‫המקום‬ ‫של‬ ‫ההיררכיה‬ ‫משפט‬ .‫ב‬
.NP∃ = NPnd ‫ההגדרות‬ ‫שקילות‬ .‫ג‬
.P ⊆ NP .‫ד‬
BGS-‫ה‬ ‫משפט‬ 29.4
:29.1 ‫משפט‬
.PO
̸= NPO
:‫מתקיים‬ O ‫אורקל‬ ‫לכל‬ ‫אזי‬ ,P ̸= NP ‫לטענה‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫יש‬ ‫אם‬
.P ̸= NP-‫ל‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫אין‬ ‫אז‬ - PO
= NPO
‫שמקיים‬ O ‫אורקל‬ ‫יש‬ - BGS
:29.2 ‫משפט‬
.PO
= NPO
:‫מתקיים‬ O ‫אורקל‬ ‫לכל‬ ‫אזי‬ ,P = NP ‫לטענה‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫יש‬ ‫אם‬
.P = NP-‫ל‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫אין‬ ‫אז‬ - PO
̸= NPO
‫שמקיים‬ O ‫אורקל‬ ‫יש‬ - BGS
31
‫הוכחה‬ ‫למערכת‬ ‫הדרושים‬ ‫התנאים‬ 31‫החישובים‬ ‫מורכבות‬
:4 ‫הסבר‬
‫אותה‬ ‫בדיוק‬ ‫היא‬ A ‫הוכחה‬ :‫כלומר‬ ,P ̸= NP ‫לטענה‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ (A ‫לה‬ ‫)נקרא‬ ‫הוכחה‬ ‫ישנה‬ ‫אם‬
.PO
̸= NPO
:‫מתקיים‬ O ‫אורקל‬ ‫לכל‬ ‫אזי‬ ,‫אורקל‬ ‫ובלי‬ ‫אורקל‬ ‫עם‬ ‫הוכחה‬
,¬α ‫אז‬ ¬β ‫אם‬ :‫לביטוי‬ ‫שקול‬ ‫הוא‬ ‫כי‬ ‫מלוגיקה‬ ‫יודעים‬ ‫ואנחנו‬ ,β ‫אז‬ α ‫אם‬ :‫מהצורה‬ ‫ביטוי‬ ‫לנו‬ ‫יש‬ ‫כעת‬
:‫שלנו‬ ‫במקרה‬ ,‫כלומר‬
.(¬α) P ̸= NP-‫ל‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫אין‬ ‫אז‬ (¬β) PO
= NPO
‫שמקיים‬ ‫אורקל‬ [‫]קיים‬ ‫יש‬ ‫אם‬
.BGS-‫ה‬ ‫משפט‬ ‫זה‬ .=←↛= :‫סימנים‬ ‫להפוך‬ ‫רק‬ ‫בדיוק‬ ‫משפט‬ ‫אותו‬ ‫לכתוב‬ ‫ניתן‬ ‫כעת‬
:A, B ‫אורקלים‬ ‫שני‬ ‫יש‬ BGS-‫ה‬ ‫משפט‬ ‫לפי‬
.(29.1 ‫)משפט‬ ‫המשפט‬ ‫של‬ ‫הראשון‬ ‫החלק‬ ‫וזה‬ - PA
= NPA
.(29.2 ‫)משפט‬ ‫המשפט‬ ‫של‬ ‫השני‬ ‫החלק‬ ‫וזה‬ - PB
̸= NPB
(41 ‫)עמוד‬ BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ :‫כאן‬ ‫נמצאת‬ ,(‫חלקיו‬ ‫שני‬ ‫)על‬ ‫המשפט‬ ‫הוכחה‬
VIII ‫חלק‬
PCP-‫ה‬ ‫משפט‬
.‫הראשונה‬ ‫המודפסת‬ ‫ההוכחה‬ ‫את‬ ‫מחזיק‬ (1395-1468) ‫גוטנברג‬ ‫יוהן‬
?‫הוכחה‬ ‫מערכת‬ ‫מהי‬ 30
:‫דברים‬ ‫שלושה‬ ‫לנו‬ ‫יש‬
.‫טענה‬ - φ
.‫אמיתית‬ ‫שהטענה‬ V ‫את‬ ‫לשכנע‬ ‫ניסיון‬ - ‫טיעון‬ - P
.‫הטיעון‬ ‫נכונות‬ ‫את‬ ‫שבודק‬ - ‫מוודא‬ - V
:‫דורשים‬ ‫שאנחנו‬ ‫תנאים‬ ‫שלושה‬ ‫ישנם‬
‫הוכחה‬ ‫למערכת‬ ‫הדרושים‬ ‫התנאים‬ 31
‫שלמות‬ 31.1
:‫אמיתית‬ φ
32
PCP-‫ה‬ ‫משפט‬ 32‫החישובים‬ ‫מורכבות‬
∃P V (φ, P) = Accept ⇐ x ∈ L
.∃P Pr [V (φ, P) = Accept] = 1 ‫זה‬ ‫כי‬ ‫נראה‬ ‫ובהמשך‬
‫נאותות‬ 31.2
:‫שקרית‬ φ
∀P V (φ, P) = Reject ⇐ x /∈ L
.∀P Pr [V (φ, P) = Reject] > 1
3 ‫או‬ ∀P Pr [V (φ, P) ̸= Reject] < 1
3 ‫זה‬ ‫כי‬ ‫נראה‬ ‫ובהמשך‬
PCP-‫ה‬ ‫משפט‬ 32
‫דגימה‬ ‫שבאמצעות‬ ‫הוא‬ ‫היתרון‬ ‫אבל‬ ,‫בנפח‬ ‫וכמה‬ ‫כמה‬ ‫פי‬ ‫ההוכחה‬ ‫את‬ ‫מגדילים‬ ‫שאנחנו‬ ‫הוא‬ PCP-‫ה‬ ‫במשפט‬ ‫הרעיון‬
‫בהסתברות‬ ‫או‬ ,‫נכונה‬ ‫ההוכחה‬ ‫האם‬ ‫לדעת‬ ‫נוכל‬ ‫אנחנו‬ ,(‫המקורית‬ ‫להוכחה‬ ‫ביחס‬ ‫קטן‬ ‫)שהוא‬ ‫ביטים‬ ‫של‬ ‫קבוע‬ ‫מספר‬ ‫של‬
.‫לא‬ ‫שהיא‬
(1
3 >
)
‫כלשהי‬
:‫סימון‬
L ∈ PCP (r, q)
.‫שקוראים‬ ‫הביטים‬ ‫מספר‬ ‫הוא‬ q-‫ו‬ ,‫המטבע‬ ‫הטלות‬ ‫מספר‬ ‫זה‬ - r ‫כאשר‬
:‫אחרות‬ ‫במילים‬ ‫או‬
PCP (r, q) =



‫לטענות‬ ‫עבורן‬ ,L ‫השפות‬ ‫כל‬ ‫אוסף‬
‫מטבע‬ ‫הטלות‬ Θ (r) ‫עם‬ ‫יעיל‬ V ‫יש‬ x ∈ L
‫מההוכחה‬ ‫ביטים‬ Θ (q) ‫ו‬



:‫יעילות‬ ‫נגדיר‬ ‫כעת‬
‫יעילות‬ 32.1
.n = |x| :‫שמקיים‬ V ‫יש‬ ‫אם‬
,poly (n) ≥ ‫הוא‬ ‫הריצה‬ ‫זמן‬ ‫כאשר‬
,Θ (r) ≥ ‫המטבע‬ ‫הטלות‬ ‫מספר‬ ‫וכאשר‬
.Θ (q) ≥ (‫שקוראים‬ ‫הביטים‬ ‫)מספר‬ ‫השאילתות‬ ‫ומספר‬
:‫למשל‬
NP = PCP (0, poly (n))
:‫הוא‬ ‫להוכיח‬ ‫נרצה‬ ‫שאנחנו‬ ‫המשפט‬
NP = P CP (Θ (log n) , Θ (1))
.45 ‫בעמוד‬ NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ :‫כאן‬ ‫נמצאת‬ ‫ההוכחה‬
33
‫הבסיסי‬ ‫הרעיון‬ 33‫החישובים‬ ‫מורכבות‬
IX ‫חלק‬
IP - ‫אינטראקטיביות‬ ‫הוכחה‬ ‫מערכות‬
‫הבסיסי‬ ‫הרעיון‬ 33
.‫ודו-שיח‬ ,‫הסתברות‬ :‫דברים‬ ‫שני‬ ‫משלבת‬ ‫אשר‬ ‫מתקדמת‬ ‫הוכחות‬ ‫במערכת‬ ‫כאן‬ ‫מדובר‬ ‫בעיקרון‬
:‫כזה‬ ‫הוא‬ ‫הרעיון‬ ‫הדו-שיח‬ ‫לגבי‬ ‫אבל‬ ,‫בהמשך‬ ‫נפגוש‬ ‫עוד‬ ‫אנחנו‬ ‫ההסתברות‬ ‫את‬
.‫מוכיח‬ - P-‫ו‬ ,‫מוודא‬ - V ‫ישנו‬
...‫לשניהם‬ ‫זהה‬ x ∈ L ‫מהסוג‬ ‫טענות‬
.‫לו‬ ‫עונה‬ P-‫ו‬ P-‫ל‬ ‫שאילתה‬ ‫ושולח‬ ‫השיחה‬ ‫את‬ ‫פותח‬ V
‫הדו-שיח‬ ‫פרוטוקול‬ 33.1
:‫בניהן‬ ‫הדו-שיח‬ ‫פרוטוקול‬ ‫מתנהל‬ ‫כך‬
P V
q1
qq™™™™™™™™™™™™™™™
r2
--‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘
...
qk−1
qq™™™™™™™™™™™™™™™
rk
--‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘
:‫כך‬ ‫מסומן‬ ‫והוא‬ ,‫צעדים‬ k-‫ב‬ ‫פרוטוקול‬ ‫נקרא‬ ‫הזה‬ ‫הפרוטוקול‬
L ∈ IP [k]
V = (x,⃗c, q1, r2, . . . , qk−1, rk) ‫כאשר‬
‫שלמות‬ 33.2
:x ∈ L
8
∃P Pr
[
V P
(x) = Accept
]
= 1
.‫רעיון‬ ‫אותו‬ ‫הוא‬ ‫הרעיון‬ .V P (x) ‫רושמים‬ ‫אנחנו‬ V (x, P) ‫לרשום‬ ‫במקום‬8
34
‫גרפים‬ ‫של‬ ‫איזומורפיזם‬ - ‫דוגמה‬ 34‫החישובים‬ ‫מורכבות‬
‫נאותות‬ 33.3
:x /∈ L
∀P Pr
[
V P
(x) = Reject
]
≥
1
2
.P-‫ל‬ V ‫בין‬ ‫אינטראקציה‬ ‫שיש‬ ‫בכך‬ NP-‫מ‬ ‫שונה‬ ‫זה‬
‫יעילות‬ 33.4
.poly (|x|) ‫בזמן‬ ‫רץ‬ V
‫גרפים‬ ‫של‬ ‫איזומורפיזם‬ - ‫דוגמה‬ 34
:‫פונקציה‬ ‫קיימת‬ ‫אם‬ G0
∼= G1 ‫ומסומנים‬ ‫איזומורפים‬ ‫נקראים‬ G0, G1 ‫גרפים‬ ‫שני‬
π : V (G0) → V (G1)
.‫ועל‬ ‫ערכית‬ ‫חד-חד‬ ‫שהיא‬
‫להיות‬ ‫חייבים‬ ‫שלגרפים‬ ‫שמבטיח‬ ‫)מה‬ ‫ועל‬ ‫חח"ע‬ ‫שהיא‬ G1 ‫של‬ ‫לקודקודים‬ G0 ‫של‬ ‫מהקודקודים‬ ‫פונקציה‬ ‫קיימת‬ ,‫כלומר‬
:‫כלומר‬ ,"‫צלעות‬ ‫"שומרת‬ ‫גם‬ ‫שהיא‬ ,(‫קודקודים‬ ‫של‬ ‫מספר‬ ‫אותו‬
{u, v} ∈ E (G0) ⇐⇒ {π (u) , π (v)} ∈ E (G1)
.G1-‫ב‬ {π (u) , π (v)} ‫צלע‬ ‫ישנה‬ ‫אזי‬ G0-‫ב‬ {u, v} ‫הצלע‬ ‫את‬ ‫ניקח‬ ‫אם‬ ,‫כלומר‬
‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ 34.1
G0 G1
?>=<89:;1
bbbbbb
?>=<89:;1
FFFFFFFFFFF
?>=<89:;5
      
?>=<89:;2 ∼= ?>=<89:;5 ?>=<89:;2
?>=<89:;4 ?>=<89:;3 ?>=<89:;4

ppppppppppp ?=89:;3
xxxxxxxxxxx
‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ :5 ‫איור‬
GISO, GNISO ‫השפות‬ 34.2
GISO = GI =
{
⟨G0, G1⟩ G0
∼= G1
}
.π ‫היא‬ ‫לכך‬ ‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫כי‬ GI ∈ NP
.GI ∈ P ‫כי‬ ‫משערים‬
GNISO =
{
⟨G0, G1⟩ G0 G1
}
35
‫קבוע‬ K ‫כאשר‬ IP [K] 36‫החישובים‬ ‫מורכבות‬
.GNISO ∈ coNP ‫בבירור‬
.GISO /∈ NPC ‫וכי‬ GNISO /∈ NP :‫כי‬ ‫משערים‬
GNISO ∈ IP [2] ‫כי‬ ‫ההוכחה‬ 35
.G0 G1 ‫כי‬ ‫היא‬ ‫הטענה‬ :‫תזכורת‬
:‫כך‬ ‫פועל‬ P-‫ל‬ V ‫בין‬ ‫הפרוטוקול‬
P-‫ל‬ ‫ושולח‬ .π ‫אחידה‬ ‫תמורה‬ ‫ומגריל‬ (G0, G1 ‫הגרפים‬ ‫משני‬ ‫אחד‬ ‫בעצם‬ ‫)שזהו‬ b ∈ {0, 1} ‫אחד‬ ‫ביט‬ ‫מגריל‬ V .‫א‬
.π (Gb) ‫את‬
.c ‫ביט‬ ‫בחזרה‬ ‫ושולח‬ b ‫מהו‬ ‫לנחש‬ ‫מנסה‬ P .‫ב‬
V (G0, G1, b, π, c) =
{
Accept c = b
Reject c ̸= b
.‫ברורה‬ V ‫של‬ ‫היעילות‬
:‫שלמות‬
.G ∈ π (G0)∧G ∈ π (G1)-‫ש‬ ‫כך‬ G ‫גרף‬ ‫אף‬ ‫אין‬ ‫כלומר‬ , 9
‫זרות‬ ‫ההתפלגויות‬ ‫אזי‬ ,(‫נכונה‬ ‫הטענה‬ ,‫)כלומר‬ G0 G1 ‫אם‬
c = 0 ‫לענות‬ ‫ואז‬ G0-‫ב‬ ‫אליו‬ ‫שנשלח‬ ‫הגרף‬ ‫האם‬ ‫לחשב‬ ‫יכול‬ ‫האפשריות‬ ‫התמורות‬ |V |! ‫כל‬ ‫סריקת‬ ‫עי‬ ‫יכול‬ P-‫ה‬ ‫לכן‬
.c = 1-‫ב‬ ‫לענות‬ ‫ואחרת‬
.V (G0, G1, b, π, c) = Accept :‫ולכן‬ ,c = b ‫בברור‬
:‫נאותות‬
.10
π ‫בכל‬ ‫פעמים‬ ‫מספר‬ ‫אותו‬ ‫מופיע‬ ‫גרף‬ ‫כל‬ ,‫כלומר‬ ,‫זהות‬ ‫ההתפלגויות‬ ‫אזי‬ (‫שקרית‬ ‫הטענה‬ ,‫)כלומר‬ G0
∼= G1 ‫אם‬
:‫ולכן‬ π (G1)-‫ל‬ π (G0) ‫בין‬ ‫להבין‬ ‫יכול‬ ‫לא‬ P ,‫לכן‬
Pr [c ̸= b] =
1
2
⇓
Pr [V (G0, G1, b, π, c) = Reject] =
1
2
‫קבוע‬ K ‫כאשר‬ IP [K] 36
.‫הצדדים‬ ‫לשני‬ ‫גלויות‬ ‫הן‬ AM-‫וב‬ ,‫סודיות‬ ‫הן‬ ‫ההטלות‬ IP-‫ב‬ ‫רק‬ IP ‫כמו‬ ‫זה‬ - AM
AM = AM [2] =
∪
K
IP [K]
.‫קבוע‬ K ‫כאשר‬
.1 = ‫שלמות‬ ‫לייצר‬ ‫כדי‬ ‫פומביות‬ ‫הודעות‬ ‫שתי‬ ‫רק‬ ‫מספיקות‬ ,‫כלומר‬
.AM ⊆ Π2P ‫כי‬ ‫ידוע‬
‫גרף‬ ‫אף‬ ‫לנו‬ ‫יהיה‬ ‫לא‬ - ‫איזומורפים‬ ‫אינם‬ ‫הם‬ ‫אם‬ ,‫שווים‬ ‫הם‬ ‫מתי‬ ‫ונראה‬ ‫מהגרפים‬ ‫אחד‬ ‫כל‬ ‫של‬ ‫האפשרויות‬ ‫התמונות‬ ‫כל‬ ‫את‬ ‫ניקח‬ ‫אם‬ ,‫כלומר‬9
.‫גרף‬ ‫לאף‬ ‫ששווה‬
‫אזי‬ ,(‫האפשריות‬ ‫הפרמוטציות‬ ‫כל‬ ‫)את‬ ‫האפשריים‬ ‫הגרפים‬ ‫כל‬ ‫את‬ ‫תכיל‬ ‫עמודה‬ ‫וכל‬ ‫האפשריות‬ (‫)הגרפים‬ ‫הפרמוטציות‬ ‫כל‬ ‫של‬ ‫טבלה‬ ‫נעשה‬ ‫אם‬10
.‫עמודה‬ ‫בכל‬ ‫פעמים‬ ‫מספר‬ ‫אותו‬ ‫יופיע‬ ‫גרף‬ ‫אותו‬ ‫שבו‬ ‫מצב‬ ‫ייווצר‬
36
Zero Knowledge-‫ה‬ ‫עיקרון‬ 38‫החישובים‬ ‫מורכבות‬
(‫המרכזי‬ ‫)המשפט‬ IP ‫הגדרת‬ 37
IP = IP [poly (n)] =
∪
c∈N
IP [K = Θ (nc
)]
:‫ולכן‬
IP = PSPACE
.(K = 2) ‫בקבוע‬ ‫מדובר‬ (35) GNISO-‫ה‬ ‫בפרוטוקול‬ ,‫למשל‬
Zero Knowledge-‫ה‬ ‫עיקרון‬ 38
?P-‫מ‬ V ‫מקבל‬ ‫אינפורמציה‬ ‫כמה‬ :‫היא‬ ‫כאן‬ ‫השאלה‬
.‫אחד‬ ‫ביט‬ ‫היא‬ ?”x ∈ L” ‫לשאלה‬ ‫התשובה‬ ‫כאשר‬
(NP) ‫קלאסית‬ ‫הוכחה‬ ‫מערכת‬ 38.1
.‫ביטים‬ n :SAT
.‫ביטים‬ Θ (|V |) :3 − COL
.x ∈ L-‫ש‬ ‫טענה‬ ‫אותה‬ ‫בהוכחת‬ P-‫ה‬ ‫את‬ ‫להחליף‬ ‫יכול‬ V -‫ה‬ :‫מסקנה‬
[IP] ‫אינטראקטיביות‬ ‫הוכחות‬ ‫מערכת‬ 38.2
:(35) GNISO ‫של‬ ‫הפרוטוקול‬ ‫על‬ ‫נסתכל‬
!‫דבר‬ ‫יודע‬ ‫אינו‬ V ,(‫שלמות‬ ‫שיש‬ ‫כיוון‬ ‫שראינו‬ ‫כמו‬ ‫וודאית‬ ‫)שהיא‬ G0 G1-‫ש‬ ‫לידיעה‬ ‫מעבר‬
...Zero Knowledge ‫שנקרא‬ ‫מה‬ ‫זה‬
!‫בעצמו‬ ‫ביעילות‬ ‫האינטראקציה‬ ‫את‬ ‫לסמלץ‬ ‫יכול‬ ‫היה‬ V ‫אזי‬ G0 G1-‫ש‬ ‫כבר‬ ‫יודע‬ ‫שהיה‬ ‫נניח‬ ,‫אחרות‬ ‫במילים‬
.(P ‫את‬ ‫חייב‬ ‫הוא‬ - ‫זאת‬ ‫יודע‬ ‫לא‬ ‫שהוא‬ ‫בגלל‬ ‫)אבל‬
:5 ‫הסבר‬
‫דרך‬ ‫שום‬ ‫לנו‬ ‫אין‬ ,‫כלומר‬ .‫הביט‬ ‫אותו‬ ‫מלבד‬ ‫אינפורמציה‬ ‫לנו‬ ‫מעביר‬ ‫לא‬ P-‫ש‬ ‫הוא‬ Zero Knowledge -‫ב‬ ‫הרעיון‬
.‫מידע‬ ‫ממנו‬ ‫מקבלים‬ ‫שאנחנו‬ ‫עד‬ ‫שקרית‬ ‫או‬ ‫נכונה‬ (x ∈ L) ‫הטענה‬ ‫האם‬ ‫לדעת‬
‫את‬ ‫להחליף‬ ‫נוכל‬ ‫שאנחנו‬ ‫כדי‬ ‫כלומר‬ ,‫בעצמנו‬ ‫לשפוט‬ ‫נדע‬ ‫שאנחנו‬ ‫כדי‬ ‫מספיק‬ ‫לא‬ - ‫מקבלים‬ ‫שאנחנו‬ ‫המידע‬ ‫וגם‬
‫כמות‬ ‫בגלל‬ P ‫את‬ ‫להחליף‬ ‫יכולים‬ ‫אנחנו‬ ,38.1 - (NP) ‫קלאסית‬ ‫הוכחה‬ ‫ב-מערכת‬ ‫למשל‬ ‫)כי‬ .‫הבאים‬ ‫במקרים‬ P
.(‫לנו‬ ‫מספק‬ ‫שהוא‬ ‫האינפורמציה‬
‫נאותות‬ + ‫שלמות‬ + ‫יעילות‬ :‫שמקיים‬ ‫פרוטוקול‬ ‫להמציא‬ ‫קל‬ .‫רבות‬ ‫חישוביות‬ ‫למשימות‬ ‫טוב‬ Zero Knowledge -‫ה‬
.‫הפרוטוקול‬ ‫לפי‬ ‫פועלים‬ (‫)מחשבים‬ ‫השחקנים‬ ‫שכל‬ ‫בהנחה‬
‫לפי‬ ,‫)כלומר‬ Zero Knowledge-‫ב‬ ‫פעל‬ ‫שהוא‬ ‫האחרים‬ ‫לשחקנים‬ ‫להוכיח‬ ‫יוכל‬ ‫מהשחקנים‬ ‫אחד‬ ‫כל‬ ‫לכך‬ ‫בנוסף‬
.(‫הפרוטוקול‬
‫להתחזות‬ ‫בעתיד‬ ‫ניתן‬ ‫שיהיה‬ ‫מבלי‬ ‫השני‬ ‫מול‬ ‫אחת‬ ‫להזדהות‬ ‫למחשבים‬ ‫למשל‬ ‫מאפשרת‬ Zero Knowledge-‫ה‬ ‫תכונת‬
.(‫לכך‬ ‫מספיק‬ ‫לא‬ ‫ההזדהות‬ ‫עבור‬ ‫שנשלח‬ ‫המידע‬ ‫)כי‬ ‫מהם‬ ‫לאחד‬
37
‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬ 39‫החישובים‬ ‫מורכבות‬
:‫לזכור‬ ‫כדאי‬
.‫לא‬ ‫או‬ ‫אמיתית‬ ‫היא‬ ‫אם‬ (‫)מוודא‬ ‫מאמת‬ ‫הוא‬ ‫הוכחה‬ ‫בהינתן‬ ,‫כלומר‬ ,‫מאמת‬ ‫הוא‬ - V
.(‫)המוכיח‬ P-‫ה‬ ‫לו‬ ‫מספק‬ ‫ההוכחה‬ ‫את‬
‫עיקרון‬ ‫של‬ ‫במקרה‬ ‫למשל‬ ,(‫לא‬ ‫או‬ ‫נכונה‬ ‫הטענה‬ ‫האם‬ ,‫)כלומר‬ ‫לטענה‬ ‫הוכחה‬ V -‫ל‬ ‫מספק‬ P ‫טענות‬ ‫של‬ ‫בהקשר‬
.‫לכך‬ ‫מעבר‬ ‫לא‬ ‫אבל‬ ,‫לא‬ ‫או‬ ‫נכונה‬ ‫הטענה‬ ‫האם‬ ‫המידע‬ ‫את‬ ‫מספק‬ P - (38) Zero Knowledge-‫ה‬
.‫שלו‬ ‫ההוכחה‬ ‫דרך‬ ‫את‬ ‫מספק‬ ‫ממש‬ P-‫ה‬ ‫שמה‬ - (38.1) ‫קלאסית‬ ‫הוכחה‬ ‫במערכת‬
X ‫חלק‬
‫הוכחות‬
.‫בקורס‬ ‫מרכזיות‬ ‫הוכחות‬ ‫יסקרו‬ ‫זה‬ ‫בחלק‬
‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬ 39
‫הוכחה‬ ‫של‬ ‫רעיון‬ ‫היא‬ (‫קנטור‬ ‫של‬ ‫האלכסון‬ :‫)או‬ ‫באלכסון‬ ‫ההוכחה‬ ‫בשיטת‬ ‫הרעיון‬
‫קאנטור‬ ‫ג'ורג‬
‫מההוכחה‬ ‫במקצת‬ ‫שונה‬ ‫)שהוא‬ ‫הלכסון‬ ‫רעיון‬ ‫זה‬ - ‫הראשון‬ - ‫רעיונות‬ ‫משתי‬ ‫שמורכב‬
‫לשחק‬ ‫שלנו‬ ‫היכולת‬ ‫זה‬ - ‫והשני‬ ,(‫אחרת‬ ‫יתואר‬ ‫הוא‬ ‫כאן‬ ‫ולכן‬ |ℵ0|  |ℵ|-‫ש‬ ‫המתמטית‬
‫אנחנו‬ ‫אם‬ ,‫ומספריים‬ ‫נייר‬ ‫באבן‬ ,‫)למשל‬ ‫אותו‬ ‫לנצח‬ ‫וכך‬ ‫השני‬ ‫השחקן‬ ‫אחרי‬ ‫אחד‬ ‫מהלך‬
‫שלנו‬ ‫במקרה‬ .(‫אותו‬ ‫לנצח‬ ‫יכולים‬ ‫תמיד‬ ‫אנחנו‬ - ‫השני‬ ‫השחקן‬ ‫אחרי‬ ‫מיד‬ ‫משחקים‬
‫אחרי‬ ‫לא‬ ‫או‬ ‫המילה‬ ‫את‬ ‫לקבל‬ ‫האם‬ ‫מכריעים‬ ‫אנחנו‬ ‫שבהן‬ ‫טיורינג‬ ‫במכונות‬ ‫מדובר‬
.(‫בהמשך‬ ‫יורחב‬ ‫כמובן‬ ‫זה‬ ‫על‬ ‫)אבל‬ .‫רצה‬ ‫שהמכונה‬
:‫סמלים‬ ‫בשלושה‬ ‫נשתמש‬ ,‫הלכסון‬ ‫רעיון‬ ‫את‬ ‫להבין‬ ‫בשביל‬
.‫וההפך‬ -‫ל‬ -‫מ‬ ,‫כלומר‬ ,‫האחרים‬ ‫שני‬ ‫בין‬ ‫המעבר‬ ‫את‬ ‫סמל‬ ‫אשר‬ - ‫ו‬ , ,
:‫הבאה‬ ‫הטבלה‬ ‫על‬ ‫נסתכל‬
‫קנטור‬ ‫של‬ ‫האלכסון‬ :6 ‫איור‬
x1 x2 x3 x4 · · ·
M1   
M2  
M3  
M4 
...
,‫טיורינג‬ ‫מכונות‬ ‫ואינסוף‬ ‫קלטים‬ ‫אינסוף‬ ‫לנו‬ ‫יש‬ ‫כאשר‬ (x) ‫מסוים‬ ‫קלט‬ ‫על‬ (M) ‫מכונה‬ ‫של‬ ‫ריצה‬ ‫מייצג‬ ‫בטבלה‬ ‫תא‬ ‫כל‬
.11
‫בטבלה‬ ‫פעמים‬ ‫אינסוף‬ ‫מיוצגת‬ Mi ‫מכונה‬ ‫כל‬ ,‫וכמו-כן‬
. :‫מקבלים‬ x2 ‫על‬ M1 ‫את‬ ‫שמריצים‬ ,‫כלומר‬ .‫למשל‬ ⟨M1, x2⟩ = ‫כעת‬
:‫הבאה‬ ‫הפונקציה‬ ‫זאת‬ ‫שם‬ ‫שיש‬ ‫שמה‬ ‫לב‬ ‫נשים‬ :‫באלכסון‬ ‫שקורה‬ ‫מה‬ ‫זה‬ ‫אותנו‬ ‫שמעניין‬ ‫מה‬ ‫אבל‬
⟨Mi, xi⟩ =
{
 ⟨Mi, xi⟩ =
⟨Mi, xi⟩ = 
.‫כפלט‬ ‫מכריזה‬ ‫מכונה‬ ‫שאותה‬ ‫ממה‬ ‫ההפך‬ ‫את‬ ‫בדיוק‬ ‫יש‬ ‫באלכסון‬ ,‫כלומר‬
.‫מההוכחות‬ ‫בחלק‬ ‫זה‬ ‫בנתון‬ ‫נשתמש‬11
38
‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬ 39‫החישובים‬ ‫מורכבות‬
‫העצירה‬ ‫בעיית‬ ‫אי-כריעות‬ ‫הוכחת‬ 39.1
HALT =
{
⟨M⟩ , x x ‫קלט‬ ‫על‬ ‫עוצרת‬ M ‫מט‬
}
‫הנחות‬ 39.1.1
.‫קבועה‬ ‫טריוויאלית‬ ‫מט‬ ‫מייצגת‬ Mi ‫אזי‬ ,‫תקינה‬ ‫לא‬ Mi ‫מט‬ ‫אם‬ .‫טיורינג‬ ‫מכונת‬ ‫מייצגת‬ (xi) ‫מחרוזת‬ ‫כל‬ .‫א‬
.(‫מימוש‬ ‫ואותו‬ ‫תכנית‬ ‫)אותה‬ ‫במנייה‬ ‫פעמיים‬ ‫אינסוף‬ ‫מופיעה‬ ‫מכונה‬ ‫כל‬ .‫ב‬
‫ההוכחה‬ 39.1.2
:i ‫הוכחה‬
HALT ‫את‬ ‫שמכריעה‬ MH
‫מכונה‬ ‫שקיימת‬ ‫בשלילה‬ ‫נניח‬
:‫כלומר‬ ,‫ההפך‬ ‫ומתנהגת‬ MH
⟨⟨Mi⟩ , xi⟩ ‫הריצה‬ ‫את‬ ‫מסמלצת‬ ‫היא‬ :xi ‫קלט‬ ‫על‬ MD
‫מלכסנת‬ ‫מכונה‬ ‫נגדיר‬
‫של‬ ‫למצב‬ ‫נכנסת‬ MD
.‫אינסופית‬ ‫ריצה‬
,MD
(xi) = ∞ ,MH
⟨⟨Mi⟩ , xi⟩ = Accept
.‫מיד‬ ‫עוצרת‬ MD
,MD
(xi) ̸= ∞ ,MH
⟨⟨Mi⟩ , xi⟩ = Reject
.
⊙
-‫ב‬ ‫זאת‬ ‫נסמן‬
.12
xD
‫הקלט‬ ‫על‬ MD
‫את‬ ‫שנריץ‬ ‫הוא‬ ‫שנעשה‬ ‫מה‬ ,‫כעת‬
:‫אפשרויות‬ ‫שתי‬ ‫ישנן‬ ‫כעת‬
MH
(⟨
MD
⟩
, xD
)
= Reject MH
(⟨
MD
⟩
, xD
)
= Accept
⇓ MH
-‫ש‬ ‫ההנחה‬ ‫לפי‬
HALT ‫את‬ ‫מכריעה‬
⇓
MD
(
xD
)
̸= ∞ MD
(
xD
)
= ∞
MD
(
xD
)
= ∞
⊙
‫לפי‬ MD
(
xD
)
̸= ∞
!‫סתירה‬ !‫סתירה‬
.MD
̸= Mi :i ‫לכל‬ ,‫כלומר‬ ,‫כזאת‬ MD
‫מכונה‬ ‫קיימת‬ ‫שלא‬ ‫ומכאן‬
:6 ‫הסבר‬
:‫כזה‬ ‫הוא‬ ‫בהוכחה‬ ‫הרעיון‬
‫מכונה‬ ,‫כלומר‬ ,‫מלכנסת‬ ‫מכונה‬ ‫מגדירים‬ ‫אנחנו‬ .HALT ‫את‬ ‫שמכריעה‬ h ‫מכונה‬ ‫קיימת‬ ‫כי‬ ‫בשלילה‬ ‫מניחים‬ ‫אנחנו‬
(‫קנטור‬ ‫של‬ ‫)האלכסון‬ ‫בטבלה‬ ‫האלכסון‬ ‫על‬ ‫רק‬ ‫עובדת‬ ‫המכונה‬ - ‫אחרות‬ ‫במילים‬ .‫בלבד‬ ‫האלכסון‬ ‫על‬ ‫שמשפיעה‬
.‫הופכת‬ ‫היא‬ ‫שם‬ ‫תוצאה‬ ‫-וכל‬
‫המכונה‬ ,‫כלומר‬ ,‫עצמה‬ ‫של‬ ‫התשובה‬ ‫את‬ ‫הופכת‬ ‫היא‬ ‫ולכן‬ .‫עצמה‬ ‫את‬ ‫למכונה‬ ‫שולחים‬ ‫שאנחנו‬ ‫מכך‬ ‫מגיעה‬ ‫הסתירה‬
.‫אותה‬ ‫שהגדרנו‬ ‫איך‬ ‫עפ‬ ‫תתן‬ ‫היא‬ ‫עצמה‬ ‫את‬ ‫לה‬ ‫שנותנים‬ ‫ברגע‬ ‫אבל‬ ,‫למשל‬  ‫לנו‬ ‫תתן‬ ‫טבעי‬ ‫באופן‬
.‫סתירה‬ ‫וזאת‬ - ‫וגם‬  ‫שגם‬ ‫היא‬ ‫והתשובה‬ ?‫תתן‬ ‫היא‬ ‫פלט‬ ‫איזה‬ - ‫השאלה‬ ‫נשאלת‬ ‫לכן‬
.‫בטבלה‬ ‫נמצאת‬ ‫לא‬ ‫היא‬ ‫כי‬ ‫מכונה‬ ‫קיימת‬ ‫שלא‬ ‫מכך‬ ‫נובע‬ ‫ולכן‬
.‫עצמה‬ ‫את‬ ‫למכונה‬ ‫נותנים‬ ‫אנחנו‬ ,‫כלומר‬ .xD = xl ‫אזי‬ l ‫הוא‬ MD ‫של‬ ‫האינדקס‬ ‫אם‬ ,‫כלומר‬12
39
‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬ 39‫החישובים‬ ‫מורכבות‬
13
‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬ 39.2
xi ‫של‬ ‫המשמעות‬ ,‫למשל‬ .‫שם‬ ‫והוסברו‬ ‫כאן‬ ‫הוסברו‬ ‫שלא‬ ‫חלקים‬ ‫יש‬ ‫לכן‬ ,i ‫להוכחה‬ ‫דומים‬ ‫מאוד‬ ‫פרטים‬ ‫בהוכחה‬ ‫יש‬
.‫הדבר‬ ‫אותו‬ ‫היא‬ Mi-‫ו‬
:ii ‫הוכחה‬
.T1 = n2
, T2 = n3
‫נגדיר‬
.‫בלבד‬ ‫צעדים‬ 14
Θ
(
n2
)
‫למשך‬Mi ‫המכונה‬ ‫של‬ ‫הריצה‬ ‫את‬ ‫מסמלצת‬ xi ‫שעל‬ M′
‫מלכסנת‬ ‫מט‬ ‫נגדיר‬
:‫האפשרויות‬ ‫שלושת‬ ‫אלו‬ ‫צעדים‬ Θ
(
n2
)
‫לאחר‬
M′
(xi) =



Reject Mi (xi) = Accept
Accept Mi (xi) = Reject
Reject Mi (xi) = ‫עצרה‬ ‫טרם‬
.(‫במקום‬ Accept ‫גם‬ ‫אפשר‬ ‫השלישי‬ ‫)במקרה‬
:‫בזמן‬ ,‫כלומר‬ ,‫צעדים‬ Θ
(
n2
)
‫של‬ ‫לסימולציה‬ ‫שנדרש‬ ‫בזמן‬ ‫קלט‬ ‫כל‬ ‫על‬ ‫עוצרת‬ M′
Θ
(
n2
ln
(
n2
))
= Θ
(
n2
ln (n)
)
≤ Θ
(
n3
)
.AcceptReject ‫שהוא‬ ‫פלט‬ ‫מניבה‬ ‫קלט‬ ‫כל‬ ‫ועל‬
:‫נגדיר‬
L′
=
{
x M′
(x) = Accept
}
x ∈ L′
⇐⇒ M′
(x) = Accept
L′
∈ D − Time
(
n3
)
:‫ולכן‬ Θ
(
n3
)
‫בזמן‬ L′
‫את‬ ‫מכריעה‬ M′
‫כי‬ ‫הוכחנו‬
:‫ולכן‬ Θ
(
n2
)
‫בזמן‬ L′
‫את‬ ‫מכריעה‬ ‫לא‬ ‫מכונה‬ ‫אף‬ ‫כי‬ ‫נוכיח‬ (12.1) ‫ההיררכיה‬ ‫משפט‬ ‫את‬ ‫להוכיח‬ ‫בשביל‬
.L′
/∈ D − Time
(
n2
)
.‫היותר‬ ‫לכל‬ ‫צעדים‬ Θ
(
n2
)
‫תוך‬ L′
‫את‬ ‫מכריעה‬ Mi ‫עבורו‬ i ‫שיש‬ ‫בשלילה‬ ‫נניח‬
:M′
(x) ‫ההרצה‬ ‫על‬ ‫נסתכל‬
.(‫הריצה‬ ‫את‬ ‫מסיימת‬ ‫לא‬ ‫)שהמכונה‬ ‫השלישית‬ ‫האפשרות‬ ‫מתקיימת‬ ‫לא‬ ‫צעדים‬ Θ
(
n2
)
‫היותר‬ ‫לכל‬ ‫רצה‬ M′
-‫ש‬ ‫מכיוון‬
:‫אפשרויות‬ ‫שתי‬ ‫ישנן‬ ‫לכן‬
Mi (xi) = Reject Mi (xi) = Accept
M′
(xi) = Accept M′
‫הגדרת‬ ‫לפי‬ M′
(xi) = Reject
xi /∈ L′
L′
‫הגדרת‬ ‫לפי‬ xi /∈ L′
!‫מצב‬ ‫בכל‬ xi ‫על‬ ‫טועה‬ Mi
.Θ
(
n2
)
-‫ב‬ L′
‫את‬ ‫מכריעה‬ Mi ‫שעבורו‬ i ‫קיים‬ ‫שלא‬ ‫ומכאן‬
Θ-‫ב‬ ‫טיפול‬ 39.2.1
Time (Mi (x)) ≤ C · n2
:‫כלומר‬ ,C · n2
 n2
‫שבו‬ ‫מצב‬ ‫להיות‬ ‫ויכול‬ ,Θ
(
n2
)
= C · n2
- (14) ‫כאן‬ ‫שהוער‬ ‫כמו‬
.‫יקרה‬ ‫לא‬ ‫שזה‬ ‫לדאוג‬ ‫וצריך‬
‫שני‬ ‫ומתקיימים‬ l  i :‫ש‬ ‫כך‬ l ‫קיים‬ Mi ‫עבור‬ ‫ולכן‬ ,‫פעמים‬ ‫אינסוף‬ ‫מופיעה‬ ‫מכונה‬ ‫כל‬ - 6 ‫באיור‬ ‫שנכתב‬ ‫כמו‬ ,‫לכן‬
:‫הבאים‬ ‫התנאים‬
.‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬13
C ∈ N+ ‫כאשר‬ C · n2 ‫במשך‬ ‫תרוץ‬ ‫שהיא‬ ‫היא‬ ‫כאן‬ ‫הכוונה‬14
40
BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ 40‫החישובים‬ ‫מורכבות‬
.Mi = Ml .‫א‬
.C · |xl|
2
≤ |xl|
2.1
.‫ב‬
:‫ולכן‬ ‫הצליח‬ ‫הלכסון‬ ‫אזי‬ '‫ג‬ ‫במצב‬ ‫לא‬ ‫ואנחנו‬ ‫היות‬
.L′
‫את‬ ‫מכריעה‬ ‫לא‬ Ml
BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ 40
.‫חלקים‬ ‫משני‬ ‫מורכב‬ ‫שהמשפט‬ ‫מכיוון‬ ‫חלקים‬ ‫לשני‬ ‫תחולק‬ BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬
.‫האלכסון‬ ‫בשיטת‬ ‫הוכחה‬ ‫היא‬ (40.2 ,BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫שני‬ ‫החלק‬ ‫)הוכחת‬ ‫השנייה‬ ‫ההוכחה‬
15
BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫הראשון‬ ‫החלק‬ ‫הוכחת‬ 40.1
.PA
= NPA
‫מתקיים‬ ‫עבורו‬ A ‫אורקל‬ ‫ישנו‬ ‫כי‬ ‫להראות‬ ‫נרצה‬
.A = TQBF ‫האורקל‬ ‫באמצעות‬ ‫זאת‬ ‫נראה‬
:iii ‫הוכחה‬
.PT QBF
= PSPACE = NPT QBF
‫כי‬ ‫נראה‬16
:‫תת-הוכחות‬ ‫שלוש‬ ‫באמצעות‬ ‫זאת‬ ‫נראה‬
.PSPACE ⊆ PT QBF
.‫א‬
.PT QBF
⊆ NPT QBF
.‫ב‬
.NPT QBF
⊆ PSPACE .‫ג‬
.‫א‬
,‫כלומר‬ ,‫שלמה‬ PSPACE ‫היא‬ TQBF ‫כי‬ ‫יודעים‬ ‫אנחנו‬
.TQBF ∈ PSPACE ‫וכמו-כן‬ L ≤p TQBF :L ∈ PSPACE ‫לכל‬
.L ∈ P T QBF
⇐ L ∈ P SP ACE : ‫צל‬
:‫הוכחה‬
.TQBF-‫ל‬ ‫אותה‬ ‫שמעביר‬ x ‫קלט‬ ‫על‬ ‫פולינומית‬ ‫רדוקציה‬ ‫קיימת‬ ‫אזי‬ L ∈ PSPACE ‫אם‬
,‫תשובתו‬ ‫את‬ ‫ונחזיר‬ PT QBF
‫של‬ ‫האורקל‬ ‫את‬ ‫ונשאל‬ x ‫על‬ ‫הרדוקציה‬ ‫את‬ ‫נפעיל‬
.L ∈ PT QBF
-‫ש‬ ‫ומכאן‬
.‫ב‬
.L ∈ NP T QBF
⇐ L ∈ P T QBF
: ‫צל‬
:‫הוכחה‬
.TQBF ‫של‬ ‫לאורקל‬ ‫פניה‬ ‫באמצעות‬ ‫השפה‬ ‫את‬ ‫ביעילות‬ ‫להכריע‬ ‫ניתן‬ ‫אזי‬ L ∈ PT QBF
‫אם‬
.L ∈ NPT QBF
‫ולכן‬ ‫לא-דטרמיניסטית‬ ‫בצורה‬ ‫ביעילות‬ ‫גם‬ ‫אותה‬ ‫להכריע‬ ‫ניתן‬ ‫שיהיה‬ ‫בוודאי‬ ‫ולכן‬
.‫ג‬
.L ∈ P SP ACE ⇐ L ∈ NP T QBF
: ‫צל‬
:‫הוכחה‬
.‫ולא-דטרמיניסטית‬ ‫יעילה‬ ‫בצורה‬ TQBF ‫של‬ ‫האורקל‬ ‫באמצעות‬ L ‫את‬ ‫להכריע‬ ‫ניתן‬ ‫אזי‬ L ∈ NPT QBF
‫אם‬
.‫תשובתו‬ ‫את‬ ‫ונחזיר‬ TQBF ‫של‬ ‫האורקל‬ ‫את‬ ‫ונשאל‬ ‫קלט-קלט‬ ‫שנעבור‬ ‫זה‬ ‫שנעשה‬ ‫מה‬ ,‫לכן‬
:‫אפשרויות‬ ‫שלוש‬ ‫ישנן‬
‫השני‬ ‫החלק‬ ‫בשביל‬ ‫כאן‬ ‫זה‬ ‫אבל‬ ,‫האלכסון‬ ‫בשיטת‬ ‫הוכחה‬ ‫לא‬ ‫זאת‬15
.‫נכונה‬ ‫בהכרח‬ ‫לא‬ ‫כאן‬ ‫ההוכחה‬16
41
BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ 40‫החישובים‬ ‫מורכבות‬
.x ∈ L-‫ש‬ ‫ומחזירים‬ ‫מסיימים‬ ‫אנחנו‬ - ‫כן‬ ‫מחזיר‬ ‫האורקל‬ .‫א‬
‫וממשיכים‬ ‫הזיכרון‬ ‫בסרט‬ ‫שיש‬ ‫מה‬ ‫את‬ ‫מוחקים‬ ‫אנחנו‬ - ‫נגמרו‬ ‫לא‬ ‫עוד‬ ‫הקלט‬ ‫ואפשרויות‬ ‫לא‬ ‫מחזיר‬ ‫האורקל‬ .‫ב‬
.(‫זיכרון‬ ‫)מחזור‬ ‫הבא‬ ‫לקלט‬
.x /∈ L-‫ש‬ ‫ומחזירים‬ ‫מסיימים‬ ‫אנחנו‬ - ‫קלט‬ ‫אפשרויות‬ ‫יותר‬ ‫ואין‬ ‫לא‬ ‫אומר‬ ‫האורקל‬ .‫ג‬
‫שהיא‬ ‫בשפה‬ ‫מדובר‬ ‫אזי‬ ,(‫פולינומית‬ ‫חסום‬ TQBF ‫של‬ ‫)הקלט‬ ‫פולינומית‬ ‫חוסם‬ ‫הוא‬ ‫הקלט‬ ‫ואורך‬ ‫זיכרון‬ ‫ומחזרנו‬ ‫היות‬
.PSPACE-‫ב‬
.L ∈ PSPACE ,‫כלומר‬
BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫שני‬ ‫החלק‬ ‫הוכחת‬ 40.2
:‫יתקיים‬ ‫עבורם‬ L ‫ושפה‬ O ‫אורקל‬ ‫ישנו‬ ‫כי‬ ‫להראות‬ ‫נרצה‬ ‫אנחנו‬ 29.2 ‫משפט‬ ‫את‬ ‫להוכיח‬ ‫בשביל‬
L ∈ NPO
PO
.L /∈ PO
,‫כלומר‬
:iv ‫הוכחה‬
:‫הבאה‬ ‫השפה‬ ‫על‬ ‫נסתכל‬
L = LO =
{
1n
n ‫באורך‬ ‫מחרוזת‬ O − ‫ב‬ ‫יש‬
}
:‫למשל‬
O = {01, 11, 1010, 1111, . . .}
11
, 13
, 19
/∈ L
12
, 16
, 114
∈ L
On =
{
x ∈ O |x| = n
}
.(O ‫אורקל‬ ‫)לכל‬ Lo ∈ NPO
.‫כמותו‬ ‫ותענה‬ x
?
∈ O ‫האורקל‬ ‫את‬ ‫תשאל‬ x ∈ {0, 1}
n
‫תנחש‬ M ‫מטלד‬ 1n
‫קלט‬ ‫בהינתן‬
.(‫)תקבל‬ MO
(1n
) = Accept ‫ואז‬ ‫כן‬ ‫יענה‬ O ‫עבורו‬ x ‫ניחוש‬ ‫יש‬ 1n
∈ LO
.(‫)תדחה‬ MO
(1n
) = Reject ‫ואז‬ ‫לא‬ ‫יענה‬ O x ‫ניחוש‬ ‫לכל‬ 1n
/∈ LO
?L /∈ P O
‫שיתקיים‬ ‫כך‬ O ‫את‬ ‫נגדיר‬ ‫איך‬
(‫הלכסון‬ ‫בשיטת‬ ‫נשתמש‬ ‫אנחנו‬ ‫אבל‬ ,‫הסתברותית‬ ‫שיטה‬ ‫)ישנה‬
.‫שאלות‬ 2n
− 1 ‫היותר‬ ‫לכל‬ ‫שואלת‬ ‫היא‬ 1n
‫קלט‬ ‫על‬ ‫אם‬ ,‫כלומר‬ ,‫סבירה‬ M ‫מכונה‬ ‫נגדיר‬
.yi /∈ On ‫סופית‬ ‫נכריע‬ y1, . . . , ym ‫שאילתה‬ ‫לכל‬
:‫אפשרויות‬ ‫שתי‬ ‫ישנן‬
y ∈ {0, 1}
n
‫עבור‬
MO
(1n
) = Reject MO
(1n
) = Accept
.‫ריקה‬ On-‫ש‬ ‫טוענת‬ Mn
‫נגדיר‬ y /∈ {y1, . . . , ym} ‫לכל‬
.On ̸= ∅ ‫ואז‬ y ∈ On
.‫ריקה‬ ‫לא‬ On-‫ש‬ ‫טוענת‬ Mn
‫נגדיר‬ y /∈ {y1, . . . , ym} ‫לכל‬
.On = ∅ ‫ואז‬ y /∈ On
1n
‫על‬ ‫טועה‬ Mn 1n
‫על‬ ‫טועה‬ Mn
:‫בעיות‬ ‫בשתי‬ ‫לטפל‬ ‫לנו‬ ‫נשאר‬ ‫ההוכחה‬ ‫את‬ ‫להשלים‬ ‫בשביל‬ ‫כעת‬
42
‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫ההוכחה‬ 41‫החישובים‬ ‫מורכבות‬
Θ-‫ב‬ ‫טיפול‬ 40.2.1
.(‫בעיקרון‬ ‫בעיה‬ ‫)אותה‬ (39.2) ‫ההיררכיה‬ ‫משפט‬ ‫בהוכחת‬ Θ-‫ב‬ ‫טיפול‬ ‫של‬ ‫למקרה‬ ‫דומה‬ Θ-‫ב‬ ‫הטיפול‬
.C · n′k
≤ 2n′
− 1-‫ו‬ Mn = Mn′ -‫ש‬ ‫שיתקיים‬ ‫כך‬ n′
 n ‫נחפש‬ ‫אנחנו‬ ‫שכאן‬ ‫רק‬
‫טופלו‬ ‫שכבר‬ ‫בקלטים‬ ‫טיפול‬ 40.2.2
‫תוכל‬ ‫פשוט‬ ‫היא‬ ‫ואז‬ ‫בהם‬ ‫לגעת‬ ‫שנרצה‬ ‫מסוימים‬ ‫בקלטים‬ ‫כבר‬ ‫טיפלה‬ Mn-‫ש‬ ‫להיות‬ ‫שיכול‬ ‫היא‬ ‫הגדולות‬ ‫הבעיות‬ ‫אחת‬
.2n
− 1 ‫של‬ ‫המחסום‬ ‫את‬ ‫לעקוף‬ ‫וככה‬ ‫עליהם‬ ‫לדלג‬
‫קודמות‬ ‫שמכונות‬ ‫להיות‬ ‫יכול‬ ‫אבל‬ ,n ‫באורך‬ ‫שאילתות‬ ‫רק‬ ‫נשאלות‬ Mn (1n
) ‫בריצת‬ 1n
‫קלט‬ ‫שעל‬ ‫הנחנו‬ ‫אנחנו‬ ,‫כלומר‬
(‫אלו‬ ‫קלטים‬ ‫על‬ ‫שאלו‬ ‫כבר‬ n-‫מ‬ ‫קטן‬ ‫שלהן‬ ‫שהאינדקס‬ ‫)כאלה‬
‫על‬ Mn ‫את‬ ‫נריץ‬ ‫ואז‬ ,n-‫מ‬ ‫קטן‬ ‫הסידורי‬ ‫שמספרן‬ ‫המכונות‬ ‫כל‬ ‫את‬ ‫נריץ‬ Θ-‫ב‬ ‫שטיפלנו‬ ‫שאחרי‬ ‫הוא‬ ‫שנעשה‬ ‫מה‬ ,‫לכן‬
.‫הקודמות‬ ‫המכונות‬ ‫של‬ ‫בשאילתות‬ ‫הופיע‬ ‫שלא‬ ‫ביותר‬ ‫הקטן‬ ‫המחרוזת‬ ‫אורך‬ = s ‫כאשר‬ 1s
‫קלט‬
.‫פולינומי‬ ‫בזמן‬ On ‫את‬ ‫להכריע‬ ‫יכולה‬ ‫לא‬ ‫והיא‬ L /∈ PO
‫כי‬ ‫יודעים‬ ‫אנחנו‬ ‫אלו‬ ‫בעיות‬ ‫בשתי‬ ‫שטיפלנו‬ ‫אחרי‬
:7 ‫הסבר‬
:‫הוא‬ ‫כאן‬ ‫ההוכחה‬ ‫של‬ ‫הרעיון‬
‫שהיא‬ ‫מה‬ .‫לא‬ ‫או‬ On-‫ב‬ y ‫האם‬ ‫לנחש‬ ‫לה‬ ‫ונותנים‬ ,(‫לנו‬ ‫)מותר‬ ‫שאילתות‬ 2n
− 1-‫ל‬ ‫המכונה‬ ‫את‬ ‫מגבילים‬ ‫אנחנו‬
.‫ההפך‬ ‫נענה‬ ‫תמיד‬ ‫אנחנו‬ - ‫תענה‬ ‫לא‬
?‫איך‬
- ‫שאילתות‬ 2n
− 1-‫ל‬ ‫המכונה‬ ‫את‬ ‫מגבילים‬ ‫שאנחנו‬ ‫וברגע‬ ,‫אפשרויות‬ 2n
‫ישנן‬ ‫אזי‬ {0, 1}
n
‫וקטור‬ ‫על‬ ‫מדובר‬ ‫אם‬
‫קודמות‬ ‫שמכונות‬ ‫קלטים‬ ‫יש‬ ‫אם‬ ‫)ומה‬ .‫אקספוננציאלי‬ ‫בזמן‬ ‫רק‬ ‫אלא‬ ‫כולם‬ ‫על‬ ‫לשאול‬ ‫תוכל‬ ‫לא‬ ‫שהיא‬ ‫בוודאי‬ ‫אזי‬
.40.2.2 :‫כאן‬ ‫נידון‬ ‫זה‬ ?‫צעדים‬ 2n
‫לעשות‬ ‫וכן‬ ‫הללו‬ ‫מהשאלות‬ ‫להתעלם‬ ‫תוכל‬ ‫היא‬ ‫ואז‬ ‫בעבר‬ ‫עליהם‬ ‫שאלו‬
‫וההפך‬ ‫שלא‬ ‫נגיד‬ ‫אז‬ On-‫ב‬ ‫שהם‬ ‫תחליט‬ ‫היא‬ ‫ואם‬ - ‫אליהם‬ ‫תגיע‬ ‫לא‬ ‫שהמכונה‬ ‫קלטים‬ ‫יהיו‬ ‫תמיד‬ - ‫בקיצור‬ ‫לכן‬
. ‫לרצוננו‬ ‫בהתאם‬ ‫להחליט‬ ‫שנוכל‬ ‫אחת‬ ‫מחרוזת‬ ‫לפחות‬ ‫יש‬ ‫)תמיד‬
.‫פולינומי‬ ‫בזמן‬ L ‫את‬ ‫מכריעה‬ ‫שלא‬ ‫מכונה‬ ‫ליצור‬ ‫הצלחנו‬ ‫הלכסון‬ ‫באמצעות‬ ‫וכך‬
‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫ההוכחה‬ 41
‫ואת‬ ‫אלגוריתם‬ ‫באמצעות‬ ‫הראשון‬ .‫הסעיפים‬ ‫שני‬ ‫את‬ ‫נוכיח‬ ,(27.2) ‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫להוכיח‬ ‫בשביל‬
.‫רדוקציה‬ ‫באמצעות‬ ‫השני‬
TQBF ∈ D − SPACE ‫וגם‬ TQBF ∈ PSPACE 41.1
:v ‫הוכחה‬
TQBF ‫להכרעת‬ ‫אלגוריתם‬ 1 ‫אלגוריתם‬
:ψ = ∃x1 (· · · ) ‫מהצורה‬ ‫הקלט‬ ‫אם‬ .‫א‬
.‫התשובה‬ ‫את‬ ‫ונחזיר‬ ψx1←T ∈ TQBF ∨ ψx1←F ∈ TQBF ‫האם‬ ‫רקורסיבית‬ ‫נבדוק‬ (1)
:ψ = ∀x1 (· · · ) ‫מהצורה‬ ‫הקלט‬ ‫אם‬ .‫ב‬
.‫התשובה‬ ‫את‬ ‫ונחזיר‬ ψx1←T ∈ TQBF ∧ ψx1←F ∈ TQBF ‫האם‬ ‫רקורסיבית‬ ‫נבדוק‬ (1)
43
‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫ההוכחה‬ 41‫החישובים‬ ‫מורכבות‬
.‫הכמתים‬ ‫מספר‬ - m
S (m, l) = 2S (m − 1, l)
2m ‫פתרון‬
.2-‫ה‬ ‫את‬ ‫ונוריד‬ ‫זיכרון‬ ‫במחזור‬ ‫נשתמש‬ ‫לכן‬ ,2m
‫פתרון‬ ‫עם‬ ‫נסיגה‬ ‫נוסחת‬ ‫זוהי‬
S (m, l) = Θ (m) + O (l)
.‫לינארי‬ ‫בזיכרון‬ ‫פתרון‬
‫-שלמה‬PSPACE ‫היא‬ TQBF 41.2
‫נצטרך‬ ‫כך‬ ‫ובשביל‬ ‫פולינומית‬ ‫רדוקציה‬ ‫נצטרך‬ ‫-שלמה‬PSPACE ‫שהיא‬ ‫כי‬ ‫להוכיח‬ ‫בשביל‬ ‫כעת‬
:‫חדש‬ ‫מושג‬
‫קונפיגורציות‬ ‫גרף‬ 41.2.1
GFED@ABCCi
eeeeee
GFED@ABCCI

GFED@ABCCj // GFED@ABCCA
‫לדוגמה‬ ‫קונפיגורציות‬ ‫גרף‬ :7 ‫איור‬
:‫וכאשר‬ ‫קודקוד‬ ‫היא‬ ‫קונפיגורציה‬ ‫כל‬ ‫כאשר‬ ,‫במכונה‬ ‫האפשריות‬ ‫הקונפיגורציות‬ ‫כל‬ ‫את‬ ‫מכיל‬ ‫אשר‬ G ‫גרף‬ ‫זהו‬
.‫יחידה‬ ‫התחלתית‬ ‫קונפיגורציה‬ - CI
.(‫לאחת‬ ‫כולן‬ ‫את‬ ‫נרכז‬ ‫אבל‬ ,‫יותר‬ ‫שיש‬ ‫להיות‬ ‫)יכול‬ ‫יחידה‬ ‫מקבלת‬ ‫קונפיגורציה‬ - CA
.‫יחיד‬ ‫בצעד‬ Cj-‫ל‬ Ci-‫מ‬ ‫לעבור‬ ‫יכול‬ ‫החישוב‬ ‫אםם‬ Ci → Cj ‫מכוונת‬ ‫צלע‬
.(‫הלד‬ ‫במובן‬ ‫או‬ ‫הדטרמיניסטי‬ ‫)במובן‬ M (x) = Accept ⇐⇒ CI CA ‫מסלול‬ G ‫בגרף‬ ‫קיים‬
:‫ישנן‬ ‫קונפיגורציות‬ ‫כמה‬
n · S · |Σ|
S
· |Q| = n · 2Θ(S)
=
⊙
2Θ(S)
. n = Ω (log n)-‫ש‬ ‫בהנחה‬ - ⊙
.(⊙-‫ש‬ ‫בטוח‬ ‫לא‬ ‫)כי‬ T := |V | = n · 2Θ(S)
:‫היותר‬ ‫לכל‬ ‫מסלול‬ ‫אורך‬
.1 ‫היא‬ ‫היציאה‬ ‫דרגת‬ ‫קודקוד‬ ‫לכל‬ - ‫דטרמיניסטי‬ ‫בחישוב‬
.1-‫מ‬ ‫גדולה‬ ‫יציאה‬ ‫דרגת‬ ‫עם‬ ‫קודקודים‬ ‫ייתכנו‬ - ‫לד‬ ‫בחישוב‬
L ≤p TQBF 41.2.2
(L ∈ PSPACE ‫)כאשר‬
.f (x) = ψ ∈ TQBF :‫הרדוקציה‬ ‫פלט‬ ,x ∈ L :‫הרדוקציה‬ ‫קלט‬
.|p| ≤ T ‫כאשר‬ x ∈ L ⇐⇒ ∃p CI CA ⇐⇒ ‫אמיתי‬ ‫פסוק‬ ψ
.x /∈ L ⇐⇒ ‫כנל‬ ‫מסלול‬ ‫אין‬ ⇐⇒ ‫שקרי‬ ‫פסוק‬ ψ
44
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
:‫חדשה‬ ‫שפה‬ ‫נגדיר‬
PATH (Ci, Cj, t) =



‫שיש‬ ‫שפירושו‬ ‫פסוק‬
‫מסלול‬ ‫בגרף‬
t ≥ ‫שאורכו‬ Ci Cj



ψ = PATH (CI, CA, T)
:‫ולכן‬ ,‫קונפיגורציה‬ D-‫ב‬ ‫נסמן‬
|D| = log |Q|
‫פנימי‬ ‫מצב‬
· log |S| · log (n)
‫קוראים‬ ‫ראשים‬
·Θ (S)
:(‫וישנו‬ ‫במידה‬ CI CA ‫של‬ ‫לאמצע‬ ,‫)כלומר‬ ‫לאמצע‬ ‫חיפש‬ ‫נעשה‬
PATH (Ci, Cj, t) = ∃D∀E1E2 [(E1 = Ci ∧ E2 = D) ∨ (E1 = D ∧ E2 = Cj)]
−→ PATH
(
E1, E2,
t
2
)
:8 ‫הסבר‬
.‫ממנה‬ ‫לחצי‬ ‫נגיע‬ ‫פעם‬ ‫כל‬ ‫אנחנו‬ ‫אזי‬ CI CA ‫מסילה‬ ‫ישנה‬ ‫שאם‬ ‫הוא‬ ,PATH ‫של‬ ,‫כאן‬ ‫הרקורסיה‬ ‫של‬ ‫הרעיון‬
‫יהיו‬ ‫לא‬ ‫שניהם‬ ‫פעם‬ ‫אף‬ ‫אבל‬ T-‫ה‬ ‫את‬ ‫שמקבל‬ ‫הוא‬ ‫אחר‬ ‫חצי‬ ‫פעם‬ ‫וכל‬ P ∨ Q → R :‫כך‬ ‫בנויה‬ ‫הנוסחה‬ ,‫כלומר‬
.T
‫ביטוי‬ ‫נקבל‬ ‫הרקורסיה‬ ‫כל‬ ‫עם‬ ‫שנסיים‬ ‫אחרי‬ ,‫שלבסוף‬ ‫עד‬ - (‫בחצי‬ ‫נתקדם‬ ‫)וגם‬ ‫בחצי‬ ‫נרד‬ ‫פעם‬ ‫כל‬ ‫אנחנו‬ ‫וככה‬
.CI CA ‫מסילה‬ ‫ויש‬ ‫במידה‬ ‫אמיתי‬ ‫שיהיה‬ TQBF ‫של‬ ‫מהצורה‬
.‫הרדוקציה‬ ‫רעיון‬ ‫זה‬
|PATH (· · · , t)| = ¡2 · PATH
(
· · · ,
t
2
)
+ 11 · |D|
Θ(S)
+14
= (log T) · Θ (S) = Θ
(
S2
)
,‫נוסחה‬ ‫בכל‬ ‫לנו‬ ‫שיש‬ ‫הכמתים‬ ‫כל‬ ‫בגלל‬ ‫זה‬ - 14-‫ה‬
.T = 2Θ(S)
-‫ו‬
:(Cook-Levin)‫קוק-לווין‬ ‫עפ‬
:(1 ‫של‬ ‫אורך‬ ‫)ויש‬ ‫לסוף‬ ‫מגיעים‬ ‫כאשר‬
PATH ( , , 1)
Θ(S2)
‫ההסבר‬ ‫כולל‬ ‫נמצאת‬ ‫)והיא‬ 2m
‫הוא‬ ‫שלה‬ ‫שהפתרון‬ S (m, l) = S (m − 1, l) ‫שהיא‬ ‫המקורית‬ ‫הנוסחה‬ ‫במקום‬ ‫וזה‬
.(v ‫בהוכחה‬
‫זמן‬ ‫ואילו‬ Θ
(
S2
)
:‫הוא‬ ‫הפסוק‬ ‫אורך‬ ‫כאשר‬ TQBF ‫בצורת‬ ‫פסוק‬ ‫מקבלים‬ ‫בהתחלה‬ ‫הכמתים‬ ‫כל‬ ‫את‬ ‫מרכזים‬ ‫אם‬
.(28.1 ‫משפט‬ ‫את‬ ‫לנו‬ ‫מוכיחה‬ ‫הזאת‬ ‫)והמסקנה‬ .Θ
(
S2
)
:‫הוא‬ ‫הפסוק‬ ‫חישוב‬
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42
.‫קוראים‬ ‫שאנחנו‬ ‫הביטים‬ ‫מספר‬ ‫הוא‬ q-‫ו‬ ‫המטבע‬ ‫הטלות‬ ‫מספר‬ ‫זה‬ r ‫כאשר‬ L ∈ PCP (r, q) :‫כזכור‬
45
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
‫להוכחה‬ ‫כלים‬ 42.1
.‫כלים‬ ‫מספר‬ ‫נצטרך‬ ‫המשפט‬ ‫הוכחת‬ ‫בשביל‬
‫ווקטורים‬ ‫על‬ ‫פעולות‬ 42.1.1
:‫כלומר‬ ,Z2-‫ב‬ ‫יהיו‬ ‫בהוכחה‬ ‫כאן‬ ‫אליהם‬ ‫שנתייחס‬ ‫הווקטורים‬ ‫כל‬
.⃗x, ⃗y, ⃗u,⃗v, . . . ∈ {0, 1}
n
.‫א‬
.Z2-‫ב‬ ‫יהיו‬ ‫שנעשה‬ ‫הפעולות‬ ‫כל‬ .‫ב‬
‫חיבור‬
⃗z = ⃗x + ⃗y ⇒ ∀i (xi + yy = zi)
‫פנימית‬ ‫מכפלה‬
⟨⃗x, ⃗y⟩ =
n∑
i=1
xi · yi
.(|⃗x| = |⃗y|-‫ש‬ ‫בתנאי‬ ‫כמובן‬ ‫)וזה‬
‫מטריצות‬ ‫על‬ ‫פעולות‬ 42.1.2
:‫הבא‬ ‫באופן‬ 17
‫מטריצה‬ ‫נגדיר‬
.j ‫בעמודה‬ i ‫בשורה‬ ‫הנמצא‬ ‫האיבר‬ ‫את‬ ‫מסמל‬ Ai,j ‫האיבר‬ ,n × n ‫מסדר‬ ‫מטרצה‬ A ‫תהא‬
A =
(
A1,1 A1,2
A2,1 A2,2
)
.n × n ‫מסדר‬ ‫מטריצות‬ ‫שתי‬ A, B ‫יהיו‬ ‫מטריצות‬ ‫חיבור‬
:i, j ‫לכל‬ ‫אזי‬
Ai + Bi = Ci
.(C = A + B :‫כלומר‬ ,‫החיבור‬ ‫מטריצת‬ ‫היא‬ C ‫)כאשר‬
:A, B ‫מטריצות‬ ‫בהינתן‬ ‫מטריצות‬ ‫של‬ ‫פנימית‬ ‫מכפלה‬
⟨A, B⟩ =
n∑
i=1


n∑
j=1
Ai,j · Bi,j


:‫הבא‬ ‫באופן‬ A = ⃗x ⊗ ⃗y ‫מטריצה‬ ‫נגדיר‬ ,⃗x, ⃗y ‫וקטורים‬ ‫שני‬ ‫בהינתן‬ ‫טנזורית‬ ‫מכפלה‬
Ai,j = xi · yj
.n ‫עד‬ 1-‫מ‬ ‫אחד‬ ‫כל‬ ‫רצים‬ (i, j) ‫והאינדקסים‬ n × n ‫מסדר‬ ‫היא‬ A ‫המטריצה‬
.‫כמובן‬ ‫בולאנית‬ ‫מטריצה‬ ‫על‬ ‫כאן‬ ‫מדובר‬17
46
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
‫וולש-הדמרד‬ ‫קוד‬ 42.1.3
:‫הבא‬ ‫באופן‬ f⃗u ∈ Hn ‫הפונקציה‬ ‫את‬ ‫נגדיר‬ ⃗u ‫וקטור‬ ‫בהינתן‬
f⃗u (⃗x) = ⟨⃗u, ⃗x⟩
:‫כאשר‬ WH : {0, 1}
n
→ {0, 1}
2n
:‫פונקציה‬ ‫הינו‬ ‫וולש-הדמרד‬ ‫קוד‬
:‫למשל‬ n = 2 ‫עבור‬
WH (⃗u) = (⟨⃗u, (0, 0)⟩ , ⟨⃗u, (0, 1)⟩ , ⟨⃗u, (1, 0)⟩ , ⟨⃗u, (1, 1)⟩)
:‫נקבל‬ ,⃗u = {0, 1} ‫ועבור‬
WH (⃗u) = (0, 1, 0, 1)
NP ⊇ PCP (Θ (log n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.2
:vi ‫הוכחה‬
.L ∈ PCP (Θ (log n) , d) ‫שעבורו‬ ‫מוודא‬ - VP CP ‫שיש‬ ‫נתון‬
.L ∈ NP ‫שעבורו‬ ‫מוודא‬ - VNP :‫צל‬
:‫כך‬ ‫פועל‬ VNP ‫המוודא‬ P ‫וטיעון‬ x ‫קלט‬ ‫על‬
‫עם‬ VP CP ‫של‬ ‫ריצה‬ ‫יסמלץ‬ VNP ‫הטלות‬ ‫של‬ ‫תוצאה‬ ‫לכל‬ .VP CP ‫של‬ ‫מטבע‬ ‫הטלת‬ ‫של‬ ‫אפשריות‬ ‫תוצאות‬ 2r
‫סורק‬
.‫מטבע‬ ‫הטלות‬
.‫התוצאות‬ ‫רוב‬ ‫לפי‬ ‫עונה‬ VNP ‫הסריקה‬ ‫בסיום‬
:‫הריצה‬ ‫זמן‬
2r
≤2C log n−nc
· Time (VP CP (· · · ))
poly(n)
poly(n)
≥ VNP
.(‫האפשרויות‬ ‫כל‬ ‫על‬ ‫עברנו‬ ‫)כי‬ 0 :‫מטבע‬ ‫הטלות‬
?‫מההוכחה‬ ‫קראנו‬ ‫ביטים‬ ‫כמה‬
:‫הוא‬ ‫הביטים‬ ‫מספר‬ ,‫לכן‬ .‫קורא‬ VP CP -‫ש‬ ‫הביטים‬ ‫מספר‬ ‫הוא‬ d
.|P | ≤ poly (n) ‫בהכ‬ ‫ולכן‬ ,poly (n) ≥ 2r
· d
:‫שלמות‬
:(31.1) ‫ב-שלמות‬ ‫שמובטח‬ P ‫לאותו‬ ‫אזי‬ x ∈ L ‫אם‬
Pr (VP CP (x, P) = Accept) ≥
2
3

1
2
.∃P VNP (x, P) = Accept :‫כלומר‬ .Accept ‫יענה‬ VNP P ‫לאותו‬ ‫ולכן‬
:‫נאותות‬
:‫ולכן‬ Pr (· · · )  1
3  1
2 :‫מתקיים‬ P ‫לכל‬ ‫אזי‬ x /∈ L ‫אם‬
∀P VNP (x, P) = Reject
NP ⊆ PCP (poly (n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.3
.(poly ‫על‬ ‫נוכיח‬ log ‫)במקום‬ ‫המקורי‬ ‫המשפט‬ ‫של‬ ‫מוחלשת‬ ‫גרסה‬ ‫זאת‬ ‫כאן‬ ‫מוכיחים‬ ‫שאנחנו‬ ‫מה‬
.‫-שלמה‬NP ‫שהיא‬ ‫לשפה‬ ‫ברדוקציה‬ ‫שנתחיל‬ ‫בכך‬ ‫לכך‬ ‫ההוכחה‬ ‫את‬ ‫נראה‬
:‫בהוכחה‬ ‫לנו‬ ‫שיעזרו‬ ‫כלים‬ ‫כמה‬ ‫נכיר‬ ‫כל‬ ‫קודם‬
47
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
QE ‫שנייה‬ ‫ממעלה‬ ‫משאוות‬ 42.3.1
.Z2 ‫מעל‬ ‫משתנים‬ n-‫ו‬ ‫משוואת‬ m ‫של‬ S ‫מערכת‬ ‫זוהי‬
:42.1 ‫דוגמא‬
:‫משתנים‬ 5 ‫עבור‬ ‫משוואת‬ 3 ‫של‬ ‫למערכת‬ ‫דוגמה‬ ‫הנה‬ ,‫למשל‬
x1x2 + x1x3 = 1
x2x4 + x2
1 + x3 = 0
x1 + x3 = 1
‫כך‬ x1, . . . , x5 ‫למשתנים‬ ‫השמה‬ ‫קיימת‬ ‫האם‬ ,‫כלומר‬ ,‫ספיקה‬ (‫)שלמעלה‬ S ‫המערכת‬ ‫היא‬ ‫המעניינת‬ ‫השאלה‬
:‫למשל‬ ,‫שווים‬ ‫יהיה‬ ‫הצדדים‬ ‫שני‬ ,‫כלומר‬ ,‫תספק‬ ‫שההשמה‬
.‫א‬
x3 = x5 = 0-‫ו‬ x1 = x2 = x4 = 1
.‫מספקת‬ ‫הייתה‬ ‫עדיין‬ ‫וההשמה‬ 0 ‫ערך‬ ‫גם‬ ‫לתת‬ ‫ניתן‬ ‫היה‬ ‫אזי‬ ,‫במשוואה‬ ‫מופיע‬ ‫אינו‬ x5-‫ש‬ ‫בגלל‬‫א‬
.S ‫של‬ ‫הימני‬ ‫לצד‬ ‫השמאלי‬ ‫בצד‬ ‫בין‬ ‫שיווין‬ ‫נקבל‬ ‫אלו‬ ‫ערכים‬ ‫את‬ ‫נציב‬ ‫אם‬
:42.1 ‫משפט‬
⃗c ∈ {0, 1}
m
‫ניקח‬ ‫אם‬ ‫אזי‬ ,(‫השמה‬ ‫משתנה‬ ‫)לכל‬ n ‫בגודל‬ ⃗u ∈ {0, 1}
n
‫השמות‬ ‫של‬ ‫ווקטור‬ S ‫מערכת‬ ‫לנו‬ ‫ונתונה‬ ‫נניח‬ 18
:‫אזי‬ ,S′
⊆ S ‫תת-מערכת‬ ‫זה‬ ‫לנו‬ ‫שיש‬ ‫מה‬ ‫כעת‬ .mi ‫בקואורדינטה‬ i ‫משוואה‬ ‫כל‬ ‫ונכפול‬ (m ‫בגודל‬ ⃗c ‫)וקטור‬
.S′
‫את‬ ‫גם‬ ‫מספקת‬ ‫היא‬ ‫אזי‬ S ‫את‬ ‫מספקת‬ ⃗u ‫אם‬ .‫א‬
.Pr [S′
‫את‬ ‫מספקת‬ ⃗u] = 1
2 :‫אזי‬ S ‫את‬ ‫מספקת‬ ‫אינה‬ ⃗u ‫אם‬ .‫ב‬
3 − SAT ≤p QE 42.3.2
:3 − SAT ≤p QE ‫פולינומית‬ ‫רדוקציה‬ ‫כעת‬ ‫נראה‬
.3 − CNF ‫בצורת‬ ‫משתנים‬ n-‫ו‬ ‫פסוקיות‬ m ‫לנו‬ ‫נותנים‬
.‫איברים‬ ‫שלושה‬ ‫עם‬ ‫למשוואה‬ ‫פסוקית‬ ‫כל‬ ‫נמיר‬
‫השמאלי‬ ‫בצד‬ 1 ‫הערך‬ ‫את‬ ‫משווה‬ ‫בכל‬ ‫נשים‬ ‫בהמרה‬ ‫אזי‬ ‫אמת‬ ‫ערך‬ ‫בעלות‬ ‫להיות‬ ‫צריכות‬ ‫הפסוקיות‬ ‫וכל‬ ‫היות‬ ,‫כעת‬
:‫כלומר‬ ,‫דה-מורגן‬ ‫באמצעות‬ ‫הכמתים‬ ‫את‬ ‫ונמיר‬
(x1 ∨ x2 ∨ x3) ≡ ¬ (x1 ∧ x2 ∧ x3) ≡ 1 − x1 · (1 − x2) · x3 = 1
:‫הבא‬ ‫הדבר‬ ‫את‬ ‫נעשה‬ ‫זאת‬ ‫לפתור‬ ‫כדי‬ ,‫אסור‬ ‫וזה‬ ‫שלישית‬ ‫ממעלה‬ ‫איבר‬ ‫לנו‬ ‫יש‬ ‫כי‬ ‫לב‬ ‫נשים‬ ,‫כעת‬
.y2,3 = x2 · x3 ‫משוואה‬ ‫ונוסיף‬ x1 · y2,3 :‫נכתוב‬ x1 · x2 · x3 ‫במקום‬
.3 − SAT-‫ל‬ NP-‫ב‬ ‫בעיה‬ ‫כל‬ ‫להמיר‬ ‫ניתן‬ ‫כי‬ ‫יודעים‬ ‫אנו‬ ,‫זאת‬ ‫שהגדרנו‬ ‫אחרי‬ ‫כעת‬
19
?‫זאת‬ ‫נעשה‬ ‫כיצד‬ ‫אז‬ ,‫ביטים‬ Θ (1) ‫לדגום‬ ‫הוא‬ ‫אותנו‬ ‫שמעניין‬ ‫מה‬ ‫אבל‬
‫נחבר‬ ‫ואז‬ ci ‫בקואורדינטה‬ i ‫משוואה‬ ‫כל‬ ‫ונכפול‬ (‫המשוואות‬ ‫מספר‬ ‫)כגודל‬ ⃗c ∈ {0, 1}
m
‫וקטור‬ ‫שניקח‬ ‫הוא‬ ‫שנעשה‬ ‫מה‬
.20
⃗c ‫של‬ '‫בקור‬ ‫אותן‬ ‫שהכפלנו‬ ‫אחרי‬ ‫המשוואות‬ ‫כל‬ ‫את‬
.‫הוכחה‬ ‫ללא‬ ‫נשאיר‬ ‫הנל‬ ‫המשפט‬ ‫את‬18
.Θ (1) ‫לא‬ ‫זה‬ ‫אזי‬ ‫המשוואות/משתנים‬ ‫במספר‬ ‫תלויים‬ ‫אנחנו‬ ‫אם‬ ‫כי‬19
‫לנו‬ ‫בוחר‬ ⃗c - ‫אחרות‬ ‫במילים‬ .‫שהיא‬ ‫כמו‬ ‫נשארת‬ ‫היא‬ ‫אזי‬ 1-‫ב‬ ‫אותה‬ ‫כפלנו‬ ‫ואם‬ ‫אותה‬ ‫השמטנו‬ ‫אזי‬ 0-‫ב‬ ‫משוואה‬ ‫כפלנו‬ ‫שאם‬ ‫לם‬ ‫לשים‬ ‫כדאי‬20
.‫לסכום‬ ‫משוואת‬ ‫אילו‬
48
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
:42.2 ‫דוגמא‬
.⃗c = {0, 1, 1} ‫הווקטור‬ ‫את‬ ‫ניקח‬ 42.1 ‫דוגמה‬ ‫עבור‬ ,‫למשל‬
:‫והשלישית‬ ‫השנייה‬ ‫המשוואה‬ ‫את‬ ‫רק‬ ‫נסכום‬ ‫אנחנו‬ ,‫כלומר‬
x2x4 + x2
1 + x3 = 0
x1 + x3 = 1
:‫הוא‬ ‫שנקבל‬ ‫מה‬
x2
1 + x2x4 + x1 = 1
.(‫מצטמצם‬ ‫הוא‬ ‫ולכן‬ x3 + x3 = 0 ‫)כי‬
‫ההוכחה‬ ‫של‬ ‫המרכזי‬ ‫הרעיון‬ - (‫המאמת‬ ‫)של‬ V ‫של‬ ‫תפקידו‬ 42.3.3
‫מהן‬ ‫אחת‬ ‫כל‬ ‫נסכום‬ ,21
‫לא‬ ‫ואיזה‬ ‫להכניס‬ ‫משוואות‬ ‫אילו‬ ‫של‬ ‫האפשרויות‬ ‫כל‬ ‫את‬ ‫שיכלול‬ 2m
‫באורך‬ ⃗e1 ‫וקטור‬ ‫יוצר‬ V
.‫התוצאה‬ ‫את‬ ‫ונרשום‬ ‫ההשמה‬ ‫את‬ ‫נשים‬ ,(‫שמאל‬ ‫אגף‬ ‫)את‬
:42.1 ‫בדוגמה‬ ,‫למשל‬
⃗e1 = (0, 1, . . . , 0)
.1 ‫יהיה‬ ‫וערכה‬ 22
‫הרביעית‬ ‫בקואורדינטה‬ ‫יהיה‬ 42.2 ‫בדוגמה‬ ‫שראינו‬ ‫מה‬ ‫כאשר‬
:‫במקביל‬
⃗e1 ‫הווקטור‬ ‫בנוי‬ ‫שבה‬ ‫השיטה‬ ‫באותה‬ ‫שבנוי‬ 2m
‫באורך‬ ⃗e2 ‫וקטור‬ ‫יוצר‬ ‫הוא‬ :‫ימין‬ ‫אגפי‬ ‫את‬ ‫השיטה‬ ‫באותה‬ ‫סוכם‬ V
.(‫ימין‬ ‫אגפי‬ ‫סכום‬ ‫את‬ ‫יש‬ ,‫ההשמה‬ ‫לאחר‬ ‫שמאל‬ ‫אגף‬ ‫סכום‬ ‫שבמקום‬ ‫)רק‬
:(42.1 ‫)דוגמה‬ ‫שלנו‬ ‫הדוגמה‬ ‫עפ‬ ‫למשל‬
⃗e2 = (0, 1, 0, ..., 0)
:42.2 ‫דוגמה‬ ‫ועפ‬
.⃗e2 [4] = 1 :1 ‫יהיה‬ ‫הרביעית‬ ‫בקואורדינטה‬
:V ‫של‬ ‫המרכזי‬ ‫תפקידו‬ ‫מגיע‬ ‫כעת‬
2m
-‫ל‬ 1 ‫בין‬ p ‫מספר‬ ‫מגריל‬ V
.⃗e1 [p] = ⃗e2 [p] :‫האם‬ ‫ובודק‬
.‫מקבל‬ ‫הוא‬ - ‫כן‬ ‫אם‬
.‫דוחה‬ ‫הוא‬ - ‫לא‬ ‫אם‬
.(‫בינארי‬ ‫באופן‬ ‫אותו‬ ‫מציג‬ ⃗c) ‫מגריל‬ V -‫ש‬ p ‫מספר‬ ‫אותו‬ ‫זה‬ ‫בהתחלה‬ ‫עליו‬ ‫שדובר‬ ⃗c ‫הווקטור‬ ‫כאשר‬
:9 ‫הסבר‬
:‫כזה‬ ‫הוא‬ ‫הכללי‬ ‫הרעיון‬
.(‫המשוואות‬ ‫)מספר‬ m ‫באורך‬ ⃗c ∈ {0, 1}
m
‫וקטור‬ ‫מגריל‬ V ‫ואז‬ ,‫למעלה‬ ‫שמסובר‬ ‫כפי‬ ⃗e1,⃗e2 ‫וקטורים‬ ‫שני‬ ‫יוצר‬ P
‫לנו‬ ‫יש‬ ‫נניח‬ ‫אם‬ ,‫כלומר‬ ,‫הבינארי‬ ‫המספר‬ ‫לאותו‬ ‫שתאומות‬ ‫המשוואות‬ ‫של‬ ‫שקלול‬ ‫יש‬ ⃗e ‫בווקטורי‬ i ‫מיקום‬ ‫בכל‬
‫במקום‬ ‫נסתכל‬ ‫אזי‬ ⃗c = (0, 1, 0, 1, 1, 0) :‫לנו‬ ‫ויצא‬ ‫הגרלנו‬ ‫נניח‬ ‫ואם‬ m ‫באורך‬ ‫יהיו‬ ⃗c,⃗e1, ⃗e2 ‫אזי‬ ,‫משוואות‬ 6
‫בקואורדינטה‬ ‫ולכן‬ 101 ‫זה‬ ‫בינארי‬ ‫בייצוג‬ 5 ,‫למשל‬ .‫לא‬ ‫ואילו‬ ‫להכניס‬ ‫משוואות‬ ‫אילו‬ ‫לנו‬ ‫שאומר‬ ‫מיקום‬ ‫בעצם‬ ‫היא‬ ‫בווקטור‬ ‫קואורדינטה‬ ‫שכל‬21
.‫והאחרונה‬ ‫הראשונה‬ ‫המשוואה‬ ‫את‬ ‫רק‬ ‫נסכום‬ ‫בווקטור‬ ‫החמישית‬
.(‫בינארי‬ ‫בבסיס‬ ‫מוצג‬ 011) 0112 = 410 ‫כי‬22
49
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
.⃗e1,⃗e2 ‫הווקטורים‬ ‫בשני‬ 22-‫ה‬
.‫נדחה‬ ,‫אחרת‬ .‫נקבל‬ ‫זהה‬ ‫יהיה‬ ‫המספר‬ ‫יהיה‬ ‫אם‬
:(31.1) ‫שלמות‬
:S ‫את‬ ‫מספקת‬ ⃗u ‫ההשמה‬ ‫אם‬ 42.1 ‫משפט‬ ‫עפ‬
.Accept ‫של‬ ‫תוצאה‬ ‫לנו‬ ‫ייתן‬ ‫שנגריל‬ ⃗c ‫כל‬
.‫כנדרש‬ ∃P Pr [V (φ, P) = Accept] = 1 :‫כלומר‬
:(31.2) ‫נאותות‬
:42.1 ‫משפט‬ ‫עפ‬ ‫אזי‬ S ‫את‬ ‫מספקת‬ ‫לא‬ ⃗u ‫אם‬
.‫כנדרש‬ ∀P Pr [V (φ, P) = Reject] = 1
2  1
3
:(32.1) V ‫יעילות‬
.(⃗c ‫)הגרלת‬ ‫לא‬ ‫או‬ ‫יכנסו‬ ‫משוואות‬ ‫אילו‬ - r = m
.‫בסוף‬ ‫ההשוואה‬ - q = 1
.‫כנדרש‬ .Θ (m) :V ‫של‬ ‫הריצה‬ ‫זמן‬
‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ 42.3.4
:‫הבא‬ ‫בחלק‬ ‫בו‬ ‫נשתמש‬ ‫אשר‬ 23
‫מטריצות‬ ‫עבור‬ ‫דומה‬ ‫עיקרון‬ ‫ישנו‬ ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫לעיקרון‬ ‫בדומה‬
.(‫אפסים‬ ‫שכולה‬ ‫מטריצה‬ ,‫האפס‬ ‫)מטריצת‬ A = 0 ‫האם‬ ‫לבדוק‬ ‫נרצה‬ A ∈ {0, 1}
n×n
‫מטריצה‬ ‫בהינתן‬
:‫האם‬ ‫ונבדוק‬ ,⃗x, ⃗y ∈ {0, 1}
n
:‫ובת‬ ‫אחיד‬ ‫באופן‬ ‫נגריל‬ ‫כך‬ ‫לשם‬
⃗xT
A⃗y = 0
:‫שלמות‬
.⃗xT
A⃗y = 0 ‫בברור‬ ‫אז‬ A = 0 ‫אם‬
:‫נאותות‬
.‫אפסים‬ ‫שורת‬ ‫אינה‬ (A ‫במטריצה‬ i ‫)שורה‬ Ai ‫שעבורו‬ (1 ≤ i ≤ n) i ‫אינדקס‬ ‫איזשהו‬ ‫יש‬ ‫אזי‬ A ̸= 0 ‫אם‬
:24
‫לווקטורים‬ ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ ‫לפי‬
Pr [(Ai⃗y) = 1] =
1
2
:‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ ‫לפי‬ ,(Ai⃗y) = 1-‫ש‬ ‫בהינתן‬ ,‫כעת‬
Pr
(
⃗xT
A⃗y = 1 A⃗y ̸= 0
)
=
1
2
:‫ולכן‬
Pr
(
⃗xT
A⃗y = 1
)
=
Pr
(
⃗xT
A⃗y = 1 A⃗y ̸= 0
)
= 1
2
· Pr (A⃗y ̸= 0)
≥ 1
2
≥
1
4
‫ההוכחה‬ ‫של‬ ‫הסינטקטי‬ ‫השלב‬ 42.3.5
‫אם‬ ‫מה‬ ,‫השאלה‬ ‫נשאלת‬ ‫אז‬ ‫אבל‬ ,‫ההוכחה‬ ‫של‬ ‫המרכזי‬ ‫הרעיון‬ - (‫המאמת‬ ‫)של‬ V ‫של‬ ‫תפקידו‬ - ‫כאן‬ ‫היה‬ ‫ההוכחה‬ ‫לב‬
?‫התוצאה‬ ‫את‬ ‫להתאים‬ ‫מנסה‬ ‫זדוני‬ ‫מישהו‬
.‫תקין‬ ‫אכן‬ ‫שקיבלנו‬ ‫שהקידוד‬ ‫לוודא‬ ‫נרצה‬ ‫כך‬ ‫לשם‬
.‫השמה‬ ‫היא‬ ⃗u ‫כי‬ ‫נניח‬ ‫כך‬ ‫לשם‬
‫תדחה‬ V - ‫הנאותות‬ ‫ומבחינת‬ ‫הבא‬ ‫לשלב‬ ‫עוברים‬ ‫מיד‬ - ‫שלמות‬ ‫מתקיימת‬ ‫שאם‬ ‫חלקים‬ ‫משלושה‬ ‫מורכבת‬ ‫ההוכחה‬
.1
2 ≤ ‫בהסתברות‬
.‫בולאנית‬ ‫למטריצות‬ ‫רק‬ ‫נתייחס‬ ‫כאן‬23
.Pr (⟨⃗x, ⃗y⟩ = 1) = 1
2
:⃗x, ⃗y ∈ {0, 1}n
‫שעבור‬ ‫אומר‬ ‫הוא‬ ‫בעיקרון‬ ‫אך‬ ,‫כאן‬ ‫הוגדר‬ ‫או‬ ‫הוכח‬ ‫לא‬ ‫הוא‬24
50
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
.42.3.3 ‫הסמנטי‬ ‫לשלב‬ ‫עוברים‬ - ‫בהצלחה‬ ‫הללו‬ ‫השלבים‬ ‫שלושת‬ ‫את‬ ‫שסיימנו‬ ‫ברגע‬
:‫הבא‬ (P) ‫הקידוד‬ ‫על‬ ‫נסתכל‬
WH (⃗u)
∈{0,1}2n
, WH (⃗u ⊗ ⃗u)
∈{0,1}2n×n
.‫וולש-הדמרד‬ ‫קוד‬ ‫הוא‬ WH ‫כאשר‬
.‫הטענה‬ ‫את‬ ‫לאמת‬ ‫כדי‬ V -‫ה‬ ‫עובד‬ ‫ועלזה‬ ‫מכיל‬ P-‫ש‬ ‫מה‬ ‫זה‬ ,‫כלומר‬ .‫ההוכחה‬ ‫של‬ P-‫ה‬ ‫זה‬ - ‫תקין‬ ‫שזה‬ ‫בהנחה‬
:'‫א‬ ‫חלק‬
:‫תזכורת‬
‫פונקציה‬ ‫של‬ ‫האמת‬ ‫טבלת‬ ‫היא‬ ⃗s ⇐⇒ ⃗v ∈ {0, 1}
t
‫מחרוזת‬ ‫של‬ ‫וולש-הדמרד‬ ‫קוד‬ ‫היא‬ ⃗s ∈ {0, 1}
2l
‫מחרוזת‬
.f (7.1.2) ‫לינארית‬
#
 !
‫לבדוק‬ ‫ונרצה‬ Sf = WH (⃗u) , Sg = WH (⃗w) :‫ש‬ ‫כך‬ ⃗u ∈ {0, 1}
n
, ⃗w ∈ {0, 1}
n×n
‫קיימים‬ ‫האם‬ ‫לבדוק‬ ‫נרצה‬
.(‫לינאריות‬ ‫לבדוק‬ ‫נרצה‬ ,‫)כלומר‬ ‫לינאריות‬ ‫פונקציות‬ ‫של‬ ‫אמת‬ ‫בטבלת‬ ‫מדובר‬ ‫אכן‬ ‫האם‬
‫לאורך‬ ‫בהתאם‬ ‫הוא‬ ‫אורכם‬ ‫אשר‬ ⃗a,⃗b ‫וקטורים‬ ‫שני‬ Si ‫כל‬ ‫עבור‬ ‫מגרילים‬ ‫לינאריות‬ ‫הפונקציות‬ ‫אכן‬ ‫האם‬ ‫לבדוק‬ ‫בשביל‬
,⃗u, ⃗w ‫של‬
:‫האם‬ ‫ובודקים‬ ‫ביטים‬ ‫שלושה‬ ‫מגרילים‬ ‫ובת‬ ‫אחיד‬ ‫באופן‬ ‫ואז‬
f (⃗a) + f
(
⃗b
)
= f
(
⃗a +⃗b
)
:10 ‫הסבר‬
.‫מיקום‬ ‫מציינים‬ ⃗a,⃗b ‫הווקטורים‬ ,⃗c ‫בהגרלת‬ ‫כמו‬ ‫אזי‬ ⃗a,⃗b ‫וקטורים‬ ‫שני‬ ‫שהגרלנו‬ ‫אחרי‬
‫צריך‬ ‫אזי‬ ,‫הפונקציה‬ ‫של‬ ‫אמת‬ ‫טבלת‬ ‫היא‬ WH (⃗u) -‫ש‬ ‫כך‬ ⃗u ∈ {0, 1}
n
‫קיים‬ ‫האם‬ ‫למשל‬ ‫לבדוק‬ ‫בשביל‬ ‫כעת‬
.f (⃗a) + f
(
⃗b
)
= f
(
⃗a +⃗b
)
‫מתקיים‬ ‫האם‬ ‫ולבדוק‬
(
⃗a,⃗b
)
‫בווקטור‬ ‫מקומות‬ ‫שני‬ ‫לדגום‬
:‫שלמות‬
‫יתקיים‬ ‫בהכרח‬ ‫אזי‬ (‫כלשהי‬ ‫לינארית‬ ‫פונקציה‬ ‫של‬ ‫אמת‬ ‫טבלת‬ ‫הוא‬ WH (⃗u)-‫ש‬ ‫כך‬ ⃗u ‫קיים‬ ,‫)כלומר‬ ‫לינארית‬ f ‫אם‬
.(42.3.3 - ‫הסמנטי‬ ‫לשלב‬ ‫ישר‬ ‫)ונעבור‬ .‫השוויון‬
:‫נאותות‬
.Θ (∆) ‫בהסתברות‬ ‫אותה‬ ‫דוחה‬ (‫)מאמת‬ V -‫ה‬ ‫אזי‬ ‫∆-רחוקה‬ ‫היא‬ f ‫אם‬
.f′
‫לינארית‬ ‫לפונקציה‬ ‫מאוד‬ ‫קרובה‬ ‫אבל‬ ,‫לינארית‬ ‫אינה‬ f-‫ש‬ ‫במקרה‬ ‫לטפל‬ ‫הוא‬ ‫לנו‬ ‫שנותר‬ ‫מה‬ ‫כל‬
.'‫ב‬ ‫לשלב‬ ‫נעבור‬ ‫זה‬ ‫במקרה‬
:‫יעילות‬
.(‫מהמקרים‬ ‫אחת‬ ‫בכל‬ ‫מקומות‬ ‫שני‬ ‫)עבור‬ r = 2 · n + 2 · n2
:‫שמוגרלים‬ ‫האקראים‬ ‫הביטים‬ ‫כמות‬
.(‫מקרה‬ ‫כל‬ ‫עבור‬ 3) q = 3 + 3 = 6 :‫שקוראים‬ ‫הביטים‬ ‫כמות‬
:'‫ב‬ ‫חלק‬
.⃗w = ⃗u ⊗ ⃗u :‫האם‬ ‫לבדוק‬ ‫נרצה‬
,(⃗w − ⃗u ⊗ ⃗u) = 0 ‫האם‬ ‫נבדוק‬ ‫כך‬ ‫לשם‬
:(42.3.4) ‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ ‫באמצעות‬ ‫זאת‬ ‫נעשה‬
:‫האם‬ ‫ונבדוק‬ ,⃗x, ⃗y ‫וקטורים‬ ‫שני‬ ‫נגריל‬
⃗xT
A⃗y = 0
⃗xT
(⃗w − ⃗u ⊗ ⃗u) ⃗y = 0
⃗xT
⃗w⃗y = ⃗xT
(⃗u ⊗ ⃗u) ⃗y
:‫האם‬ ‫הוא‬ ‫לבדוק‬ ‫שצריך‬ ‫מה‬ ,‫ולכן‬
51
NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬
WH (⃗w)⃗x⊗⃗y = WH (⃗u)⃗x · WH (⃗u)⃗y
.(‫המיקום‬ ‫את‬ ‫מציין‬ ⃗x-‫ה‬ WH (⃗u)⃗x-‫ב‬ ,‫)כלומר‬ ‫מיקום‬ ‫הוא‬ ‫אלה‬ ‫משלושת‬ ‫אחד‬ ‫כל‬ ‫כאשר‬
:‫שלמות‬
.‫הסמנטי‬ ‫לשלב‬ ‫ונעבור‬ ‫תמיד‬ ‫יתקיים‬ ‫השוויון‬ ‫אזי‬ ⃗w = ⃗u ⊗ ⃗u ‫אכן‬ ‫אם‬
:‫נאותות‬
.1
4 -‫מ‬ ‫קטן‬ ‫הוא‬ ‫כאן‬ ‫שנטעה‬ ‫הסיכוי‬ - ‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ ‫עפ‬
:‫יעילות‬
.(‫ווקטור‬ ‫כל‬ ‫)עבור‬ r = n + n = 2 · n :‫המוגרלים‬ ‫הביטים‬ ‫כמות‬
.(‫המרכזית‬ ‫המשוואה‬ ‫)בדיקת‬ q = 1 + 1 + 1 = 3 :‫שנקראים‬ ‫הביטים‬ ‫כמות‬
‫סיכום‬ 42.4
.‫ביטים‬ Θ (1) ‫רק‬ ‫לקרוא‬ ‫שצריך‬ ‫וזה‬ ‫והנאותות‬ ‫השלמות‬ ‫בגלל‬ ‫תאורטית‬ ‫מבחינה‬ ‫מדהים‬ ‫הוא‬PCP-‫ה‬ ‫משפט‬
.‫-שלמות‬NP ‫לבעיות‬ ‫קירוב‬ ‫קושי‬ ‫עם‬ ‫לנו‬ ‫עזור‬ ‫הוא‬ ‫מעשית‬ ‫מבחינה‬
:(‫סמנטי‬ ‫שלב‬ ‫ואחרים‬ ‫סינטקטיים‬ ‫)שניים‬ ‫האימות‬ ‫של‬ ‫השלבים‬ ‫שלושת‬ ‫אחרי‬ ,‫סהכ‬
r = m + 2n2
+ 4n
q = 10
52
‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬
‫העניינים‬ ‫תוכן‬
1 ‫חזרה‬ I
1 ‫הסתברות‬ 1
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מדגם‬ ‫מרחב‬ 1.1
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מאורע‬ 1.2
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A ‫מאורע‬ ‫פירוק‬ 1.3
1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Union Bound ‫האיחוד‬ ‫חסם‬ 1.3.1
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫והדחה‬ ‫הכלה‬ 1.3.2
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מותנית‬ ‫הסתברות‬ 1.4
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫תלויים‬ ‫בלתי‬ ‫מאורעות‬ 1.4.1
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫איחוד‬ ‫לגבי‬
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מקרי‬ ‫משתנה‬ 1.5
2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫תוחלת‬ 1.6
3 ‫טיילור‬ ‫קירוב‬ 2
3 ‫קירוב‬ ‫אלגוריתמי‬ 3
3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (G ‫גרף‬ ‫)של‬ ‫הקשירות‬ ‫בעיית‬ :‫דוגמה‬ 3.1
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ערך‬ ‫פונקציית‬ 3.2
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (‫קבוע‬ ‫)=יחס‬ ‫קירוב‬ ‫פקטור‬ 3.3
4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מדויקות‬ ‫הגדרות‬ 3.3.1
4 (k-wise independece) ‫משתנים‬ ‫של‬ ‫אי-תלות‬ 4
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הכללות‬ 4.1
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ 4.2
5 ‫בולאניים‬ ‫מעגלים‬ ‫מול‬ ‫פולינומים‬ 5
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XOR ‫שער‬ - ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ 5.1
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המעגל‬ ‫חיזוק‬ 5.2
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פולינומים‬ 5.3
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (‫יחיד‬ ‫)משתנה‬ ‫הגדרה‬ 5.3.1
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫רב-משתנים‬ ‫לפולינום‬ ‫דוגמה‬ 5.3.2
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נמוכה‬ ‫מדרגה‬ ‫פולינומים‬ ‫עי‬ ‫מעגלים‬ ‫קרוב‬ 5.4
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מעגלים‬ ‫סדרת‬ 5.4.1
6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פולינומים‬ ‫סדרת‬ 5.4.2
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לפולינומים‬ (‫)מעגלים‬ ‫שערים‬ ‫המרת‬ 5.5
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פרמה‬ ‫משפט‬ 5.5.1
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOT ‫שער‬ 5.5.2
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MOD ‫שער‬ 5.5.3
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AND ‫שער‬ 5.5.4
7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OR ‫שער‬ 5.5.5
8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מסכמת‬ ‫טבלה‬ 5.6
8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הקירוב‬ ‫משפט‬ 5.7
8 (‫קירוב‬ ‫)יחס‬ ‫פקטור‬ 6
53
‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬
8 ‫לינאריות‬ ‫בדיקת‬ 7
8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לינאריות‬ ‫ופונקציות‬ ‫בולאניות‬ ‫פונקציות‬ ‫הגדרת‬ 7.1
8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הבולאניות‬ ‫הפונקציות‬ ‫כמות‬ 7.1.1
9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לינאריות‬ ‫פונקציות‬ 7.1.2
9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הסטטיסטי‬ ‫המרחק‬ 7.2
9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פונקציות‬ ‫שתי‬ ‫בין‬ ‫הסטטיסטי‬ ‫המרחק‬ 7.2.1
9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לינארית‬ ‫לפונקציה‬ ‫סטטיסטי‬ ‫מרחק‬ 7.2.2
9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המרכזי‬ ‫המשפט‬ 7.3
9 ‫טיורינג‬ ‫מכונות‬ II
10 ‫חישובים‬ ‫מורכבות‬ 8
10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫אלגוריתם‬ ‫מאפיין‬ ‫מה‬ 8.1
10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נתונים‬ 8.1.1
10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫חוקים‬ 8.1.2
11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫היסודית‬ ‫השאלה‬ 8.2
11 ‫חישוב‬ ‫מכונות‬ 9
11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫החישוב‬ ‫אופן‬ 9.1
11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫חישוב‬ ‫מתבצע‬ ‫כיצד‬ 9.1.1
12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫החישוב‬ ‫פלט‬ ‫סימון‬ 9.1.2
12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טיורינג‬ ‫מכונת‬ ‫של‬ ‫וריאנטים‬ 9.2
12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המרכזי‬ ‫המשפט‬ 9.2.1
12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילה‬ ‫סימולציה‬ 9.2.2
12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סימולציה‬ ‫זמן‬ 9.2.3
12 ‫אוניברסליות‬ 10
13 ‫אלגוריתם‬ ‫של‬ ‫יעילות‬ 11
13 (‫)חזרה‬ ‫חישוביות‬ III
13 ‫חישובית‬ ‫מורכבות‬ 12
13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההיררכיה‬ ‫משפט‬ 12.1
14 ‫טבעית‬ ‫בעיות‬ 13
14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫טבעית‬ ‫בעיה‬ ‫נגדיר‬ ‫כיצד‬ 13.1
14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫טבעית‬ ‫לא‬ ‫חיפוש‬ ‫בעיית‬ ‫נגדיר‬ ‫איך‬ 13.2
15 NP ‫המחלקה‬ 14
15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שלמות‬
15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נאותות‬
15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילות‬
16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המחשב‬ ‫במדעי‬ ‫המרכזית‬ ‫הבעיה‬ 14.1
16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מייצגת‬ ‫בעיה‬ 14.2
16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫קשה‬ ‫הכי‬ ‫נגדיר‬ ‫איך‬ 14.2.1
16 ‫פולינומית‬ ‫רדוקציה‬ - (Karp) ‫קארפ‬ ‫רדוקציית‬ 15
17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫-שלמה‬C ‫שפה‬ 15.1
54
‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬
18 ‫ואופטימיזציה‬ ‫חיפוש‬ ,‫הכרעה‬ ‫של‬ ‫גרסאות‬ ‫בין‬ ‫שקילות‬ 16
18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 − SAT ‫דוגמת‬ 16.1
18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שקילות‬ ‫דוגמת‬ 16.1.1
19 DSR ‫שיטת‬ 17
19 (‫-דטרמיניסטי‬ ‫לא‬ ‫חישוב‬ NP ‫)הגדרת‬ ‫מטלד‬ 18
19 coNP ‫המחלקה‬ 19
19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . coC ‫המחלקה‬ 19.1
20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . coP = P 19.2
20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫כמתים‬ ‫באמצעות‬ coNP ‫הגדרת‬ 19.3
21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NP ̸= coNP-‫ש‬ ‫ההשערה‬ 19.4
21 PH - ‫פולינומית‬ ‫היררכיה‬ IV
22 coNP-‫ו‬ NP-‫ל‬ ‫שמעבר‬ ‫מה‬ 20
22 . . . . . . . . . . . . . . . . . . . . . . . . . . . (‫כמתים‬ ‫שני‬ ‫עם‬ ‫לבעיה‬ ‫)דוגמה‬ ‫המזערי‬ ‫המעגל‬ ‫בעיית‬ 20.1
23 ‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬ 21
23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סימונים‬ 21.1
23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ΠkP-‫ו‬ ΣkP 21.2
23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PH ‫הגדרת‬ 21.3
24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . '‫וכו‬ P ̸= NP ‫לגבי‬ ‫מרכזיות‬ ‫השערות‬ 21.4
24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הקריסה‬ ‫משפט‬ 21.5
24 ‫זיכרון‬ ‫סיבוכיות‬ V
25 S ≪ T ‫שבו‬ ‫למקרה‬ ‫דוגמת‬ 22
25 ‫חישוב‬ ‫קונפיגורצית‬ 23
26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫ישנן‬ ‫קונפיגורציות‬ ‫כמה‬ 23.1
26 ‫זיכרון‬ - ‫סיבוכיות‬ ‫מחלקות‬ 24
26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההיררכיה‬ ‫משפט‬ 24.1
27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המחלקות‬ ‫של‬ ‫ההיררכיה‬ 24.2
27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?L ̸= NP :‫פתוחה‬ ‫בעיה‬ 24.2.1
27 ‫במשחקים‬ ‫מנצחות‬ ‫אסטרטגיות‬ VI
28 ‫משחקים‬ ‫הגדרת‬ 25
28 ‫צרמלו‬ ‫משפט‬ 26
28 . . . . . . . . . . . . . . . . . . . . . . . . ?‫מנצחת‬ ‫אסטרטגיה‬ ‫יש‬ (‫)לבן‬ ‫הפותח‬ ‫שלשחקן‬ ‫רושמים‬ ‫כיצד‬ 26.1
29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫נותרו‬ ‫צעדים‬ ‫כמה‬ ‫מסמנים‬ ‫כיצד‬ 26.2
29 TQBF 27
29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TQBF ‫להכרעת‬ ‫אלגוריתם‬ 27.1
29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫-שלמה‬PSPACE ‫היא‬ TQBF 27.2
29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TQBF ‫של‬ ‫הזיכרון‬ ‫סיבוכיות‬ 27.3
55
‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬
29 ‫לא-דטרמינסטי‬ ‫זיכרון‬ ‫סיבוכיות‬ 28
30 (‫אוב‬ ‫)פונקציית‬ ‫האורקל‬ ‫גישת‬ VII
30 ‫רקע‬ 29
30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫אורקל‬ ‫גישת‬ 29.1
30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סימונים‬ 29.2
31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ - ‫מסורתית‬ ‫הוכחה‬ 29.3
31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BGS-‫ה‬ ‫משפט‬ 29.4
32 PCP-‫ה‬ ‫משפט‬ VIII
32 ?‫הוכחה‬ ‫מערכת‬ ‫מהי‬ 30
32 ‫הוכחה‬ ‫למערכת‬ ‫הדרושים‬ ‫התנאים‬ 31
32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שלמות‬ 31.1
33 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נאותות‬ 31.2
33 PCP-‫ה‬ ‫משפט‬ 32
33 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילות‬ 32.1
34 IP - ‫אינטראקטיביות‬ ‫הוכחה‬ ‫מערכות‬ IX
34 ‫הבסיסי‬ ‫הרעיון‬ 33
34 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הדו-שיח‬ ‫פרוטוקול‬ 33.1
34 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שלמות‬ 33.2
35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נאותות‬ 33.3
35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילות‬ 33.4
35 ‫גרפים‬ ‫של‬ ‫איזומורפיזם‬ - ‫דוגמה‬ 34
35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ 34.1
35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GISO, GNISO ‫השפות‬ 34.2
36 GNISO ∈ IP [2] ‫כי‬ ‫ההוכחה‬ 35
36 ‫קבוע‬ K ‫כאשר‬ IP [K] 36
37 (‫המרכזי‬ ‫)המשפט‬ IP ‫הגדרת‬ 37
37 Zero Knowledge-‫ה‬ ‫עיקרון‬ 38
37 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (NP) ‫קלאסית‬ ‫הוכחה‬ ‫מערכת‬ 38.1
37 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [IP] ‫אינטראקטיביות‬ ‫הוכחות‬ ‫מערכת‬ 38.2
38 ‫הוכחות‬ X
38 ‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬ 39
39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫העצירה‬ ‫בעיית‬ ‫אי-כריעות‬ ‫הוכחת‬ 39.1
39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הנחות‬ 39.1.1
39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההוכחה‬ 39.1.2
56
‫האיורים‬ ‫רשימת‬‫החישובים‬ ‫מורכבות‬
40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬ 39.2
40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Θ-‫ב‬ ‫טיפול‬ 39.2.1
41 BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ 40
41 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫הראשון‬ ‫החלק‬ ‫הוכחת‬ 40.1
42 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫שני‬ ‫החלק‬ ‫הוכחת‬ 40.2
43 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Θ-‫ב‬ ‫טיפול‬ 40.2.1
43 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טופלו‬ ‫שכבר‬ ‫בקלטים‬ ‫טיפול‬ 40.2.2
43 ‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫ההוכחה‬ 41
43 . . . . . . . . . . . . . . . . . . . . . . . . TQBF ∈ D − SPACE ‫וגם‬ TQBF ∈ PSPACE 41.1
44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫-שלמה‬PSPACE ‫היא‬ TQBF 41.2
44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫קונפיגורציות‬ ‫גרף‬ 41.2.1
44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . L ≤p TQBF 41.2.2
45 NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫להוכחה‬ ‫כלים‬ 42.1
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ווקטורים‬ ‫על‬ ‫פעולות‬ 42.1.1
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫חיבור‬
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פנימית‬ ‫מכפלה‬
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫על‬ ‫פעולות‬ 42.1.2
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫חיבור‬
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫של‬ ‫פנימית‬ ‫מכפלה‬
46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טנזורית‬ ‫מכפלה‬
47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫וולש-הדמרד‬ ‫קוד‬ 42.1.3
47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NP ⊇ PCP (Θ (log n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.2
47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NP ⊆ PCP (poly (n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.3
48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . QE ‫שנייה‬ ‫ממעלה‬ ‫משאוות‬ 42.3.1
48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 − SAT ≤p QE 42.3.2
49 . . . . . . . . . . . . . . . . . . . ‫ההוכחה‬ ‫של‬ ‫המרכזי‬ ‫הרעיון‬ - (‫המאמת‬ ‫)של‬ V ‫של‬ ‫תפקידו‬ 42.3.3
50 . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ 42.3.4
50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההוכחה‬ ‫של‬ ‫הסינטקטי‬ ‫השלב‬ 42.3.5
52 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סיכום‬ 42.4
‫האיורים‬ ‫רשימת‬
5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XOR ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ 1
11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טיורינג‬ ‫למכונת‬ ‫דוגמה‬ 2
17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הפולינומית‬ ‫הרדוקציה‬ ‫פעולת‬ 3
24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פולינומית‬ ‫היררכיה‬ 4
35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ 5
38 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫קנטור‬ ‫של‬ ‫האלכסון‬ 6
44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לדוגמה‬ ‫קונפיגורציות‬ ‫גרף‬ 7
.‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬25
‫השני‬ ‫החלק‬ ‫בשביל‬ ‫כאן‬ ‫זה‬ ‫אבל‬ ,‫האלכסון‬ ‫בשיטת‬ ‫הוכחה‬ ‫לא‬ ‫זאת‬26
57
‫מפתח‬
1 ,‫הסתברות‬
1 ,‫האיחוד‬ ‫חסם‬
1 ,‫מאורע‬
2 ,‫בלתי-תלויים‬ ‫מאורעות‬
4 ,‫בעיית‬ ,‫מינימיזציה‬
4 ,‫בעיית‬ ,‫מקסימיזציה‬
24 ,‫הקריסה‬ ‫משפט‬
2 ,‫מקרי‬ ‫משתנה‬
1 ,‫מדגם‬ ‫מרחב‬
8 ,‫בולאניות‬ ‫פונקציות‬
4 ,‫קירוב‬ ‫פקטור‬
11 ,‫מצבים‬ ‫קבוצת‬
26 ,‫קונפיגורציה‬
4 ,‫קירוב‬
3 ,‫טיילור‬ ‫קירוב‬
6 ,MOD ‫שער‬
17 ,‫-קשה‬C ‫שפה‬
16 ,‫-קשה‬NP ‫שפה‬
2 ,‫תוחלת‬
3 ,‫התוחלת‬ ‫לינאריות‬
D
19 ,DSR
58

סיכום במורכבות החישובים

  • 1.
    ‫הסתברות‬ 1‫החישובים‬ ‫מורכבות‬ ‫החישובים‬‫מורכבות‬ !‫בסוף‬ ‫עניינים‬ ‫תוכן‬ I ‫חלק‬ ‫חזרה‬ ‫הסתברות‬ 1 ‫מדגם‬ ‫מרחב‬ 1.1 :‫וקביה‬ ‫הטלת‬ ‫עבור‬ ,‫למשל‬ .‫מסוים‬ ‫מאורע‬ ‫עבור‬ ‫שיש‬ ‫האפשרויות‬ ‫כל‬ ‫את‬ ,‫כלומר‬ .‫המדגם‬ ‫מרחב‬ ‫את‬ Ω-‫ב‬ ‫נסמן‬ .Ω = {1, 2, 3, 4, 5, 6} ∀x ∈ Ω : 0 ≤ Pr (x) ≤ 1 ‫מאורע‬ 1.2 .A ⊆ Ω ,Ω ‫של‬ ‫תת-קבוצה‬ ‫היא‬ ‫מאורע‬ Pr (A) = ∑ x∈A Pr (x) .(‫לתת-בעיות‬ ‫הבעיה‬ ‫את‬ ‫)לחלק‬ ‫פשוטים‬ ‫יותר‬ ‫מאורעות‬ ‫של‬ ‫בצורה‬ ‫אותו‬ ‫ולהציג‬ ‫אותו‬ ‫לפשט‬ ‫נעדיף‬ A ‫מאורע‬ ‫כשיש‬ A ‫מאורע‬ ‫פירוק‬ 1.3 .‫לתתי-מאורעות‬ ‫אחד‬ ‫מאורע‬ ‫שמפרקים‬ ‫או‬ ,‫מאורעות‬ ‫מספר‬ ‫על‬ ‫מדברים‬ ‫כאשר‬ Union Bound ‫האיחוד‬ ‫חסם‬ 1.3.1 Pr (A ∪ B) ≤ Pr (A) + Pr (B) 1
  • 2.
    ‫הסתברות‬ 1‫החישובים‬ ‫מורכבות‬ ‫והדחה‬‫הכלה‬ 1.3.2 Pr (A ∪ B) = Pr (A) + Pr (B) − Pr (A ∩ B) ‫לפעמים‬ ‫קשה‬ ‫יותר‬ ‫גם‬ ‫ולכן‬ ‫יותר‬ ‫עדין‬ ‫כלי‬ ‫זהו‬ ‫והדחה‬ ‫הכלה‬ .‫והדחה‬ ‫הכלה‬ ‫מאשר‬ ‫יותר‬ ‫גס‬ ‫כלי‬ ‫הוא‬ ‫האיחוד‬ ‫חסם‬ .‫בעיות‬ ‫איתו‬ ‫לפתור‬ ‫מותנית‬ ‫הסתברות‬ 1.4 A ‫מאורע‬ ‫שקרה‬ ‫בהינתן‬ ,‫כלומר‬ ,P (B|A) :‫היא‬ B-‫ב‬ A ‫של‬ ‫המותנית‬ ‫ההסתברות‬ .A, B :‫מאורעות‬ ‫שני‬ ‫לנו‬ ‫נתונים‬ ...‫יקרה‬ B-‫ש‬ ‫ההסתברות‬ ‫מה‬ :‫שיקרו‬ ‫המאורעות‬ ‫שני‬ ‫על‬ ‫מדובר‬ ‫כאשר‬ Pr (A ∩ B) = Pr (A) ‫קודם‬ · Pr (B|A) ‫אח"כ‬ ‫תלויים‬ ‫בלתי‬ ‫מאורעות‬ 1.4.1 B-‫ש‬ ‫ההסתברות‬ ‫על‬ ‫ישפיע‬ ‫לא‬ ‫התרחש‬ ‫לא‬ ‫או‬ ‫התרחש‬ A-‫ש‬ ‫שזה‬ ‫אומר‬ ‫זה‬ ‫אזי‬ ,(‫)ב"ת‬ ‫תלויים‬ ‫בלתי‬ ‫המאורעות‬ ‫כאשר‬ .‫יתרחש‬ :‫כזה‬ ‫במקרה‬ Pr (A|B) = Pr (A) , Pr (B|A) = Pr (B) :‫אפשרויות‬ ‫שלוש‬ ‫ישנן‬ Pr (A|B) > Pr (A) , Pr (B|A) > Pr (B) :‫חיובית‬ ‫תלות‬ Pr (A|B) < Pr (A) , Pr (B|A) < Pr (B) :‫שלילית‬ ‫תלות‬ Pr (A ∩ B) = Pr (A) · Pr (B) :‫אי-תלות‬ :‫אי-תלות‬ ‫ישנה‬ ‫כאשר‬ ,‫כללי‬ ‫ובאופן‬ Pr (A1 ∩ · · · ∩ An) = ∏ 1≤i≤n Pr (Ai) ,∀i : Pr (Ai) = p :‫כלומר‬ ,‫הסתברות‬ ‫אותה‬ ‫את‬ ‫יש‬ ‫המאורעות‬ ‫לכל‬ ‫ואם‬ .Pr (A1 ∩ · · · ∩ An) = pn :‫אזי‬ :‫מאורע‬ ‫לכל‬ ‫קבועה‬ ‫ההסתברות‬ ‫כאשר‬ ‫רעיון‬ ‫אותו‬ ‫הוא‬ ‫הרעיון‬ ‫איחוד‬ ‫לגבי‬ Pr (A1 ∪ · · · ∪ An) ≤ ∑ 1≤i≤n Pr (Ai) = n · Pr (Ai) .(‫חזק‬ ‫כלי‬ ‫זה‬ ‫)ולכן‬ .‫בלתי-תלויים‬ ‫למאורעות‬ ‫וגם‬ ‫תלויים‬ ‫למאורעות‬ ‫גם‬ ‫נכון‬ ‫וזה‬ ‫מקרי‬ ‫משתנה‬ 1.5 .f : Ω → R :R-‫ל‬ Ω-‫מ‬ ‫פונקציה‬ ‫זוהי‬ ‫מקרי‬ ‫משתנה‬ .X, Y, Z, ...-‫ב‬ ‫אותה‬ ‫נסמן‬ ‫אנחנו‬ ‫תוחלת‬ 1.6 .E (f) = µ (f) :‫מסמנים‬ f ‫מקרי‬ ‫משתנה‬ ‫עבור‬ ‫אשר‬ ,‫משוקלל‬ ‫ממוצע‬ ‫היא‬ ‫תוחלת‬ :‫נשתמש‬ ‫לא‬ ‫שבהן‬ ‫לתוחלת‬ ‫הגדרות‬ ‫שתי‬ 2
  • 3.
    ‫קירוב‬ ‫אלגוריתמי‬ 3‫החישובים‬‫מורכבות‬ $$$$$$$$∑ x∈Ω Pr (x) · f (x) $$$$$$$$$$$∑ V ∈Im(f) Pr (x = V ) · V z .‫התוחלת‬ ‫לינאריות‬ ‫הוא‬ ‫בו‬ ‫שנשתמש‬ ‫הכלי‬ ‫זאת‬ ‫לעומת‬ .(‫לחסם‬ ‫)בדומה‬ ‫עובדת‬ ‫תמיד‬ ‫התוחלת‬ ‫לינאריות‬ E (f + g) = E (f) + E (g) E   ∑ 1≤i≤n fi   = ∑ 1≤i≤n E (fi) ∑ x Pr (x) (f (x) + g (x)) = ∑ x Pr (x) f (x) + ∑ x Pr (x) g (x) :‫יותר‬ ‫קצר‬ ‫בניסוח‬ ‫או‬ E (∑ fi ) = ∑ E (fi) ‫טיילור‬ ‫קירוב‬ 2 :x < 1 2 ‫עבור‬ e x 2 ≤ 1 + x ≤ ex ≤ 1 + 2x :ln ‫נעשה‬ ‫וכעת‬ x 2 ≤ ln (1 + x) ≤ x ≤ ln (1 + 2x) ‫קירוב‬ ‫אלגוריתמי‬ 3 :‫קירוב‬ ‫לאלגוריתמי‬ ‫גרסאות‬ ‫שלוש‬ ‫ישנן‬ .‫הכרעה‬ .‫חיפוש‬ .‫אופטימיזציה‬ (G ‫גרף‬ ‫)של‬ ‫הקשירות‬ ‫בעיית‬ :‫דוגמה‬ 3.1 (‫קשיר‬ ‫הוא‬ ‫הגרף‬ ‫)האם‬ .G ‫הגרף‬ :‫קלט‬ ?‫קשיר‬ G ‫הגרף‬ ‫האם‬ ‫הכרעה‬ ‫בעיית‬ (?‫פורש‬ ‫עץ‬ ‫ישנו‬ ‫)האם‬ .‫פורש‬ ‫עץ‬ ‫מצא‬ ‫חיפוש‬ ‫בעיית‬ (?‫מינימלי‬ ‫פורש‬ ‫עץ‬ ‫ישנו‬ ‫)האם‬ .‫מינימלי‬ ‫פורש‬ ‫עץ‬ ‫מצא‬ ‫אופטימיזציה‬ ‫בעיית‬ 3
  • 4.
    (k-wise independece) ‫משתנים‬‫של‬ ‫אי-תלות‬ 4‫החישובים‬ ‫מורכבות‬ ‫ערך‬ ‫פונקציית‬ 3.2 .‫מסוים‬ ‫ערך‬ ‫לנו‬ ‫מחזירה‬ ‫והיא‬ ‫לבעיה‬ ‫מבעיה‬ ‫שמשתנה‬ ‫פונקציה‬ ‫היא‬ ‫ערך‬ ‫פונקציית‬ :‫הקשירות‬ ‫בעיית‬ ‫בדוגמת‬ ,‫למשל‬ ‫קשירות‬ (G, w, T) = {∑ e∈T w (e) T − ‫פורש‬ ‫עץ‬ w (G) + 1 ‫אחרת‬ (‫קבוע‬ ‫)=יחס‬ ‫קירוב‬ ‫פקטור‬ 3.3 .‫קירוב‬ ‫מצאנו‬ ‫אבל‬ ‫האופטימלי‬ ‫הפתרון‬ ‫את‬ ‫לה‬ ‫מצאנו‬ ‫שלא‬ ‫בעיה‬ ‫ישנה‬ .‫באחוזים‬ ‫אותה‬ ‫נמדוד‬ ,‫כלומר‬ - ‫כפלית‬ ‫שגיאה‬ ‫נמדוד‬ .α = 1.1 :‫הקירוב‬ ‫פקטור‬ .(‫)למשל‬ 10% ‫היותר‬ ‫לכל‬ ‫נשלם‬ - ‫מינימיזציה‬ ‫בעיית‬ .‫מקורב‬ ‫מחיר‬ ≤ 1.1· ‫מזערי‬ ‫מחיר‬ :‫כלומר‬ .α = 0.8 ‫הקירוב‬ ‫פקטור‬ .‫מהמקסימום‬ ‫פחות‬ 20% ‫היותר‬ ‫לכל‬ ‫נרוויח‬ - ‫מקסימיזציה‬ ‫בעיית‬ .‫מקורב‬ ‫≥רווח‬ 0.8· ‫מרבי‬ ‫רווח‬ :‫כלומר‬ ‫מדויקות‬ ‫הגדרות‬ 3.3.1 ?α (‫תחרותיות‬ ‫)יחס‬ ‫פקטור‬ ‫מבטיח‬ A ‫אלגוריתם‬ ‫מתי‬ ‫מקסימיזציה‬ (x, A (x)) ≥ ≤1 α. max w sols (x, w) .‫משתפר‬ ‫הקירוב‬ ‫כך‬ α → 1-‫ש‬ ‫ככל‬ .‫אופטימלי‬ ‫למעשה‬ ‫המקורב‬ ‫הפתרון‬ α = 1 ‫כאשר‬ ‫מינימיזציה‬ (x, A (x)) ≤ ≥1 α. min w sols (x, w) .‫רע‬ ‫נהיה‬ ‫הקירוב‬ α → 0 ‫כש‬ .‫משתפר‬ ‫הקירוב‬ ‫כך‬ α → 1-‫ש‬ ‫ככל‬ .‫אופטימלי‬ ‫פתרון‬ ‫למעשה‬ ‫הוא‬ ‫המקורב‬ ‫הפתרון‬ - α = 1 ‫כאשר‬ .‫רע‬ ‫נהיה‬ ‫הקירוב‬ α → ∞-‫כש‬ (k-wise independece) ‫משתנים‬ ‫של‬ ‫אי-תלות‬ 4 .‫ב"ת‬ ‫אחידים‬ ‫מקריים‬ ‫משתנים‬ X, Y ∈ {0, 1} .Z2-‫ב‬ ‫שאיבריו‬ ‫בשדה‬ ‫חיבור‬ - Z = X ⊕ Y ‫שלישי‬ ‫משתנה‬ ‫נגדיר‬ ‫ההסתברות‬ X Y Z 1 4 0 0 0 1 4 0 1 1 1 4 1 0 1 1 4 1 1 0 ‫)אם‬ ‫חזקה‬ ‫מאוד‬ ‫תלות‬ ‫יש‬ ‫בשלשות‬ .‫השלישי‬ ‫את‬ ‫יודעים‬ ‫תמיד‬ - ‫שניים‬ ‫יודעים‬ ‫אם‬ - Y, Z ‫ועל‬ X, Z ‫על‬ ‫להסתכל‬ ‫ניתן‬ .(‫השלישי‬ ‫את‬ ‫יודעים‬ - ‫שניים‬ ‫יודעים‬ .(‫אחידה‬ ‫בהתפלגות‬ ‫הן‬ ‫האפשרויות‬ ‫כל‬ ,‫)כלומר‬ ‫האחר‬ ‫מה‬ ‫יודעים‬ ‫לא‬ ⇐ ‫אחד‬ ‫יודעים‬ ‫אם‬ :‫אי-תלות‬ ‫יש‬ ‫בזוגות‬ 4
  • 5.
    ‫בולאניים‬ ‫מעגלים‬ ‫מול‬‫פולינומים‬ 5‫החישובים‬ ‫מורכבות‬ ‫הכללות‬ 4.1 :‫על‬ ‫נדבר‬ Z2-‫ב‬ ‫שלוש‬ ‫מול‬ ‫משתנים‬ ‫שני‬ ‫במקום‬ .(Zp = {0, 1, ..., p − 1} :‫)תזכורת‬ .‫ראשוני‬ ‫הוא‬ p ‫כאשר‬ Zp-‫ב‬ k + 1 ‫מול‬ ‫משתנים‬ k :‫וב"ת‬ ‫אחיד‬ ‫באופן‬ ‫מגרילים‬ x1, . . . , xk ∈ Zp :‫עבור‬ ‫אזי‬ xk+1 = (x1 + · · · + xk) mod p .‫(-יות‬k + 1)-‫ב‬ ‫מלאה‬ ‫תלות‬ ‫יש‬ .‫א‬ .‫בשדה‬ ‫אחיד‬ xk+1 .‫ב‬ .‫-יות‬k-‫ב‬ ‫ב"ת‬ ‫הם‬ x1, . . . , xk+1 :‫המקריים‬ ‫המשתנים‬ ‫כל‬ .‫ג‬ ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ 4.2 :‫אם‬ .(0 ‫כולם‬ ‫)שלא‬ ‫קבועים‬ a1, . . . , ak ∈ Zp .‫וב"ת‬ ‫אחיד‬ ‫באופן‬ ‫מוגרלים‬ x1, . . . , xk ∈ Zp :‫אזי‬ .Zp ‫מעל‬ ‫אחיד‬ ‫מתפלג‬ - xk+1 = a1x1 + · · · + akxk .Pr (xk+1 = v) = 1 p :v ∈ Zp ‫לכל‬ ,‫אחרות‬ ‫במילים‬ ‫בולאניים‬ ‫מעגלים‬ ‫מול‬ ‫פולינומים‬ 5 XOR ‫שער‬ - ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ 5.1 1 = T, 0 = F :‫תזכורת‬ ‫פלט‬ ?>=<89:;∨ OO1 1 1 ?>=<89:;∧ 66llllllllll ?>=<89:;∧ hh‚‚‚‚‚‚‚‚‚‚ ?>=<89:;¬ 33ggggggggggggggggg ?>=<89:;¬ kk‡‡‡‡‡‡‡‡‡‡‡‡‡‡‡‡‡ x1 OO =={{{{ x2 aagggg OO XOR ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ :1 ‫איור‬ .‫מעגלים‬ ‫ללא‬ ‫מכוון‬ ‫גרף‬ :‫בולאני‬ ‫מעגל‬ .0 ‫כניסה‬ ‫דרגת‬ ‫קלטים‬ .0 ‫יציאה‬ ‫דרגת‬ ‫פלטים‬ 5
  • 6.
    ‫בולאניים‬ ‫מעגלים‬ ‫מול‬‫פולינומים‬ 5‫החישובים‬ ‫מורכבות‬ ‫המעגל‬ ‫חיזוק‬ 5.2 .‫וקטן‬ ‫קבוע‬ ,‫ראשוני‬ ‫הוא‬ q ‫כאשר‬ Zq ‫משדה‬ ‫יהיו‬ (0/1)Z2-‫ב‬ ‫להיות‬ ‫במקום‬ ,‫הביניים‬ ‫תוצאות‬ :MOD ‫שער‬ - ‫נוסף‬ ‫מסוג‬ ‫שער‬ ‫ונוסיף‬ MODq (y1, . . . , ym) = { 0 ∑m i=1 yi = 0 1 ∑m i=1 yi ̸= 0 ‫פולינומים‬ 5.3 (‫יחיד‬ ‫)משתנה‬ ‫הגדרה‬ 5.3.1 P (y) = ∑ 1≤i≤d aiyi .d = deg (P (y))-‫ו‬ ad ̸= 0 ‫כאשר‬ ,‫בשדה‬ ‫קבועים‬ ‫הם‬ ‫-ים‬a-‫ה‬ ‫כל‬ ‫כאשר‬ ‫רב-משתנים‬ ‫לפולינום‬ ‫דוגמה‬ 5.3.2 :5.1 ‫דוגמא‬ 2 · y1 deg=1 +3 · (y2) 4 deg=4 +1 · (y1) 3 · (y2) 2 deg=3+2=5 deg = max {1, 4, 5} = 5 :‫היא‬ ‫הפולינום‬ ‫דרגת‬ ‫ולכן‬ ‫נמוכה‬ ‫מדרגה‬ ‫פולינומים‬ ‫ע"י‬ ‫מעגלים‬ ‫קרוב‬ 5.4 ‫מעגלים‬ ‫סדרת‬ 5.4.1 ‫הגדרה‬ ‫הפלט‬ ‫את‬ ‫מניב‬ Cn (x1, . . . , xn) :‫מתקיים‬ x1, . . . , xn ‫קלט‬ ‫לכל‬ ‫אם‬ ‫חישובית‬ ‫בעיה‬ ‫פותרת‬ {Cn} ‫מעגלים‬ ‫סדרת‬ .‫הנכון‬ ‫יעילות‬ .Cn ‫במעגל‬ ‫הצלעות‬ ‫מספר‬ ‫ע"פ‬ {Cn} ‫של‬ ‫היעילות‬ ‫את‬ ‫למדוד‬ ‫מקובל‬ ‫פולינומים‬ ‫סדרת‬ 5.4.2 ‫הגדרה‬ .‫הנכון‬ ‫הפלט‬ ‫את‬ ‫מניב‬ Pn (x1, . . . , xn) x1, . . . , xn ‫קלט‬ ‫לכל‬ ‫אם‬ ‫חישובית‬ ‫בעיה‬ ‫פותרת‬ {Pn} ‫פולינומים‬ ‫סדרת‬ ‫יעילות‬ .deg (Pn) ‫הפולינום‬ ‫כדרגת‬ {Pn} ‫של‬ ‫היעילות‬ ‫את‬ ‫למדוד‬ ‫מקובל‬ ‫משפט‬ ‫השדה‬ ‫)מעל‬ ‫יחסית‬ ‫קטנה‬ ‫מדרגה‬ ‫פולינומים‬ ‫סדרת‬ ‫ע"י‬ ‫לקרב‬ ‫ניתן‬ ‫יחסית‬ ‫קטן‬ s ‫שערים‬ ‫מספר‬ ‫עם‬ cn ‫מעגלים‬ ‫סדרת‬ ‫כל‬ .(‫ראשוני‬ q ‫כאשר‬ ,Zq .Prx1,...,xn [Pn (x1, . . . , xn) ̸= Cn (x1, . . . , xn)] = o (1) ,‫כלומר‬ .‫לאפס‬ ‫שואף‬ ⇐ o (1) :‫למעלה‬ ‫שלנו‬ ‫ובמקרה‬ , f(n) g(n) −−−−→ n→∞ 0 ‫אם‬ f (n) = o (g (n)) :‫תזכורת‬ 6
  • 7.
    ‫בולאניים‬ ‫מעגלים‬ ‫מול‬‫פולינומים‬ 5‫החישובים‬ ‫מורכבות‬ ‫לפולינומים‬ (‫)מעגלים‬ ‫שערים‬ ‫המרת‬ 5.5 ‫פרמה‬ ‫משפט‬ 5.5.1 :(a p) p-‫ל‬ ‫שזר‬ a ‫לכל‬ ‫אזי‬ ,‫ראשוני‬ p ‫אם‬ ap−1 ≡ 1 (mod p) NOT ‫שער‬ 5.5.2 PNOT (y) = 1 − y MOD ‫שער‬ 5.5.3 PMOD (y1, . . . , yn) = ( n∑ i=1 yi )q−1 = { 0 ∑ yi = 0 1 ∑ yi ̸= 0 AND ‫שער‬ 5.5.4 @@@@@@@@@@@@@@@@@@@@@ PAND (y1, . . . , ym) = m∏ i=1 yi = { 1 ∏ yi = 1 0 ∃i (yi) = 0 :‫זאת‬ ‫ובמקום‬ ‫זאת‬ ‫נפסול‬ ‫לכן‬ - (m) ‫עצומה‬ ‫דרגה‬ ‫בעל‬ ‫אבל‬ ‫מדויק‬ PAND (y1, . . . , ym) = 1 − (POR (1 − y1, . . . , 1 − ym)) OR ‫שער‬ 5.5.5 .‫לשגיאה‬ ‫קטן‬ ‫סיכוי‬ ‫כבר‬ ‫יש‬ ‫ולכן‬ ‫הסתברות‬ ‫מכניסים‬ ‫כבר‬ ‫אנחנו‬ OR-‫ה‬ ‫בשער‬ .(‫מדויק‬ ‫)ולא‬ ‫מקורב‬ ‫פתרון‬ ‫פירושו‬ - P :‫נסמן‬ :(5.5.1) ‫פרמה‬ ‫ובמשפט‬ (4.2) ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫בעיקרון‬ ‫נשתמש‬ POR (y1, . . . , ym) = ( m∑ i=1 aiyi )q−1 .‫וב"ת‬ ‫אחיד‬ ‫באופן‬ ‫מוגרלים‬ a1, . . . , am ∈ Zq ‫כאשר‬ :‫יהיה‬ ‫הסופי‬ ‫השער‬ ,‫לבסוף‬ POR (y1, . . . , ym) = POR ( P (1) OR (y1, . . . , ym) , . . . , P (r) OR (y1, . . . , ym) ) 7
  • 8.
    ‫לינאריות‬ ‫בדיקת‬ 7‫החישובים‬‫מורכבות‬ ‫מסכמת‬ ‫טבלה‬ 5.6 Pr (‫)שגיאה‬ deg NOT 0 1 MOD 0 q − 1 OR 1 q q − 1 ‫הגברה‬ ‫לפני‬ 1 qr r (q − 1) ‫הגברה‬ ‫אחרי‬ AND 1 qr r (q − 1) ‫הקירוב‬ ‫משפט‬ 5.7 ‫משפט‬ ‫השדה‬ ‫)מעל‬ {Pn} ‫פולינומים‬ ‫סדרת‬ ‫ע"י‬ ‫לקרב‬ ‫ניתן‬ ,d ‫קבוע‬ ‫בעומק‬ s = 2 O ( n 1 2d ) ‫מגודל‬ {Cn} ‫מעגלים‬ ‫סדרת‬ ‫כל‬ .O ( √ n) - ‫יחסית‬ ‫קטנה‬ ‫מדרגה‬ (‫וקבוע‬ ‫ראשוני‬ q ‫כאשר‬ Zq (‫קירוב‬ ‫)יחס‬ ‫פקטור‬ 6 :‫כרצוננו‬ ‫טוב‬ ‫קירוב‬ ‫לקבל‬ ‫היא‬ ‫מטרה‬ A ‫אלגוריתם‬ ( x ‫קלט‬ , ε ‫דיוק‬ ‫דרישת‬ ) .1 − ε :‫קירוב‬ ‫פקטור‬ - ‫מקסימיזציה‬ ‫בעיית‬ .1 + ε :‫קירוב‬ ‫פקטור‬ - ‫מינימיזציה‬ ‫בעיית‬ Poly ( n, 1 ε ) :‫הריצה‬ ‫זמן‬ .n3 · 2(1 ε ) :‫פולינומי‬ ‫לא‬ ‫ריצה‬ ‫לזמן‬ ‫דוגמה‬ ,n3 · (1 ε )2 :‫פולינומי‬ ‫ריצה‬ ‫לזמן‬ ‫דוגמה‬ ‫לינאריות‬ ‫בדיקת‬ 7 ‫לינאריות‬ ‫ופונקציות‬ ‫בולאניות‬ ‫פונקציות‬ ‫הגדרת‬ 7.1 :‫הבולאניות‬ ‫הפונקציות‬ ‫כל‬ ‫קבוצת‬ ‫זאת‬ Hn Hn = { h h : {0, 1} n → {0, 1} } :‫למשל‬ f : {0, 1} n → {0, 1} f (⃗x) = n∑ i=1 xi .1 ‫אחרת‬ 0 ‫מחזירה‬ ‫היא‬ ‫זוגי‬ ‫הוא‬ ‫בו‬ ‫האחדות‬ ‫מספר‬ ‫ואם‬ {0, 1}-‫מ‬ ‫המורכב‬ n ‫באורך‬ ‫וקטור‬ ‫המקבלת‬ ‫פונקציה‬ ‫זוהי‬ .f ∈ Hn ‫כמובן‬ ‫הבולאניות‬ ‫הפונקציות‬ ‫כמות‬ 7.1.1 .2(2n ) = 4n ‫היא‬ ‫הבולאניות‬ ‫הפונקציות‬ ‫כמות‬ :‫הסבר‬ 2n ‫עבור‬ ‫לכן‬ ,‫לפלט‬ ‫אפשרויות‬ ‫שתי‬ ‫לנו‬ ‫יש‬ ‫אפשרות‬ ‫ולכל‬ ‫קלט‬ ‫לווקטורי‬ ‫אפשרויות‬ 2n ‫לנו‬ ‫יש‬ n ‫באורך‬ ‫וקטור‬ ‫עבור‬ .4n - ‫אפשריות‬ ‫תוצאות‬ 2(2n ) ‫סה"כ‬ ‫לנו‬ ‫יש‬ ‫אפשרויות‬ 8
  • 9.
    ‫לינאריות‬ ‫בדיקת‬ 7‫החישובים‬‫מורכבות‬ ‫לינאריות‬ ‫פונקציות‬ 7.1.2 :Ln ‫של‬ ‫ההגדרה‬ .‫לינאריות‬ ‫גם‬ ‫שהם‬ ‫הבולאניות‬ ‫הפונקציות‬ ‫קבוצת‬ ‫זוהי‬ Ln Ln = { h h ∈ Hn ∧ (h (⃗x) + h (⃗y) = h (⃗x + ⃗y)) } .‫כמובן‬ f (x) ∈ Ln :⃗x + ⃗y ‫של‬ ‫ההגדרה‬ (⃗x + ⃗y) = (x1 + y1, x2 + y2, . . . , xn + yn) ‫הסטטיסטי‬ ‫המרחק‬ 7.2 ‫פונקציות‬ ‫שתי‬ ‫בין‬ ‫הסטטיסטי‬ ‫המרחק‬ 7.2.1 ‫קלטים‬ ‫מגרילים‬ ‫אנחנו‬ :‫הסתברותיים‬ ‫לכלים‬ ‫עוברים‬ ‫אנחנו‬ ‫אזי‬ ,Ω (2n ) :‫עצום‬ ‫הוא‬ f ∈ Hn ‫של‬ ‫הקלטים‬ ‫ומרחב‬ ‫היות‬ .‫תלוי‬ ‫ובלתי‬ ‫אחיד‬ ‫באופן‬ .⃗x ∈ {0, 1} n :‫נגדיר‬ ∆ (f, g) = Pr [f (⃗x) ̸= g (⃗x)] :‫אזי‬ 2n -‫ה‬ ‫מתוך‬ ‫קלטים‬ ‫בשני‬ ‫רק‬ ‫נבדלות‬ (‫מהן‬ ‫כרגע‬ ‫משנה‬ ‫)שלא‬ f, g ∈ Hn ‫הפונקציות‬ ‫כי‬ ‫נניח‬ ∆ (f, g) = Pr [f (⃗x) ̸= g (⃗x)] = 2 2n = 1 2n−1 ‫לינארית‬ ‫לפונקציה‬ ‫סטטיסטי‬ ‫מרחק‬ 7.2.2 .‫לינארית‬ ‫אינה‬ f ∈ Hn ‫הפונקציה‬ ‫כי‬ ‫נניח‬ :‫כעת‬ ∆ (f) = min l∈Ln {∆ (f, l)} ‫לינארית‬ ‫פונקציה‬ ‫לבין‬ f ‫בין‬ ‫הבדל‬ ‫פחות‬ ‫כמה‬ ‫שיש‬ ‫זאת‬ - "‫קרובה‬ ‫"הכי‬ ‫הלינארית‬ ‫הפונקציה‬ ‫את‬ ‫מחפשים‬ ‫אנחנו‬ ,‫כלומר‬ .‫כלשהי‬ ‫המרכזי‬ ‫המשפט‬ 7.3 :‫מתקיים‬ f ∈ Hn ‫פונקציה‬ ‫לכל‬ ε (f) ≤ 3 · ∆ (f) (1) ∆ (f) ≤ 3 · ε (f) (2) .ε (f) < 1 6 ‫כאשר‬ ‫רק‬ ‫מתקיים‬ (2) ‫חלק‬ .‫לינארית‬ ‫לפונקציה‬ ‫סטטיסטית‬ ‫קרבה‬ ‫בין‬ ‫קשר‬ ‫לנו‬ ‫נותן‬ ‫המשפט‬ ‫התפלגות‬ ‫שיש‬ ‫)בהנחה‬ ‫הקלט‬ ‫של‬ ‫דגימות‬ ‫עושים‬ ‫אנחנו‬ ‫אזי‬ ,‫לינארית‬ ‫היא‬ ‫הפונקציה‬ ‫האם‬ ‫לבדוק‬ ‫ניתן‬ ‫תמיד‬ ‫ולא‬ ‫היות‬ .(‫לקלטים‬ ‫אחידה‬ 9
  • 10.
    ‫חישובים‬ ‫מורכבות‬ 8‫החישובים‬‫מורכבות‬ II ‫חלק‬ ‫טיורינג‬ ‫מכונות‬ ‫חישובים‬ ‫מורכבות‬ 8 .‫קוגניטיבית‬ ‫מורכבות‬ ‫על‬ ‫ולא‬ (‫המחשב‬ ‫של‬ ‫)משאבים‬ ‫אלגוריתמית‬ ‫מורכבות‬ ‫על‬ ‫כאן‬ ‫על‬ ‫ידובר‬ ‫אלגוריתם‬ ‫מאפיין‬ ‫מה‬ 8.1 ‫נתונים‬ 8.1.1 (‫)בהתחלה‬ ‫קלט‬ .‫ביניים‬ ‫תוצאת‬ .(‫)בסוף‬ ‫פלט‬ :‫עיקריות‬ ‫תכונות‬ ‫שלוש‬ ‫ישנן‬ ‫כאשר‬ .‫מוסכם‬ ‫קידוד‬ ‫לכולם‬ ‫יש‬ .1 .(‫סופי‬ ‫הוא‬ ‫גם‬ ‫)הקידוד‬ ‫סופי‬ ‫גודל‬ ‫בעל‬ ‫כולם‬ .2 .(‫גודל‬ ‫בכל‬ ‫להיות‬ ‫יכולים‬ ‫אבל‬ ,‫סופי‬ ‫בגודל‬ ‫הם‬ ,‫)כלומר‬ ‫חסום‬ ‫אינו‬ ‫הנתונים‬ ‫גודל‬ .3 ‫חוקים‬ 8.1.2 :‫תכונות‬ ‫כמה‬ ‫גם‬ ‫ישנן‬ (8.1.1 ‫הנתונים‬ ‫עם‬ ‫לעבוד‬ ‫איך‬ ‫)של‬ ‫החוקים‬ ‫מבחינת‬ .(‫דרכים‬ ‫בכמה‬ ‫חוק‬ ‫חוק‬ ‫לפרש‬ ‫ניתן‬ ‫לא‬ ,‫)כלומר‬ .‫חד-משמעיים‬ ‫הם‬ ‫החוקים‬ .‫מופעל‬ ‫חוק‬ ‫איזה‬ ‫ידוע‬ (‫צעד‬ ‫)בכל‬ ‫רגע‬ ‫בכל‬ .‫סופי‬ ‫הוא‬ ‫החוקים‬ ‫מספר‬ .‫החישוב‬ ‫מקומיות‬ :‫הבא‬ ‫באופן‬ ‫עובד‬ ‫חוק‬ ‫כל‬ .‫נתונים‬ Θ (1) ‫קרא‬ .1 .‫עליהם‬ ‫מקומית‬ ‫פעולה‬ ‫עשה‬ .2 .‫אחרים‬ ‫נתונים‬ Θ (1) ‫כתוב‬ .3 10
  • 11.
    ‫חישוב‬ ‫מכונות‬ 9‫החישובים‬‫מורכבות‬ ‫היסודית‬ ‫השאלה‬ 8.2 .‫אותה‬ ‫לפתור‬ ‫שיכול‬ ‫אלגוריתם‬ ‫יש‬ (‫חישובית‬ ‫)בעיה‬ ‫בעיה‬ ‫לכל‬ ‫האם‬ ‫בחישוביות‬ ‫היסודית‬ ‫השאלה‬ .‫נכון‬ ‫פלט‬ ‫סופי‬ ‫בזמן‬ ‫מפיקה‬ ‫קלט‬ ‫שעל‬ (‫חישוב‬ ‫)שיטת‬ ‫אלגוריתם‬ ‫ישנו‬ ,‫כלומר‬ (39 ‫בעמוד‬ i ‫בהוכחה‬ ‫העצירה‬ ‫בעיית‬ ‫את‬ ‫לראות‬ ‫)ניתן‬ !‫לא‬ - (1936) ‫טיורינג‬ ‫ע"פ‬ ‫חישוב‬ ‫מכונות‬ 9 :‫החישוב‬ ‫במכונת‬ ‫נתונים‬ ‫של‬ ‫מקומות‬ ‫שלוש‬ ‫ישנם‬ .‫קלט‬ .1 .‫ביניים‬ ‫תוצאת‬ .2 .‫פלט‬ .3 .‫חסום‬ ‫ולא‬ ‫סופי‬ ‫הוא‬ ‫מאלה‬ ‫אחד‬ ‫כל‬ ‫של‬ ‫הקידוד‬ ‫כאשר‬ ‫קלט‬ ‫סרט‬ △ a b ↑ ‫עבודה‬ ‫סרט‬ △ d c e ↑ ‫פלט‬ ‫סרט‬ △ f g ↑ Σ - ‫וסופי‬ ‫מוסכם‬ ‫מאלף-בית‬ ‫אות‬ ‫תא‬ ‫בכל‬ 9 8 6 7 ‫טיורינג‬ ‫למכונת‬ ‫דוגמה‬ :2 ‫איור‬ ‫החישוב‬ ‫אופן‬ 9.1 .‫סופית‬ Q ‫מצבים‬ ‫קבוצת‬ ‫ישנה‬ :‫הבא‬ ‫באופן‬ ‫מתבצע‬ ‫חישוב‬ ‫מעברים‬ ‫פונקציית‬f (q, σI, σW , σO) = (q′ , σI, dI, σ′ W , dW , σW , dO) .(‫בהתאמה‬ .‫פלט‬ ,‫עבודה‬ ,‫)קלט‬ Input, Work, Output :‫המכונה‬ ‫סרטי‬ ‫שלושת‬ ‫את‬ ‫מסמלים‬ - I, W, O ‫כאשר‬ .σ ∈ Σ, d ∈ {L, S, R} = {Left, Stay, Right} .‫הבא‬ ‫המצב‬ = q′ .(↑-‫ב‬ ‫מסומן‬ ‫זה‬ ‫)אצלנו‬ ‫קורא‬ ‫ראש‬ ‫סרט‬ ‫לכל‬ ‫חישוב‬ ‫מתבצע‬ ‫כיצד‬ 9.1.1 ‫אתחול‬ . ‫ואחריו‬ ‫קלט‬ ‫רשום‬ - ‫קלט‬ ‫סרט‬ . - ‫ריקים‬ - ‫עבודה/פלט‬ ‫סרט‬ .(‫)בהתחלה‬ ‫בקצה‬ ‫הסרטים‬ ‫בכל‬ ‫קורא‬ ‫ראש‬ .‫באתחול‬ ‫המכונה‬ ‫נמצאת‬ ‫ובו‬ qstart ∈ Q ‫מצב‬ ‫יש‬ ‫החישוב‬ ‫עצירת‬ .‫החישוב‬ ‫לעצירה‬ ‫גורמת‬ ‫אליהם‬ ‫שהגעה‬ Q′ ⊆ Q ‫מצבים‬ ‫של‬ ‫תת-קבוצה‬ ‫יש‬ .‫כפלט‬ ‫שנחשב‬ ‫מה‬ ‫זה‬ - ‫העצירה‬ ‫ברגע‬ ‫הפלט‬ ‫בסרט‬ ‫שרשום‬ ‫מה‬ 11
  • 12.
    ‫אוניברסליות‬ 10‫החישובים‬ ‫מורכבות‬ ‫החישוב‬‫פלט‬ ‫סימון‬ 9.1.2 :‫מסומן‬ ‫החישוב‬ ‫פלט‬ M (x) [x ‫קלט‬ ‫עם‬ M ‫]מכונה‬ .M (x) = ∞ :‫מסמנים‬ ‫צעדים‬ ‫אינסוף‬ ‫מבצע‬ ‫חישוב‬ ‫אם‬ .‫בלבד‬ ‫לקריאה‬ - ‫הקלט‬ ‫סרט‬ .‫בלבד‬ ‫לכתיבה‬ - ‫הפלט‬ ‫סרט‬ ‫טיורינג‬ ‫מכונת‬ ‫של‬ ‫וריאנטים‬ 9.2 ‫מכילה‬ ‫היא‬ ‫מה‬ ‫המכונה‬ ‫וריאנט‬ ‫סופי‬ Σ ,‫פלט‬ ‫סרט‬ ,‫עבודה‬ ‫סרט‬ ,‫קלט‬ ‫סרט‬ ‫סטנדרטית‬ ‫טיורינג‬ ‫מכונת‬ ‫עבודה‬ ‫-סרטי‬k ‫שיש‬ ‫רק‬ ‫סטנדרטית‬ ‫טיורינג‬ ‫מכונת‬ ‫כמו‬ ‫דבר‬ ‫אותו‬ ‫מחוזקת‬ ‫טיורינג‬ ‫מכונת‬ ‫סופי‬ Σ ,‫יחיד‬ ‫סרט‬ ‫מוחלשת‬ ‫טיורינג‬ ‫מכונת‬ ‫בינארי‬ Σ ,‫יחיד‬ ‫סרט‬ ‫מאוד‬ ‫מוחלשת‬ ‫טיורינג‬ ‫מכונת‬ ..‫כך‬ ‫נקרא‬ RAM ‫עם‬ ‫למ"ט‬ ‫לכן‬ ‫במ"ט‬ ‫שאין‬ ‫מה‬ ‫אקראית‬ ‫גישה‬ ‫יש‬ ‫מודרני‬ ‫למחשב‬ RAM ‫מחוזקת‬ ‫טיורינג‬ ‫מכונת‬ ‫המרכזי‬ ‫המשפט‬ 9.2.1 :9.1 ‫משפט‬ .‫שקולים‬ ‫המודלים‬ ‫כל‬ .M′ (x) = M (x) :x ‫קלט‬ ‫שלכל‬ ‫כך‬ ‫בינארי‬ Σ ‫יחיד‬ ‫סרט‬ ‫עם‬ ‫מוחלשת‬ M′ ‫מ"ט‬ ‫יש‬ M ‫מודרני‬ ‫מחשב‬ ‫לכל‬ ‫יעילה‬ ‫סימולציה‬ 9.2.2 :‫קבוע‬ c ‫כאשר‬ Time (M′ (x)) ≤ (Time (M (x))) c ‫סימולציה‬ ‫זמן‬ 9.2.3 :‫למכונה‬ ‫ממכונה‬ ‫מעבר‬ ‫בין‬ ‫יש‬ ‫האטה‬ ‫זמן‬ ‫כמה‬ ‫מ"ט‬ ‫מוחלשת‬ ‫מאוד‬ ‫מ"ט‬ ‫מוחלשת‬ O(1) kk ‫מ"ט‬ ‫מחוזקת‬ O(n2 ) kk ‫מ"ט‬ ‫מחוזקת‬ RAM O(n2 ) kk ‫מחשב‬ ‫מודרני‬ O(1) kk ‫אוניברסליות‬ 10 .‫נפרדת‬ ‫מכונה‬ ‫היה‬ ‫אלגוריתם‬ ‫כל‬ ‫טיורינג‬ ‫עד‬ .‫אוניברסלית‬ ‫מכונה‬ ‫היא‬ ‫טיורנג‬ ‫מכונת‬ 12
  • 13.
    ‫חישובית‬ ‫מורכבות‬ 12‫החישובים‬‫מורכבות‬ :10.1 ‫משפט‬ :‫מקיים‬ M ‫מ"ט‬ ‫של‬ ‫קידוד‬ M ‫כאשר‬ - ⟨M⟩ , x - ‫קלט‬ ‫שכל‬ MU ‫אוניברסלית‬ ‫מכונה‬ ‫יש‬ .MU (⟨M⟩ , x) = M (x) :x ‫קלט‬ ‫לכל‬ :‫נכונות‬ .T = Time (M (x)) ‫כאשר‬ Time (MU (⟨M⟩ , x)) ≤ Θ (T · ln T) :‫יעילות‬ ‫אלגוריתם‬ ‫של‬ ‫יעילות‬ 11 :‫אם‬ ‫יעיל‬ ‫יקרא‬ M ‫אלגוריתם‬ max |x|=n (Time (M (x))) = Θ (nc ) .‫קבוע‬ c ‫כאשר‬ .‫הקלט‬ ‫באורך‬ ‫כתלות‬ ‫בזמן‬ ‫יעילות‬ ‫מודדים‬ ‫שאנחנו‬ ‫הוא‬ ‫הרעיון‬ .‫פולינומי‬ ‫בזמן‬ ‫רץ‬ ‫הוא‬ ‫אם‬ ,‫יעיל‬ ‫הוא‬ ‫אלגוריתם‬ ,‫כלומר‬ .‫סביר‬ ‫בזמן‬ ‫מודרני‬ ‫מחשב‬ ‫על‬ ‫רץ‬ - n · log n, n2 , n3 - ‫יעיל‬ .‫יעיל‬ ‫לא‬ ‫בזמן‬ ‫מודרני‬ ‫מחשב‬ ‫על‬ ‫רץ‬ - 2n , n! - ‫יעיל‬ ‫לא‬ III ‫חלק‬ (‫)חזרה‬ ‫חישוביות‬ :‫הבסיסית‬ ‫מהשאלה‬ ‫נתחיל‬ ?‫כריעות‬ ‫לא‬ ‫בעיות‬ ‫יש‬ ‫האם‬ .HALT -‫העצירה‬ ‫בעיית‬ ‫את‬ ‫יש‬ - ‫שכן‬ ‫היא‬ ‫התשובה‬ ‫כריעות‬ ‫לא‬ •HALT ‫כריעות‬ ‫חישובית‬ ‫מורכבות‬ 12 ?(‫קלות‬ ‫שכולן‬ ‫)או‬ ‫קשות‬ ‫כריעות‬ ‫בעיות‬ ‫ישנן‬ ‫האם‬ "‫הבאה‬ ‫השאלה‬ ‫נשאלת‬ ‫כעת‬ ,‫כלומר‬ ‫כריע‬ ‫לא‬ ‫כריע‬ ‫לא‬ :‫או‬ ‫קשה‬ ‫כריע‬ ‫קל‬ ‫כריע‬ ‫קל‬ ‫כריע‬ .‫פולינומי‬ ‫בזמן‬ ‫פתיר‬ ‫קל‬ .‫פולינומי‬ ‫סופר‬ ‫בזמן‬ ‫אלגוריתם‬ ‫כל‬ ‫קשה‬ ‫ההיררכיה‬ ‫משפט‬ 12.1 :‫הגדרה‬ :‫הבאה‬ ‫הפונקציה‬ ‫את‬ ‫נגדיר‬ ,T : N → N :‫בהינתן‬ DTIME (T) = Time (T) = { L Θ (T (n)) ‫בזמן‬ L ‫את‬ ‫שמכריעה‬ M ‫מ"ט‬ ‫יש‬ } .(n ‫)או‬ .‫הקלט‬ ‫אורך‬ ‫הוא‬ L ‫כאשר‬ :‫למשל‬ L = { G ‫קשיר‬ ‫גרף‬ G } ∈ Time (n) :Time ‫של‬ ‫מחלקות‬ ‫כמה‬ ‫על‬ ‫נסתכל‬ ‫כעת‬ 13
  • 14.
    ‫טבעית‬ ‫בעיות‬ 13‫החישובים‬‫מורכבות‬ Time (2n ) P Time ( n3 ) Time ( n2 ) Time (n) § ¦ ¤ ¥ # " ! 5 4 2 3 ' & $ % 9 8 6 7 :‫היא‬ ‫שלה‬ ‫וההגדרה‬ ‫הפולינומית‬ ‫המחלקה‬ ‫היא‬ P P = ∪ k∈N DTIME ( nk ) (.‫הריצה‬ ‫כדי‬ ‫תוך‬ ‫שקורה‬ ‫מה‬ ‫אלא‬ ‫הפלט/קלט‬ ‫לא‬ ‫היא‬ ‫הבעיה‬ ‫לכן‬ .‫ביט‬ ‫בד"כ‬ ‫הוא‬ ‫הפלט‬ ,‫הכרעה‬ ‫בבעיית‬ ‫ומדובר‬ ‫)היות‬ :12.1 ‫משפט‬ .(‫)סבירות‬ T1, T2 : N → N ‫לכל‬ :T1 ‫בזמן‬ ‫להכריע‬ ‫ניתן‬ ‫לא‬ ‫אבל‬ T2 ‫בזמן‬ ‫להכריע‬ ‫שניתן‬ ‫בעיות‬ ‫יש‬ ‫אזי‬ T1 ln T1 ≪ T2 ‫אם‬ ∃L ∈ DTIME (T2) DTIME (T1) .40 ‫בעמוד‬ ‫נמצאת‬ 1 ‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬ ‫כריעות‬ ‫אינן‬ ‫)ובפרט‬ Θ (2n )-‫ב‬ ‫כריעות‬ ‫אינן‬ ‫אבל‬ Θ (3n ) :‫בזמן‬ ‫שכריעות‬ ‫בעיות‬ ‫יש‬ ‫אזי‬ :T1 = 2n , T2 = 3n :‫למשל‬ .(‫פולינומי‬ ‫בזמן‬ ‫טבעית‬ ‫בעיות‬ 13 ?‫קשות‬ (‫)מעניינות‬ ‫טבעיות‬ ‫בעיות‬ ‫ישנן‬ ‫אם‬ ‫השאלה‬ ?‫טבעית‬ ‫בעיה‬ ‫נגדיר‬ ‫כיצד‬ 13.1 .S (‫השאלה‬ ‫על‬ ‫ְעונה‬) ‫חוקי‬ ‫פתרון‬ ‫למצוא‬ ‫צריך‬ ,‫קלט‬ ‫בהינתן‬ ,‫כלומר‬ ,‫חיפוש‬ ‫בבעיות‬ ‫נתמקד‬ ‫טבעית‬ ‫בעיה‬ ‫להגדיר‬ ‫כדי‬ ?‫טבעית‬ ‫לא‬ ‫חיפוש‬ ‫בעיית‬ ‫נגדיר‬ ‫איך‬ 13.2 .x ‫לקלט‬ ‫ביחס‬ ‫חוקי‬ ‫פתרון‬ S ‫האם‬ ,‫ביעילות‬ ‫לבדוק‬ ‫ניתן‬ ‫לא‬ ,S ‫פתרון‬ ‫הצעת‬ ‫בהינתן‬ ‫אפילו‬ :‫הבא‬ ‫הדבר‬ ‫מתקיים‬ ‫אם‬ ‫טבעית‬ ‫נקראת‬ ‫חיפוש‬ ‫בעיית‬ ,‫אחרות‬ ‫במילים‬ .x ‫לקלט‬ ‫ביחס‬ ‫חוקי‬ ‫פתרון‬ S ‫האם‬ ‫לבדוק‬ ‫ניתן‬ ,(‫פתרון‬ ‫)הצעת‬ S ‫בהינתן‬ :13.1 ‫דוגמא‬ ‫כלשהו‬ ‫מספר‬ - n ,‫מספרים‬ ‫של‬ A ‫קבוצה‬ ‫לנו‬ ‫נתונה‬ ‫שבה‬ (SUBSET-SUM) ‫הסכום‬ ‫בעיית‬ ‫את‬ ‫למשל‬ ‫ניקח‬ .‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬1 14
  • 15.
    NP ‫המחלקה‬ 14‫החישובים‬‫מורכבות‬ :‫שיתקיים‬ ‫כך‬ S ⊆ A ‫תת-קבוצה‬ ‫קיימת‬ ‫האם‬ :‫היא‬ ‫והשאלה‬ |S| ∑ i=0 Si = n ?n ‫הוא‬ ‫אבריה‬ ‫שסכום‬ (S) A ‫של‬ ‫תת-קבוצה‬ ‫קיימת‬ ‫האם‬ - ‫אחרות‬ ‫במילים‬ ‫או‬ .A ‫של‬ ‫תת-קבוצה‬ ‫זוהי‬ S-‫ו‬ ,n ‫והחסם‬ (A) ‫הקבוצה‬ ‫זאת‬ x ‫כאן‬ ‫כלומר‬ :13.2 ‫דוגמא‬ ‫ליטרלים‬ k ‫יש‬ ‫שלו‬ ‫פסוקית‬ ‫שבכל‬ CNF ‫פסוק‬ ‫לנו‬ ‫נתון‬ ‫שבה‬ ‫בעיה‬ .k − SAT-‫ה‬ ‫בעיית‬ ‫היא‬ ‫נוספת‬ ‫דוגמה‬ :‫למשל‬ .(‫שלילתם‬ ‫או‬ ‫)משתנים‬ C = ∧  α1 ∨ · · · ∨ αk ‫ליטרלים‬ k   .αi ∈ {x1, . . . xn, x1, . . . , xn} :‫מתקיים‬ 1 ≤ i ≤ k ‫לכל‬ ‫כאשר‬ .‫אמת‬ ‫הערך‬ ‫את‬ ‫תתן‬ C ‫)כלומר‬ C = T-‫ש‬ ‫כך‬ - xi ∈ {T, F} :i ‫לכל‬ ,‫כלומר‬ ,‫השמה‬ ‫ישנה‬ ‫האם‬ ‫היא‬ ‫השאלה‬ .(C ‫את‬ ‫תספק‬ ‫ההשמה‬ .‫השמה‬ ‫תהיה‬ S-‫ו‬ ,(φ ‫הפסוקית‬ ‫של‬ ‫קידוד‬ ‫שזה‬ ‫בגלל‬ ‫זה‬ ⟨⟩-‫)ה‬ ⟨φ⟩-‫ב‬ ‫שנסמנה‬ ‫הפסוקית‬ ‫תהיה‬ x ‫כאן‬ ‫אזי‬ .‫טבעית‬ ‫שלה‬ ‫החיפוש‬ ‫גרסת‬ ‫אם‬ ‫טבעית‬ ‫נקראת‬ ‫הכרעה‬ ‫בעיית‬ :‫ביעילות‬ ‫לבדוק‬ ‫ניתן‬ :(‫פתרון‬ - S ,‫קלט‬ - x) ‫טיורינג‬ ‫מכונת‬ ‫יש‬ M (x, S) = { Accept x − ‫ל‬ ‫ביחס‬ ‫חוקי‬ S Reject ‫אחרת‬ NP ‫המחלקה‬ 14 :‫דברים‬ ‫שלושה‬ ‫לקיים‬ ‫צריכה‬ ‫היא‬ ,L ∈ NP ‫כלומר‬ ,NP ‫למחלקה‬ ‫שייכת‬ ‫תהיה‬ L ‫ששפה‬ ‫בשביל‬ ‫תקבל‬ ‫היא‬ ‫אם‬ ‫אמת‬ ‫תחזיר‬ ,‫השפה‬ ‫את‬ ‫שמכריעה‬ M ‫)המכונה‬ L ‫בשפה‬ ‫נמצא‬ x ‫הקלט‬ ,‫כלומר‬ ,x ∈ L ‫אם‬ ‫שלמות‬ :(‫כקלט‬ x ‫את‬ ∃S ⇒ M (x, S) = Accept :‫אזי‬ ,x /∈ L ‫אם‬ ‫נאותות‬ ∀S ⇒ M (x, S) = Reject :‫קבוע‬ c, d, f < 0 ‫עבור‬ ‫יעילות‬ Time (M (x, S)) ≤ Θ (|x| c ) :‫נדרוש‬ ,‫הרבה‬ ‫מאיתנו‬ ‫יידרש‬ ‫לא‬ ‫הפתרון‬ ‫שגם‬ ‫כדי‬ ‫אבל‬ Time (M (x, S)) ≤ Θ ( (|x| + |S|) d ) .|S| ≤ Θ ( |x| f ) :‫הוא‬ ‫שלהן‬ ‫שהאורך‬ ‫פתרונות‬ ‫על‬ ‫רק‬ (‫כימות‬ ‫נעשה‬ ‫)או‬ ‫נדרוש‬ ‫לכן‬ 15
  • 16.
    ‫פולינומית‬ ‫רדוקציה‬ -(Karp) ‫קארפ‬ ‫רדוקציית‬ 15‫החישובים‬ ‫מורכבות‬ :1 ‫הסבר‬ ‫קיים‬ x ∈ L ‫אם‬ ‫אזי‬ ,S ‫פתרון‬ ‫והצעת‬ x ‫קלט‬ ‫מקבלת‬ ‫והיא‬ L ‫השפה‬ ‫את‬ ‫שמכריעה‬ M ‫מכונה‬ ‫לנו‬ ‫ונתונה‬ ‫נניח‬ .‫אמת‬ ‫תחזיר‬ ‫המכונה‬ x ‫את‬ ‫נכניס‬ ‫אם‬ ‫שבו‬ (‫לפחות‬ ‫)אחד‬ ‫חוקי‬ ‫פתרון‬ .‫מהשפה‬ ‫חלק‬ ‫לא‬ ‫הוא‬ x ‫כי‬ ‫אותו‬ ‫תדחה‬ ‫תמיד‬ ‫המכונה‬ - ‫נקבל‬ S ‫פתרון‬ ‫איזה‬ ‫משנה‬ ‫לא‬ ‫אזי‬ x /∈ L ‫אם‬ ,‫שני‬ ‫מצד‬ ,(‫מהשפה‬ ‫חלק‬ ‫הוא‬ ‫)כי‬ ‫אמת‬ ‫עבורו‬ ‫שיחזיר‬ ‫פתרון‬ ‫לקבל‬ ‫לדעת‬ ‫צריכה‬ ‫המכונה‬ - x ∈ L ‫אם‬ ,‫אחד‬ ‫מצד‬ ,‫כלומר‬ .(....‫אותה‬ "‫"לרמות‬ ‫ניתן‬ ‫יהיה‬ ‫)שלא‬ x /∈ L- ‫במידה‬ ‫פתרון‬ ‫כל‬ ‫לדחות‬ ‫לדעת‬ ‫צריכה‬ ‫גם‬ ‫היא‬ ‫שני‬ ‫מצד‬ .‫הכרחיות‬ ‫אלו‬ ‫תכונות‬ ‫שתי‬ ‫לכן‬ ‫המחשב‬ ‫במדעי‬ ‫המרכזית‬ ‫הבעיה‬ 14.1 ?‫קלה‬ ‫היא‬ ‫טבעית‬ ‫בעיה‬ ‫שכל‬ ‫או‬ ?‫קשות‬ ‫טבעית‬ ‫בעיות‬ ‫ישנן‬ ‫האם‬ ‫היא‬ ‫השאלה‬ ‫טבעיות‬ NP ‫קשות‬ ‫טבעיות‬ P ‫קלות‬ :‫או‬ P = NP ‫קלות‬ P NP P = NP ‫מייצגת‬ ‫בעיה‬ 14.2 .‫מייצגת‬ ‫בעיה‬ ,‫כלומר‬ ,‫נציג‬ (P, NP, ...) ‫מחלקה‬ ‫לכל‬ ‫למצוא‬ ‫הוא‬ ‫כאן‬ ‫הניסיון‬ :‫מייצגת‬ ‫תהיה‬ ‫שהיא‬ ‫כדי‬ ‫הדרישות‬ ‫אלו‬ C ‫מהמחלקה‬ L ‫שפה‬ ‫עבור‬ .L ∈ C .1 .C-‫ב‬ 2 ‫קשה‬ ‫הכי‬ L .2 :‫לזכור‬ ‫כדאי‬ .‫קשה‬ C ⇐ ‫קשות‬ ‫בעיות‬ C-‫ב‬ ‫⇐יש‬ ‫קשה‬ L ‫אם‬ .‫קלה‬ C ⇐ ‫קלות‬ C-‫ב‬ ‫הבעיות‬ ‫כל‬ ⇐ ‫קלה‬ L ‫אם‬ ?"‫קשה‬ ‫"הכי‬ ‫נגדיר‬ ‫איך‬ 14.2.1 .L′ ‫כמו‬ ‫לפחות‬ ‫קשה‬ L ‫יתקיים‬ L′ ∈ C ‫לכל‬ :14.1 ‫הגדרה‬ .L′ ‫להכרעת‬ ‫יעיל‬ ‫לאלגוריתם‬ ‫להסב‬ ‫ניתן‬ L ‫להכרעת‬ ‫יעיל‬ A ‫אלגוריתם‬ ‫כל‬ ‫פולינומית‬ ‫רדוקציה‬ - (Karp) ‫קארפ‬ ‫רדוקציית‬ 15 .‫בתשובה‬ ‫לגעת‬ ‫בלי‬ L-‫ל‬ L′ ‫של‬ ‫מקלט‬ ‫אחת‬ ‫שאילתה‬ ‫לבצע‬ ‫אפשרות‬ ‫לנו‬ ‫יש‬ ‫שבה‬ L-‫ל‬ L′ -‫מ‬ ‫רדוקציה‬ ‫זוהי‬ L-‫ל‬ ‫כקלט‬ ‫שולחים‬ ‫שאותה‬ f (x) ‫ופונקציה‬ L′ -‫ל‬ ‫כקלט‬ ‫אותו‬ ‫ששולחים‬ x ‫לנו‬ ‫יש‬ ‫כלומר‬ :‫מתקיימים‬ ‫הבאים‬ ‫התנאים‬ ‫שני‬ ‫כאשר‬ .x ∈ L′ ⇐⇒ f (x) ∈ L .‫א‬ .‫פולינומי‬ ‫בזמן‬ ‫חשיבה‬ ‫הפונקציה‬ ‫כלומר‬ .(‫קבוע‬ c ‫)כאשר‬ Time (f (x)) = Θ (|x| c ) .‫ב‬ .L′ ≤p L :‫הבא‬ ‫באופן‬ ‫הרדוקציה‬ ‫את‬ ‫מסמנים‬ .‫יותר‬ ‫גדול‬ ‫ריצה‬ ‫זמן‬ = ‫קושי‬ ‫יותר‬ ,‫כלומר‬ ,‫הריצה‬ ‫זמן‬ ‫מבחינת‬ ‫לקושי‬ ‫הכוונה‬2 16
  • 17.
    ‫פולינומית‬ ‫רדוקציה‬ -(Karp) ‫קארפ‬ ‫רדוקציית‬ 15‫החישובים‬ ‫מורכבות‬ :15.1 ‫דוגמא‬ :‫הבאות‬ ‫השפות‬ ‫שתי‬ ‫את‬ ‫ניקח‬ .A2 = { x x 2 ∈ N } ,A1 = { x ‫ראשוני‬ x, x ≥ 3 } .‫הזוגיים‬ ‫המספרים‬ ‫כל‬ = A2-‫ו‬ ,3-‫מ‬ ‫הגדולים‬ ‫הראשוניים‬ ‫המספרים‬ ‫כל‬ = A1 :‫הבאה‬ ‫הרדוקציה‬ ‫להיות‬ ‫יכולה‬ A1 ≤p A2 ,‫אזי‬ .x ∈ N :‫קלט‬ .f (x) ∈ N :‫פלט‬ .x ‫את‬ ‫קרא‬ .‫א‬ .3-‫מ‬ ‫וגדול‬ ‫ראשוני‬ x ‫האם‬ ‫בדוק‬ .‫ב‬ .x + 1 ‫את‬ ‫החזר‬ :‫כן‬ ‫אם‬ 1. .x ‫את‬ ‫החזר‬ :‫אחרת‬ 2. :‫הבאה‬ ‫הפונקציה‬ ‫זאת‬ ‫כאן‬ ‫לנו‬ ‫שיש‬ ‫מה‬ ‫כי‬ ‫לב‬ ‫נשים‬ f (x) = { x + 1 ‫ראשוני‬ x ≥ 3 x ‫אחרת‬ .f (x) = 18 ∈ A2-‫ו‬ x = 17 ∈ A1 :‫ואכן‬ f (x) = 18 ‫אזי‬ x = 17 ‫למשל‬ ‫ניקח‬ ‫ואם‬ .f (x) = 27 /∈ A2-‫ו‬ x = 27 /∈ A1 ‫אזי‬ x = 27 ‫ניקח‬ ‫אם‬ :‫זאת‬ ‫ולעומת‬ .(‫פולינומי‬ ‫בזמן‬ ‫חשיבה‬ f-‫ש‬ ‫)וכמובן‬ ‫בדוגמה‬ ‫שיש‬ ‫)מה‬ ‫אחרת‬ ‫לשפה‬ ‫אותה‬ ‫לנו‬ ‫מתרגמת‬ ‫רק‬ ‫אלא‬ ‫בעיה‬ ‫לנו‬ ‫פותרת‬ ‫אינה‬ ‫שהיא‬ - ‫הרדוקציה‬ ‫לגבי‬ ‫לזכור‬ ‫כדאי‬ ‫ברדוקציות‬ ,‫הבעיות‬ ‫שתי‬ ‫את‬ ‫לפתור‬ ‫שניתן‬ ‫כמובן‬ ,‫הרעיון‬ ‫את‬ ‫להמחיש‬ ‫יותר‬ ‫שבאה‬ ‫פשוטה‬ ‫מאוד‬ ‫דוגמה‬ ‫זאת‬ 15.1 ‫הפלט‬ ‫על‬ ‫תעבוד‬ ‫והפונקציה‬ ‫לפתרון‬ ‫כבדיקה‬ "‫ב"עד‬ ‫נשתמש‬ ‫ולכן‬ ,‫הבעיה‬ ‫את‬ ‫לפתור‬ ‫איך‬ ‫נדע‬ ‫תמיד‬ ‫לא‬ ‫יותר‬ ‫מתקדמות‬ .(13.2-‫ב‬ ‫שהוסבר‬ ‫כפי‬ ,‫למאמת‬ ‫העד‬ ‫מהכנסת‬ ‫שיוחזר‬ :‫הבא‬ ‫הדבר‬ ‫את‬ ‫בעצם‬ ‫זה‬ ‫לנו‬ ‫שיש‬ ‫מה‬ ,‫לכן‬ L′ x• (L′ )C x• Lf(x) LCf(x) %% 99 ‫הפולינומית‬ ‫הרדוקציה‬ ‫פעולת‬ :3 ‫איור‬ ‫מעבירה‬ ‫רק‬ ‫הרדוקציה‬ .‫בשפה‬ ‫אינו‬ ‫שהוא‬ ‫או‬ ‫בשפה‬ ‫שהוא‬ ‫או‬ (x) ‫קלט‬ ‫כל‬ ‫כאשר‬ ,‫שיש‬ ‫הקלטים‬ ‫כל‬ ‫את‬ ‫מסמל‬ ‫עיגול‬ ‫כל‬ .‫אותה‬ ‫פותרת‬ ‫לא‬ ‫אבל‬ ‫לשנייה‬ ‫אחת‬ ‫מבעיה‬ ‫אותנו‬ .f (x) /∈ L2 ‫בהכרח‬ ‫אזי‬ x /∈ L1 ‫אם‬ ‫אזי‬ ,L1 ≤p L2 ‫רדוקציה‬ ‫לנו‬ ‫יש‬ ‫אם‬ .‫ועל‬ ‫חח"ע‬ ‫בהכרח‬ ‫אינן‬ ‫אך‬ ‫ההפרדה‬ ‫על‬ ‫שומרות‬ (‫)הרדוקציות‬ ‫הפונקציות‬ ‫כי‬ ‫לזכור‬ ‫חשוב‬ ‫-שלמה‬C ‫שפה‬ 15.1 :15.1 ‫הגדרה‬ :‫מתקיים‬ L ∈ C ‫לכל‬ ‫אם‬ ,(C ‫סיבוכיות‬ ‫מחלקת‬ ‫עבור‬ ‫)קשה‬ ‫-קשה‬C ‫הינה‬ L L ≤p L 17
  • 18.
    ‫ואופטימיזציה‬ ‫חיפוש‬ ,‫הכרעה‬‫של‬ ‫גרסאות‬ ‫בין‬ ‫שקילות‬ 16‫החישובים‬ ‫מורכבות‬ .‫-שלמה‬C ‫נקראת‬ ‫היא‬ ‫אזי‬ L ∈ C ‫אם‬ :‫אזי‬ ,(‫-שלמה‬NP ‫הינה‬ L ,‫)כלומר‬ L ∈ NPC ‫תהי‬ .NP P ‫קשה‬ ‫מחלקה‬ NP ‫אז‬ L /∈ P ,‫כלומר‬ ,"‫"קשה‬ L ‫אם‬ .‫א‬ .NP ⊆ P ‫קלה‬ ‫מחלקה‬ NP ‫אז‬ ,L ∈ P ,‫כלומר‬ ,"‫"קלה‬ L ‫אם‬ .‫ב‬ ‫ואופטימיזציה‬ ‫חיפוש‬ ,‫הכרעה‬ ‫של‬ ‫גרסאות‬ ‫בין‬ ‫שקילות‬ 16 .‫האופטימיזציה‬ ‫גרסת‬ ‫את‬ ‫שמגדירה‬ ‫קלה‬ ‫ערך‬ ‫פונקציית‬ ‫יש‬ Karp ‫של‬ ‫הבעיות‬ 22 ‫ובפרט‬ ‫שלמות‬ NP-‫ה‬ ‫הבעיות‬ ‫למרבית‬ :‫הגדרה‬ ‫מעצם‬ ‫הכרעה‬ ‫גרסת‬ ≤ ‫חיפוש‬ ‫גרסת‬ ≤ ‫אופטימיזציה‬ ‫גרסת‬ .‫יעיל‬ ‫חישוב‬ ‫כדי‬ ‫עד‬ ‫שקולות‬ ‫כולם‬ ‫למעשה‬ 3 − SAT ‫דוגמת‬ 16.1 :‫מצבים‬ ‫שני‬ ‫רק‬ ‫ישנם‬ 3 − SAT ‫עבור‬ .‫קשות‬ ‫שהן‬ ‫או‬ ‫קלות‬ ‫הגרסאות‬ ‫ששלושת‬ ‫או‬ ‫שקילות‬ ‫דוגמת‬ 16.1.1 .‫החיפוש‬ ‫לגרסת‬ ‫יעיל‬ ‫אלגוריתם‬ ‫יש‬ NP-‫ב‬ ‫בעיה‬ ‫לכל‬ ‫אזי‬ P = NP ‫אם‬ :‫האלגוריתם‬ .‫החיפוש‬ ‫להכרעת‬ B ‫יעיל‬ ‫אלגוריתם‬ ‫נראה‬ 3 SAT ‫להכרעת‬ ‫יעיל‬ A ‫אלגוריתם‬ ‫בהינתן‬ φ (x1, . . . , xn) :‫קלט‬ ."‫ספיקה‬ ‫לא‬ φ"‫ש‬ ‫ומכריז‬ ‫עוצר‬ ‫החיפוש‬ ‫אלגוריתם‬ ‫אזי‬ ‫ספיקה‬ ‫לא‬ φ-‫ש‬ ‫קובע‬ A ‫אם‬ .‫א‬ :‫אחרת‬ .‫ב‬ :n ‫עד‬ 1-‫מ‬ ‫החל‬ i ‫משתנה‬ ‫לכל‬ (1) -‫ש‬ ‫סופית‬ ‫נקבע‬ ‫אזי‬ ‫ספיקה‬ ‫נוסחה‬ φ (x1 ← v1, . . . , xi ← T, . . . xn ← vn) :‫כי‬ ‫קובע‬ A ‫אם‬ .i .‫הבא‬ ‫למשתנה‬ ‫ונמשיך‬ xi = T .xi = F-‫ש‬ ‫סופית‬ ‫נקבע‬ :‫אחרת‬ .ii :‫האלגוריתם‬ ‫ריצת‬ ‫זמן‬ Θ (n · Time (A)) .P-‫ב‬ ‫הנ"ל‬ ‫האלגוריתם‬ ‫גם‬ ‫אזי‬ A ∈ P-‫ש‬ ‫ובכלל‬ :2 ‫הסבר‬ ‫השמה‬ ‫ישנה‬ ‫כי‬ ‫שקבע‬ A ‫אלגוריתם‬ ‫באותו‬ ‫השתמשנו‬ ,‫כלומר‬ ,‫ספיקה‬ ‫היא‬ φ ‫כי‬ ‫לנו‬ ‫נאמר‬ ‫באלגוריתם‬ ‫השני‬ ‫בשלב‬ ‫עוברים‬ ‫אנחנו‬ ‫ולכן‬ .‫אותה‬ ‫תספק‬ φ-‫ל‬ ‫שההשמה‬ ‫כך‬ T/F ‫בולאנית‬ ‫השמה‬ ‫קיימת‬ xi ‫לכל‬ ,‫כלומר‬ ,φ-‫ל‬ ‫מספקת‬ ‫ערך‬ ‫אותו‬ ‫את‬ ‫נציב‬ ‫)כאשר‬ ‫מספקת‬ ‫השמה‬ ‫תתן‬ F-‫ש‬ ‫בוודאי‬ ‫אז‬ ‫מספקת‬ ‫השמה‬ ‫תתן‬ ‫לא‬ T ‫ואם‬ ‫משתנה‬ ‫משתנה‬ .φ-‫ל‬ ‫מספקת‬ ‫השמה‬ ‫אין‬ ‫כי‬ ‫מגלים‬ ‫היינו‬ ‫הראשון‬ ‫בשלב‬ ‫כבר‬ ‫אחרת‬ .(‫במשתנה‬ ."‫שחורה‬ ‫"קופסה‬ ‫בתור‬ ‫בו‬ ‫משתמשים‬ ‫ואנחנו‬ ‫קיים‬ ‫שהוא‬ ‫לנו‬ ‫נתון‬ ‫אבל‬ ,A ‫אלגוריתם‬ ‫אותו‬ ‫מהו‬ ‫יודעים‬ ‫לא‬ ‫שאנחנו‬ ‫לזכור‬ ‫חשוב‬3 18
  • 19.
    coNP ‫המחלקה‬ 19‫החישובים‬‫מורכבות‬ DSR ‫שיטת‬ 17 ‫הקלט‬ ‫כמות‬ ‫את‬ ‫במעט‬ ‫הורדנו‬ ‫פעם‬ ‫כל‬ ‫אנחנו‬ (3−SAT ‫בעיית‬ ‫עבור‬ ‫השקילות‬ ‫)דוגמת‬ 16.1.1-‫ב‬ ‫באלגוריתם‬ ‫שראינו‬ ‫כמו‬ .‫הנתון‬ ....‫בודקים‬ ‫ואז‬ ‫הקלט‬ ‫את‬ ‫מפחיתים‬ ‫אנחנו‬ ‫פעם‬ ‫שכל‬ ‫הרעיון‬ - Downward Self Reducibility - DSR :‫נקרא‬ ‫זה‬ ‫דבר‬ (‫-דטרמיניסטי‬ ‫לא‬ ‫חישוב‬ NP ‫)הגדרת‬ ‫מטל"ד‬ 18 ‫עוברים‬ - ‫לאחרת‬ ‫אחת‬ ‫קונפיגורציה‬ ‫מכל‬ ‫שעוברים‬ ‫במקום‬ ‫שבה‬ ‫מכונה‬ ‫היא‬ (‫דטרמיניסטית‬ ‫לא‬ ‫טיורינג‬ ‫)מכונת‬ ‫מטל"ד‬ .‫אחת‬ ‫מקונפיגורציה‬ ‫ליותר‬ δ (q, σ1, . . . , σk) δ (q, σ1, . . . , σk) 55kkkkkkkkkkk ))‚‚‚‚‚‚‚‚‚‚ ... δ ( q, σ (l) 1 , . . . , σ (l) k ) .‫שונות‬ ‫תוצאות‬ x ‫אותו‬ ‫על‬ M ‫של‬ ‫שונות‬ ‫בהרצות‬ ‫יתכנו‬ ‫לכן‬ .T (n) ≤ Θ (|x| c ) :‫אפשרית‬ ‫ריצה‬ ‫ולכל‬ x ‫שלכל‬ ‫כך‬ C ‫קבוע‬ ‫ישנו‬ ‫אם‬ ‫יעילה‬ ‫היא‬ ‫כי‬ M ‫כל‬ ‫נאמר‬ :(‫הרצות‬ ‫כמה‬ ‫בפועל‬ ‫להיות‬ ‫יכול‬ ‫)אשר‬ x ‫על‬ M ‫של‬ ‫אפשרית‬ ‫הרצה‬ ‫בכל‬ ‫כל‬ ,‫זאת‬ ‫לעומת‬ ‫אם‬ .M (x) = Accept ‫כי‬ ‫נאמר‬ ‫אזי‬ ,Accept-‫ב‬ ‫שמסיימת‬ ‫מסוים‬ ‫קלט‬ ‫על‬ ,‫אחת‬ ‫הרצה‬ ‫ישנה‬ ‫אם‬ M (x) = ‫כי‬ ‫נאמר‬ ‫אזי‬ ,Accept-‫ב‬ ‫שמסתיימת‬ ‫אחת‬ ‫הרצה‬ ‫אפילו‬ ‫אין‬ ,‫קרי‬ ,Reject-‫ב‬ ‫מסתימות‬ ‫האפשריות‬ ‫ההרצות‬ .Reject .NPnd-‫ב‬ ‫הזה‬ ‫מהסוג‬ ‫המכונות‬ ‫של‬ ‫המחלקה‬ ‫את‬ ‫נסמן‬ :18.1 ‫משפט‬ NPnd = NP∃ .(14) NP ‫המחלקה‬ ‫של‬ ‫הרגילה‬ ‫ההגדרה‬ ‫זאת‬ NP∃ ‫כאשר‬ coNP ‫המחלקה‬ 19 coC ‫המחלקה‬ 19.1 :‫הבא‬ ‫באופן‬ coC ‫את‬ ‫להגדיר‬ ‫תמיד‬ ‫ניתן‬ C ‫סיבוכיות‬ ‫מחלקת‬ ‫בהינתן‬ coC = { L LC ∈ C } = { LC L ∈ C } .(‫החישוביות‬ ‫בתורת‬ ‫שנהוג‬ ‫)כמו‬ ‫שפה‬ ‫על‬ ‫ולא‬ x ‫קלט‬ ‫על‬ ‫מדברים‬ ‫שאנחנו‬ ‫לציין‬ ‫חשוב‬ .x /∈ L ⇐⇒ x ∈ LC :‫וההפך‬ x ∈ L ⇐⇒ x /∈ LC :‫כלומר‬ L LC •x •y .x /∈ LC , y /∈ L :‫ולכן‬ ,x ∈ L, y ∈ LC :‫למשל‬ ‫שלמעלה‬ ‫באיור‬ 19
  • 20.
    coNP ‫המחלקה‬ 19‫החישובים‬‫מורכבות‬ coP = P 19.2 .(‫)ביעילות‬ ‫פולינומי‬ ‫בזמן‬ ‫להכריע‬ ‫ניתן‬ ‫השפות‬ ‫שתי‬ ‫ואת‬ ‫היות‬ coP = P ‫כי‬ ‫לומר‬ ‫ניתן‬ P ‫המחלקה‬ ‫של‬ ‫במקרה‬ .‫ל"ד‬ ‫נתונים‬ ‫ובלי‬ ‫כמתים‬ ‫בלי‬ ‫מוגבלים‬ ‫במשאבים‬ ‫חישוב‬ ‫ע"י‬ ‫שמוגדרת‬ ‫מחלקה‬ ‫היא‬ P .‫וההפך‬ ‫מקבלים‬ ‫ללא‬ ‫המקבלים‬ ‫המצבים‬ ‫את‬ ‫להפוך‬ ‫הוא‬ P ‫של‬ ‫במקרה‬ ‫לעשות‬ ‫שצריך‬ ‫מה‬ ‫כל‬ ‫לפתור‬ ‫לא‬ ‫אבל‬ ‫פולינומי‬ ‫בזמן‬ (‫)עד‬ ‫נכון‬ ‫הוא‬ ‫פתרון‬ ‫האם‬ ‫לבדוק‬ ‫ניתן‬ NP-‫שב‬ ‫מכיוון‬ ‫יותר‬ ‫מורכב‬ ‫כבר‬ ‫המצב‬ coNP-‫ב‬ .‫העדים‬ ‫מבחינת‬ ‫הפוך‬ coNP ‫את‬ ‫להגדיר‬ ‫הוא‬ ‫שנצטרך‬ ‫מה‬ ‫לכן‬ ,‫פולינומי‬ ‫בזמן‬ ‫הבעיה‬ ‫את‬ ‫מצב‬ ← M-‫ב‬ ‫מקבל‬ ‫שמצב‬ ‫לכך‬ ‫פרט‬ M ‫למכונה‬ ‫שזהה‬ MC ‫במכונה‬ ‫נביט‬ T (n) ‫בזמן‬ L ‫את‬ ‫מכריעה‬ M ‫אם‬ .MC -‫ב‬ ‫מקבל‬ ‫מצב‬ ← M-‫ב‬ ‫דוחה‬ ‫ומצב‬MC -‫ב‬ ‫דוחה‬ Time (M (x)) = Time ( MC (x) ) .Θ-‫ב‬ ‫צורך‬ ‫אין‬ ‫שאפילו‬ ‫כך‬ ‫לחלוטין‬ ‫זהה‬ ‫וזה‬ coNP = { L LC ∈ NP } = { LC L ∈ NP } :coNP-‫ב‬ ‫נמצאות‬ ‫אשר‬ ‫שפות‬ ‫שתי‬ ‫על‬ ‫נסתכל‬ :19.1 ‫דוגמא‬ :φ ‫נוסחה‬ ‫של‬ ‫הספיקות‬ ‫לבעיית‬ ‫באשר‬ (SAT) C = SATC = { ⟨φ⟩ ‫ספיקה‬ ‫לא‬ φ } .SATC -‫ב‬ ‫היא‬ ‫אזי‬ ‫ספיקה‬ ‫אינה‬ ‫היא‬ ‫ואם‬ SAT-‫ב‬ ‫היא‬ ‫אזי‬ ‫ספיקה‬ ‫נוסחה‬ ‫היא‬ φ ‫אם‬ ,‫כלומר‬ :19.2 ‫דוגמא‬ :‫בגרפים‬ ‫צביעה‬ ‫בעיית‬ .‫3-צביע‬ ‫הוא‬ G ‫גרף‬ ‫האם‬ (3 − COL) C = { ⟨G⟩ ‫3-צביע‬ ‫אינו‬ G } .‫המשלימה‬ ‫השפה‬ ‫את‬ ‫חיפשנו‬ ‫שלמעלה‬ ‫הדוגמאות‬ ‫בשתי‬ .‫3-צביע‬ ‫אינו‬ ‫שהוא‬ ‫גרף‬ ‫מחפשים‬ ‫אנחנו‬ (3 − COL) C -‫ב‬ ‫אזי‬ ,‫3-צביע‬ ‫שהוא‬ ‫גרף‬ ‫מחפשים‬ ‫אנחנו‬ 3−COL-‫ב‬ ‫אם‬ ,‫כלומר‬ ‫כמתים‬ ‫באמצעות‬ coNP ‫הגדרת‬ 19.3 :‫נחליף‬ ‫שפשוט‬ ‫הוא‬ ‫כאן‬ ‫שנעשה‬ ‫מה‬ ,∀, ∃ ‫כמתים‬ ‫עם‬ (14) NP ‫את‬ ‫הגדרנו‬ :L ∈ coNP ‫אם‬ x ∈ L ⇐⇒ ∀ ˜w ⇒ V (x, w) = Accept x /∈ L ⇐⇒ ∃ ˜w ⇒ V (x, w) = Reject :‫)תזכורת‬ ‫תתקבל‬ ‫לגרף‬ ‫שניתן‬ ‫צביעה‬ ‫כל‬ :‫אזי‬ ‫צביע‬ ‫שאינו‬ G ‫גרף‬ ‫לנו‬ ‫נתון‬ ‫אם‬ ,(‫בגרפים‬ ‫צביעה‬ ‫)בעיית‬ 19.2 ‫לדוגמה‬ ‫בהמשך‬ .‫דחייה‬ ‫נקבל‬ - (w) ‫שלו‬ ‫לצביעה‬ ‫העד‬ ‫את‬ ‫שנתן‬ ‫ברגע‬ ‫אזי‬ ,‫צביע‬ G ‫ואם‬ (....3 − COLC ‫על‬ ‫מדברים‬ ‫אנחנו‬ 20
  • 21.
    ‫החישובים‬ ‫מורכבות‬ :3 ‫הסבר‬ ‫אזי‬(‫צביע‬ ‫שאינו‬ ‫גרף‬ ,‫)למשל‬ ‫בשפה‬ ‫קלט‬ ‫לנו‬ ‫נתון‬ ‫אם‬ :‫הפוך‬ ‫בדיוק‬ ‫הוא‬ ‫הרעיון‬ ‫כאן‬ - 1 ‫בהסבר‬ ‫שמתואר‬ ‫כפי‬ ‫אזי‬ ,‫3-צביע‬ ‫הגרף‬ ‫אם‬ ,‫זאת‬ ‫לעומת‬ .‫צבעים‬ ‫בשלושה‬ ‫הגרף‬ ‫את‬ ‫לצבוע‬ ‫ניתן‬ ‫ולא‬ ‫היות‬ ‫לבדיקה‬ ‫עד‬ ‫כל‬ ‫תקבל‬ ‫המכונה‬ 3 − COL-‫ב‬ ‫נהיה‬ ‫ואנחנו‬ ‫היות‬ - Reject ‫תחזיר‬ ‫המכונה‬ ‫אזי‬ - ‫אותה‬ ‫נקבל‬ ‫ואם‬ ,‫הגרף‬ ‫של‬ ‫חוקית‬ ‫צביע‬ ‫קיימת‬ .3 − COLC -‫ב‬ ‫ולא‬ G ∈ 3 − COLC ⇐⇒ ‫3-צביע‬ ‫אינו‬ G ⇐⇒ ∀ ˜w V (G, w) = Accept G /∈ 3 − COLC ⇐⇒ ‫3-צביע‬ G ⇐⇒ ∃ ˜w V (G, w) = Reject :19.1 ‫משפט‬ .LC ‫השפה‬ ‫הגדרת‬ ‫ובאמצעות‬ ‫הכמתים‬ ‫באמצעות‬ ‫ההגדרה‬ :‫שקולות‬ coNP ‫של‬ ‫ההגדרות‬ ‫שתי‬ NP ̸= coNP-‫ש‬ ‫ההשערה‬ 19.4 :‫שלמטה‬ ‫באיור‬ ‫שמתואר‬ ‫כפי‬ .NP ̸= coNP :‫היא‬ ‫המרכזית‬ ‫ההשערה‬ ‫אבל‬ ,P ⊆ coNP-‫ו‬ P ⊆ NP :‫בבירור‬ P coNPNP rrrrrrrrrrrrrrrrr vvvvvvvvvvvvvvvvv :‫למשל‬ ‫אבל‬ ,‫ספיקה‬ φ-‫ש‬ ‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫מהווה‬ w ‫יחידה‬ ‫מספקת‬ ‫השמה‬ φ ‫פסוקית‬ ‫עבור‬ ‫כי‬ SATC /∈ NP ‫כי‬ ‫משוער‬ ?‫ספיקה‬ ‫אינה‬ φ ‫כי‬ ‫יעיד‬ ‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫איזה‬ ...3 − COLC ‫לגבי‬ ‫כנ"ל‬ co (NPC) = (coNP) C IV ‫חלק‬ PH - ‫פולינומית‬ ‫היררכיה‬ 21
  • 22.
    coNP-‫ו‬ NP-‫ל‬ ‫שמעבר‬‫מה‬ 20‫החישובים‬ ‫מורכבות‬ coNP-‫ו‬ NP-‫ל‬ ‫שמעבר‬ ‫מה‬ 20 ‫משתי‬ ‫אחת‬ ‫באף‬ ‫נמצאות‬ ‫שלא‬ ‫בעיות‬ ‫גם‬ ‫ישנן‬ ‫אבל‬ ,coNP-‫ב‬ ‫או‬ NP-‫ב‬ ‫שהן‬ (‫)שפות‬ ‫בעיות‬ ‫עם‬ ‫התעסקנו‬ ‫עכשיו‬ ‫עד‬ ...‫הללו‬ ‫המחלקות‬ ‫לפתרון‬ ,‫אחד‬ ‫כמת‬ ‫רק‬ ‫היה‬ coNP-‫וב‬ NP-‫ב‬ .‫בבעיה‬ ‫שיש‬ ‫הכמתים‬ ‫לכמות‬ ‫להתייחס‬ ‫צריך‬ ‫הרעיון‬ ‫את‬ ‫להבין‬ ‫בשביל‬ .‫כמתים‬ ‫שני‬ ‫שמצריכה‬ ‫לבעיה‬ ‫דוגמה‬ ‫נראה‬ ‫עכשיו‬ ‫אבל‬ (‫כמתים‬ ‫שני‬ ‫עם‬ ‫לבעיה‬ ‫)דוגמה‬ ‫המזערי‬ ‫המעגל‬ ‫בעיית‬ 20.1 :‫הבאה‬ ‫השפה‬ ‫על‬ ‫נתסכל‬ MinCircut = { ⟨C⟩ ‫הוא‬ C ‫הבולאני‬ ‫המעגל‬ fC ‫לחישוב‬ ‫מזערי‬ ‫בגודל‬ ‫מעגל‬ } C ‫על‬ ” < ” ‫יחס‬ .C ‫של‬ ‫בגרף‬ ‫הצלעות‬ ‫כמספר‬ ‫מוגדר‬ ‫גודל‬ ‫כאשר‬ ,C2-‫מ‬ ‫קטן‬ C1 ‫המעגל‬ ‫כאשר‬ - C1 < C2 :‫סימון‬ 4 ‫מלא‬ ‫סדר‬ ‫יחס‬ ‫הוא‬ ∀C′ ( (C′ < C) → ∃y (C′ (y) ̸= C (y)) ) .‫למעגלים‬ ‫קלט‬ ‫הוא‬ y ‫כאשר‬ .‫שגוי‬ ‫מעגל‬ C′ ‫אז‬ C-‫מ‬ ‫יותר‬ ‫קטן‬ C′ ‫אם‬ ,C′ ‫אחר‬ ‫מעגל‬ ‫לכל‬ :‫הבא‬ ‫הדבר‬ ‫את‬ ‫היא‬ ‫אומרת‬ ‫שלמעלה‬ ‫שהנוסחה‬ ‫מה‬ :‫הבאים‬ ‫התנאים‬ ‫התקיימו‬ ‫כאן‬ ‫בבעיה‬ ‫כי‬ ‫לב‬ ‫נשים‬ .∀, ∃ :‫כימותים‬ ‫שני‬ ‫היו‬ .‫א‬ .|C′ | , |y| = poly (n) ‫מחרוזת‬ ‫על‬ ‫היה‬ ‫מהם‬ ‫אחד‬ ‫כל‬ .‫ב‬ .‫לבדיקה‬ ‫קל‬ ‫היה‬ ‫התנאי‬ .‫ג‬ :‫מתקיימים‬ ‫התנאים‬ ‫שלושת‬ ‫בה‬ ‫שגם‬ ‫דוגמה‬ ‫עוד‬ ‫על‬ ‫נתסכל‬ :φ-‫ב‬ ‫לספק‬ ‫מצליחה‬ w ‫שההשמה‬ ‫הפסוקיות‬ '‫מס‬ = V al (φ, k) (φ, k) ∈ EXACT − SAT ⇒ ( ∃w1 (Val (φ, w1) ≥ k) ) ∧ ( ∀w2 (Val (φ, w2) ≤ k) ) ‫של‬ ‫השמטה‬ ‫כל‬ ‫אבל‬ ,‫ספיקה‬ ‫שאינה‬ φ ‫נוסחה‬ ‫לנו‬ ‫נתונה‬ ‫שבה‬ ‫בעיה‬ - Critic − SAT-‫ה‬ ‫בעיית‬ ‫היא‬ ‫נוספת‬ ‫דוגמה‬ .‫לספיקה‬ ‫אותה‬ ‫תהפוך‬ φ-‫מ‬ ‫שרירותית‬ ‫פסוקית‬ :x ∈ Critic − SAT ( ∀w (V (φ, w)) = Reject ‫לבדיקה‬ ‫קל‬ ‫תנאי‬ ) ∧ ( ∃w1, . . . , wm ∧ 1≤i≤m (∨ (φCi, wi) = Accept) ‫לבדיקה‬ ‫קל‬ ‫תנאי‬ ) ‫מספיק‬ ‫לא‬ ‫לכן‬ ,i ‫פסוקית‬ ‫כל‬ ‫עבור‬ ‫אחד‬ ,‫הללו‬ (‫הללו‬ ‫)ההשמות‬ ‫הפתרונות‬ ‫כל‬ ‫קיימים‬ ‫שיהיו‬ ‫חייבים‬ - ∃w1 . . . , wm .‫אחרת‬ ‫התאמה‬ ‫להיות‬ ‫יכולה‬ ‫שנסיר‬ ‫פסוקית‬ ‫ולכל‬ - ‫אחד‬ ‫פתרון‬ ‫עבור‬ ‫רק‬ ‫תקף‬ ‫זה‬ ‫אז‬ ‫כי‬ - ”∃w...” :‫כמו‬ ‫משהו‬ ‫לרשום‬ .i-‫ה‬ ‫הפסוקית‬ ‫פחות‬ φ (‫)הקלט‬ ‫הפסוק‬ ‫זה‬ - φCi .φCi-‫ל‬ ‫המספקת‬ ‫ההשמה‬ ‫זאת‬ - wi .‫יותר‬ ‫גדול‬ ‫מעגל‬ ‫איזה‬ ‫להכריע‬ ‫ניתן‬ ‫תמיד‬ ,‫כלומר‬4 22
  • 23.
    ‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬21‫החישובים‬ ‫מורכבות‬ ‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬ 21 ‫סימונים‬ 21.1 .V (x) = Accept-‫ש‬ ‫פירושו‬ V (x) .V (x) = Reject-‫ש‬ ‫פירושו‬ ¬V (x) .‫פולינומי‬ ‫בזמן‬ ‫המשתנים‬ ‫את‬ ‫לבדוק‬ ‫ניתן‬ - ∃, ∀ ΠkP-‫ו‬ ΣkP 21.2 .(‫קבוע‬ ‫הוא‬ c ‫)כאשר‬ Θ (|x| c ) ≥ ‫פולינומי‬ ‫בזמן‬ ‫שרצה‬ ‫מכונה‬ ‫זאת‬ - M = V ‫ההגדרות‬ ‫בכל‬ ‫המשמעות‬ ‫המחלקה‬ x ∈ L ⇐⇒ V (x)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ P = Σ0P = Π0P x ∈ L ⇐⇒ ∃w1V (x, w1)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ NP = Σ1P x ∈ L ⇐⇒ ∀w1V (x, w1)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ coNP = Π1P x ∈ L ⇐⇒ ∃w1∀w2V (x, w1, w2)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Σ2P x ∈ L ⇐⇒ ∀w1∃w2V (x, w1, w2)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Π2P x ∈ L ⇐⇒ ∃w1∀w2∃w3V (x, w1, w2, w3)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Σ3P x ∈ L ⇐⇒ ∀w1∃w2∀w3V (x, w1, w2, w3)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ L ∈ Π3P x ∈ L ⇐⇒ ∃w1∀w2 · · · Qwk V (x, w1, w2, . . . , wk)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ :L ∈ ΣkP x ∈ L ⇐⇒ ∀w1∃w2 · · · Qwk V (x, w1, w2, . . . , wk)-‫ש‬ ‫כך‬ V ‫יש‬ ‫אם‬ : L ∈ ΠkP .k ‫זוגיות‬ ‫לפי‬ ‫נקבע‬ Q ∈ {∀, ∃} ‫כאשר‬ ΣkP, ΠkP ⊆ Σk+1P, Πk+1P PH ‫הגדרת‬ 21.3 :‫הבא‬ ‫האיור‬ ‫על‬ ‫נסתכל‬ :‫כלומר‬ ,‫המחלקות‬ ‫כל‬ ‫של‬ ‫איחוד‬ ‫זה‬ PH PH = ∪ k∈N ΣkP = ∪ k∈N ΠkP :‫לזכור‬ ‫שכדאי‬ ‫דברים‬ ‫כמה‬ ‫הנה‬ ,‫כמו-כן‬ co (ΣkP) = ΠkP co (ΠkP) = ΣkP 23
  • 24.
    ‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬21‫החישובים‬ ‫מורכבות‬ P coNP NP •••••••••••• 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Π2P Σ2P 1 1 1 1 1 1 1 1 1 w w w w w w w w w w w w w w w qqqqqqqqqqqqqqq Π3P Σ3P qqqqqqqqqqqqqqqqqqqqqqqqqqqqq wwwwwwwwwwwwwwwwwwwwwwwwwwwww PH QkP ‫מחלקה‬ ‫כל‬ ‫מה‬ ‫כל‬ ‫את‬ ‫כוללת‬ ,‫למשל‬ ,‫שמתחתיה‬ ‫מה‬ ‫מוצג‬ ‫משמאל‬ ‫באיור‬ :Σ2P ‫המחלקה‬ ‫כוללת‬ ‫האזור‬ ‫בתוך‬ ‫שיש‬ ‫)מה‬ (.‫המקווקו‬ ‫בקו‬ ‫שמסומן‬ P coNP NP qqqqqqqqqqqqqqqqqqqqqqqqqqqqq wwwwwwwwwwwwwwwwwwwwwwwwwwwww Π2P Σ2P wwwwwwwwwwwwwwwwwwwwwwwwwwwww qqqqqqqqqqqqqqqqqqqqqqqqqqqqq Π3P Σ3P qqqqqqqqqqqqqqqqqqqqqqqqqqqqq wwwwwwwwwwwwwwwwwwwwwwwwwwwww PH ‫פולינומית‬ ‫היררכיה‬ :4 ‫איור‬ '‫וכו‬ P ̸= NP ‫לגבי‬ ‫מרכזיות‬ ‫השערות‬ 21.4 ΠkP Σk+1P - "‫מעריכית‬ ‫כוח‬ ‫תוספת‬ ‫יש‬ ∃ ‫"לכמת‬ P ̸= NP ΣkP ∀k+1P - "‫מעריכית‬ ‫כוח‬ ‫תוספת‬ ‫יש‬ ∀ ‫"לכמת‬ P ̸= coNP ΣkP ̸= ΠkP - "(‫אחד‬ ‫לכל‬ ‫כוח‬ ‫)אותו‬ ‫שונה‬ ‫כוח‬ ‫תוספת‬ ‫יש‬ ‫שונים‬ ‫"לכמת‬ NP ̸= coNP ‫הקריסה‬ ‫משפט‬ 21.5 ‫והופכות‬ ‫קורסות‬ ‫הקומות‬ ‫כל‬ ,‫כלומר‬ .‫קורס‬ ‫שמעל‬ ‫מה‬ ‫כל‬ - ‫שמעליה‬ ‫לזאת‬ ‫שווה‬ ‫הרמות‬ ‫שאחת‬ ‫שמספיק‬ ‫אומר‬ ‫המשפט‬ :‫המשפט‬ ‫של‬ ‫פרטי‬ ‫מקרה‬ .‫אחת‬ ‫קומה‬ ‫להיות‬ P = NP ⇒ P = PH 24
  • 25.
    ‫חישוב‬ ‫קונפיגורצית‬ 23‫החישובים‬‫מורכבות‬ V ‫חלק‬ ‫זיכרון‬ ‫סיבוכיות‬ .‫ריצה‬ ‫זמן‬ ‫אחרי‬ ‫בחשיבותו‬ ‫השני‬ ‫המשאב‬ ‫הוא‬ ‫זיכרון‬ .S-‫ב‬ ‫אותו‬ ‫נסמן‬ :‫אזי‬ ,(‫שעון‬ ‫)פעימות‬ ‫זמן‬ - T ,‫זיכרון‬ - S S ≤ T .‫לזמן‬ ‫בניגוד‬ ‫למחזר‬ ‫ניתן‬ ‫וזיכרון‬ ‫היות‬ ,S ≪ T :‫עבורן‬ ‫בעיות‬ ‫שיש‬ ‫משערים‬ ‫וכמו-כן‬ S ≪ T ‫שבו‬ ‫למקרה‬ ‫דוגמת‬ 22 :‫משתנים‬ n-‫ו‬ ‫פסוקיות‬ m ‫עם‬ SAT ‫של‬ ‫הדוגמה‬ ‫על‬ ‫נתסכל‬ .‫השמות‬ 2n -‫ה‬ ‫כל‬ ‫את‬ ‫בלולאה‬ ‫סורקים‬ .”Accept” ‫ועונים‬ ‫עוצרים‬ ‫אזי‬ ‫מספקת‬ ‫היא‬ ‫ואם‬ φ-‫ב‬ ‫מציבים‬ w ‫השמה‬ ‫כל‬ .”Reject” ‫עונים‬ ‫מספקת‬ ‫השמה‬ ‫נמצאה‬ ‫לא‬ ‫אם‬ ,‫הסריקה‬ ‫בסוף‬ :‫סה"כ‬ S (n) = &&2n · n + Θ (log m) (‫מאוד‬ ‫קצר‬ ‫)משהו‬ ‫החישוב‬ ‫אותו‬ ‫של‬ ‫תוצאה‬ ‫רק‬ ‫שומרים‬ ‫אנחנו‬ ,‫זיכרון‬ ‫ממחזרים‬ ‫שאנחנו‬ ‫היא‬ 2n ‫את‬ ‫שביטלנו‬ ‫הסיבה‬ .‫משתמשים‬ ‫אנחנו‬ ‫שבה‬ ‫ההשמה‬ ‫של‬ ‫אינדיקציה‬ + .SAT ∈ D − SPACE (‫הקלט‬ ‫)אורך‬ .2Ω(n) ‫זמן‬ ‫דורשת‬ SAT-‫ש‬ ‫משערים‬ .NP, coNP, PH ⊆ P − SPACE ‫פולינומי‬ ‫זיכרון‬ :‫למעשה‬ :‫סביר‬ S ‫עבור‬ S ≤ T ≤ 2Θ(S) .(‫אותו‬ ‫למחזר‬ ‫היכולת‬ ‫)בגלל‬ ‫מזמן‬ ‫חזק‬ ‫יותר‬ ‫הרבה‬ ‫שזיכרון‬ ‫משערים‬ ‫חישוב‬ ‫קונפיגורצית‬ 23 .(9 ‫)חלק‬ ‫חישוב‬ ‫מכונות‬ - ‫כאן‬ ‫בהרחבה‬ ‫מ"ט‬ ‫על‬ ‫דובר‬ ‫בעיקרון‬ .‫ופלט‬ ‫עבודה‬ ,‫קלט‬ :‫במ"ט‬ ‫סרטים‬ ‫שלושה‬ ‫ישנן‬ .S (n) ‫בזיכרון‬ L ‫שפה‬ ‫את‬ ‫מכריעה‬ M ‫מכונה‬ ‫כי‬ ‫אומרים‬ .x /∈ L ⇐⇒ M (x) = Reject ,x ∈ L ⇐⇒ M (x) = Accept .c · S ≥ ‫העבודה‬ ‫בסוף‬ M ‫ניגשת‬ ‫שאליהם‬ ‫התאים‬ ‫שמספר‬ ‫כל‬ c ‫קבוע‬ ‫קיים‬ 25
  • 26.
    ‫זיכרון‬ - ‫סיבוכיות‬‫מחלקות‬ 24‫החישובים‬ ‫מורכבות‬ S : N → N ?‫ישנן‬ ‫קונפיגורציות‬ ‫כמה‬ 23.1 .‫אפשרי‬ ‫קונפיגורציות‬ ‫מספר‬ ‫על‬ ‫חסם‬ ‫למצוא‬ ,‫כלומר‬ .‫האפשרי‬ ‫הקונפיגורציות‬ ‫מספר‬ ‫על‬ ‫לעמוד‬ ‫ננסה‬ .‫קונפיגורציה‬ ‫הוא‬ ‫כזה‬ ‫חישוב‬ ‫כל‬ - (9.1) ‫החישוב‬ ‫אופן‬ :‫כאן‬ ‫קונפיגורציה‬ ‫מהי‬ ‫על‬ ‫לקרוא‬ ‫ניתן‬ ‫כזכור‬ :‫חסמים‬ ‫אלו‬ ‫נחפש‬ ‫שאנחנו‬ ‫מה‬ n · S · |Σ|S · |Q| .‫הקלט‬ ‫בסרט‬ ‫הקורא‬ ‫הראש‬ ‫מיקום‬ n .‫העבודה‬ ‫בסרט‬ ‫מיקום‬ S ,‫כלומר‬ ,Σ-‫מ‬ ‫אחת‬ ‫אות‬ ‫יש‬ ‫מהם‬ ‫אחד‬ ‫שבכל‬ ‫בסרט‬ ‫תאים‬ S ‫לנו‬ ‫יש‬ .‫אפשרויות‬ |Σ| ‫יש‬ ‫תא‬ ‫כל‬ ‫עבור‬ |Σ| S .‫שישנם‬ ‫המצבים‬ ‫מספר‬ Q .‫אותו‬ ‫לצמצם‬ ‫נוכל‬ ‫ולכן‬ ,S < |Σ| S :|Σ| > 2 ‫עבור‬ ,‫כעת‬ .S ≥ Ω (log n) ‫עבור‬ 5 n · 2Θ(S) = 2Θ(S) :‫כמו-כן‬ ‫נכנס‬ ‫ואז‬ - ‫אליה‬ ‫שנחזור‬ ‫קונפיגורציה‬ ‫תהיה‬ ‫בוודאי‬ ‫אז‬ ‫כי‬ ,‫הקונפיגורציות‬ ‫מספר‬ ‫על‬ ‫יעלה‬ ‫שהזמן‬ ‫ייתכן‬ ‫לא‬ ,‫כעת‬ .(‫מעגל‬ ‫ייסגר‬ ‫בהכרח‬ ‫אז‬ ‫)כי‬ ‫אינסופית‬ ‫ללולאה‬ :‫לכן‬ T ≤ 2Θ(S) ' & $ % ‫זיכרון‬ - ‫סיבוכיות‬ ‫מחלקות‬ 24 .log (n) :‫מזערי‬ "‫"סביר‬ ‫עבודה‬ ‫זיכרון‬ .poly (n) :‫מרבי‬ "‫"סביר‬ ‫עבודה‬ ‫זיכרון‬ :‫נסמן‬ P − SPACE = ∪ k∈N D − SPACE ( nk ) L = L − SPACE = D − SPACE ∈ (log n) .‫לוגריתמי‬ ‫זיכרון‬ - T ≤ 2Θ(log n) = nΘ(1) ⇐= S = Θ (log n) ‫ההיררכיה‬ ‫משפט‬ 24.1 :‫מקום‬ ‫סיבוכיות‬ ‫לגבי‬ (12.1 ‫)משפט‬ ‫זמן‬ ‫סיבוכיות‬ ‫של‬ ‫ההיררכיה‬ ‫למשפט‬ ‫מאוד‬ ‫בדומה‬ :‫אזי‬ S1 ≪ S2 ‫אם‬ D − SPACE (S1) D − SPACE (S2) .L P − SPACE :‫ובפרט‬ .40 ‫בעמוד‬ ‫נמצאת‬ 6 ‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬ .n · 2Θ(S) = 2Θ(S)+log(n) = 2Θ(S) :‫כי‬5 .‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬6 26
  • 27.
    ‫זיכרון‬ - ‫סיבוכיות‬‫מחלקות‬ 24‫החישובים‬ ‫מורכבות‬ ‫המחלקות‬ ‫של‬ ‫ההיררכיה‬ 24.2 L ⊆ P ⊆ NP ⊆ P − SP ACE ‫אחד‬ ‫אף‬ ‫את‬ ‫להוכיח‬ ‫איך‬ ‫ידוע‬ ‫לא‬ ‫אבל‬ , ‫בעצם‬ ‫הוא‬ ⊆-‫ה‬ ‫אחד‬ ‫שלפחות‬ ‫בוודאי‬ ‫אזי‬ L P − SPACE-‫ו‬ ‫היות‬ .... -‫מה‬ ?L ̸= NP :‫פתוחה‬ ‫בעיה‬ 24.2.1 ?‫לוגריתמי‬ ‫בזיכרון‬ ‫כריעה‬ SAT ‫האם‬ ‫היא‬ ‫הפתוחה‬ ‫והשאלה‬ 2Θ(n) ‫זמן‬ ‫דורשת‬ SAT-‫ש‬ ‫משערים‬ ?P ̸= P − SPACE ‫האם‬ ‫השאלה‬ ‫נשאלת‬ ‫גם‬ ‫וכמו-כן‬ 27
  • 28.
    ‫צרמלו‬ ‫משפט‬ 26‫החישובים‬‫מורכבות‬ VI ‫חלק‬ ‫במשחקים‬ ‫מנצחות‬ ‫אסטרטגיות‬ ‫משחקים‬ ‫הגדרת‬ 25 .‫לסירוגין‬ ‫משחקים‬ ‫אשר‬ ‫שחקנים‬ ‫שני‬ ‫ישנם‬ ‫במשחק‬ N .|x| = n .‫פתיחה‬ ‫מצב‬ = ‫קלט‬ N .‫שחקן‬ ‫מאף‬ ‫מוסתר‬ ‫לא‬ ‫מידע‬ ‫שום‬ ,‫כלומר‬ - ‫מלא‬ ‫מידע‬ ‫קיים‬ N :(poly (n) ‫)בזמן‬ ‫ביעילות‬ ‫לפתור‬ ‫ניתן‬ N .‫נוכחי‬ ‫צעד‬ ‫בעקבות‬ ‫משחק‬ ‫מצב‬ ‫לעדכן‬ R .‫התוצאה‬ ‫מה‬ - ‫כן‬ ‫ואם‬ ‫משחק‬ ‫סיום‬ ‫מצב‬ ‫זהו‬ ‫האם‬ ‫לקבוע‬ R .poly (n) ≥ ‫במשחק‬ ‫הצעדים‬ ‫מספר‬ R . poly (n) ≥ ‫באורך‬ ‫תיאור‬ ‫צעד‬ ‫ולכל‬ ‫מצב‬ ‫לכל‬ R .‫שחור/תיקו‬ ‫לבן/ניצחון‬ ‫ניצחון‬ :‫ב‬ ‫מסתיים‬ ‫משחק‬ ‫כל‬ N ‫צרמלו‬ ‫משפט‬ 26 :‫הבאים‬ ‫משלושת‬ ‫אחד‬ ‫מתקיים‬ ‫לעיל‬ ‫שתואר‬ ‫כפי‬ ‫משחק‬ ‫לכל‬ .‫לניצחון‬ ‫אסטרטגיה‬ ‫יש‬ ‫ללבן‬ .‫א‬ .‫לניצחון‬ ‫אסטרטגיה‬ ‫יש‬ ‫לשחור‬ .‫ב‬ .‫תיקו‬ ‫שמבטיחה‬ ‫אסטרטגיה‬ ‫יש‬ ‫לשניהם‬ .‫ג‬ ?‫מנצחת‬ ‫אסטרטגיה‬ ‫יש‬ (‫)לבן‬ ‫הפותח‬ ‫שלשחקן‬ ‫רושמים‬ ‫כיצד‬ 26.1 G (· · · ) = { Accept ‫מנצח‬ ‫לבן‬ Reject ‫אחרת‬ 28
  • 29.
    ‫לא-דטרמינסטי‬ ‫זיכרון‬ ‫סיבוכיות‬28‫החישובים‬ ‫מורכבות‬ ?‫נותרו‬ ‫צעדים‬ ‫כמה‬ ‫מסמנים‬ ‫כיצד‬ 26.2 ∃w1G (x, w1) 1 ∃w1∀w2G (x, w1, w2) 2 ∃w1∀w2∃w3G (x, w1, w2, w3) 3 ... ∃w1∀w2 · · · QwmG (x, w1, w2, . . . , wm) m TQBF 27 :True Quantified Boolean Formula ‫בשיטת‬ ‫זה‬ ,‫במשחק‬ ‫מנצחת‬ ‫אסטרטגיה‬ ‫ישנה‬ ‫אם‬ ‫להכריע‬ ‫נוספת‬ ‫דרך‬ :‫לפסוק‬ ‫מספקת‬ ‫השמה‬ ‫ישנה‬ ‫האם‬ ‫למצוא‬ ‫הוא‬ ‫כאן‬ ‫הרעיון‬    ∃x1∀x2∃x3 · · · Qmφ (· · · ) ψ ‫אמיתי‬ ‫הפסוק‬    ‫מפצלים‬ ‫פשוט‬ ‫אזי‬ ,‫אחד‬ ‫מביט‬ ‫יותר‬ ‫מכיל‬ ‫שלמעלה‬ wi-‫ו‬ ‫במידה‬ .‫אחד‬ ‫ביט‬ ‫הוא‬ xi ‫וכל‬ ,‫כמתים‬ ‫ללא‬ φ (· · · ) ‫כאשר‬ .‫ביטים‬ ‫למספר‬ wi ‫כל‬ TQBF ‫להכרעת‬ ‫אלגוריתם‬ 27.1 .43 ‫בעמוד‬ 1 ‫אלגוריתם‬ :‫כאן‬ ‫האלגוריתם‬ ‫את‬ ‫לראות‬ ‫ניתן‬ ‫-שלמה‬PSPACE ‫היא‬ TQBF 27.2 :‫כלומר‬ .TQBF ∈ D − SPACE ‫וגם‬ TQBF ∈ PSPACE .‫א‬ .PSPACE-‫ב‬ ‫קשה‬ ‫הכי‬ ‫גם‬ ‫והיא‬ PSPACE ‫את‬ ‫מייצגת‬ TQBF .‫ב‬ .L ≤p T QBF :‫מתקיים‬ L ∈ PSPACE ‫לכל‬ TQBF ‫של‬ ‫הזיכרון‬ ‫סיבוכיות‬ 27.3 :(‫הכמתים‬ ‫)מספר‬ m > 1 ‫עבור‬ S (m, l) = S (m − 1, l) .S (m, l) = Θ (m) + Θ (l) :‫זיכרון‬ ‫במחזור‬ ‫ונשתמש‬ 2m -‫ה‬ ‫את‬ ‫נוריד‬ ‫ולכן‬ 2m ‫הינו‬ ‫הנסיגה‬ ‫נוסחת‬ ‫פתרון‬ .(45 ‫)עמוד‬ 8 ‫הסבר‬ ‫לאחר‬ ‫מיד‬ ‫למצוא‬ ‫ניתן‬ ‫לכך‬ ‫ההסבר‬ ‫את‬ .Θ ( S2 ) ‫והוא‬ ‫לינארי‬ ‫הוא‬ ‫הריצה‬ ‫זמן‬ ‫כעת‬ ‫לא-דטרמינסטי‬ ‫זיכרון‬ ‫סיבוכיות‬ 28 .‫מעריכית‬ ‫דטרמיניסטית‬ ‫הלא‬ ‫הכוח‬ ‫תוספת‬ - P ̸= NP .‫סימטרית‬ ‫לא‬ ‫דטרמיניסטית‬ ‫הלא‬ ‫הכוח‬ ‫תוספת‬ - coNP ̸= NP :‫אזי‬ S (n) ≥ Ω (n) ‫אם‬ ."‫"סדירה‬ ‫זיכרון‬ ‫פונקציית‬ S : N → N ‫תהי‬ :28.1 ‫משפט‬ .(Savitch ‫)משפט‬ ND − SPACE (S) ⊆ D − SPACE ( S2 ) 7 44 ‫בעמוד‬ L ≤p TQBF :‫כאן‬ ‫לראות‬ ‫ניתן‬ ‫למשפט‬ ‫ההוכחה‬ ‫את‬ .‫המתבקשת‬ ‫המסקנה‬ ‫את‬ ‫לראות‬ ‫ניתן‬ ‫ההוכחה‬ ‫בסוף‬7 29
  • 30.
    ‫רקע‬ 29‫החישובים‬ ‫מורכבות‬ .(ImmermanSzelopcsenyi) coND − SPACE (S) = ND − SPACE (S) VII ‫חלק‬ (‫אוב‬ ‫)פונקציית‬ ‫האורקל‬ ‫גישת‬ (1643) ‫האורקל‬ ‫בפני‬ ‫ניצבים‬ ‫ואכילס‬ ‫תטיס‬ ‫רקע‬ 29 .‫אותה‬ ‫לפתור‬ ‫נוכל‬ ‫בעתיד‬ ‫והאם‬ ,P = NP ‫האם‬ ‫השאלה‬ ‫את‬ ‫לפתור‬ ‫מצליחים‬ ‫איננו‬ ‫מדוע‬ ‫היא‬ ‫השאלות‬ ‫אחת‬ ‫לא‬ ‫גם‬ ‫היא‬ ‫ומדוע‬ ‫נפתרה‬ ‫לא‬ ‫עוד‬ ‫היא‬ ‫מדוע‬ ‫הסבר‬ ‫שמציע‬ (BGS - Baker Gill Solovay) ‫מאמר‬ ‫פורסם‬ 1975 ‫בשנת‬ ....‫שלנו‬ ‫ההוכחות‬ ‫מערכת‬ ‫עם‬ ‫תיפתר‬ .(‫אוב‬ ‫פונקציית‬ :‫)או‬ ‫האורקל‬ ‫גישת‬ - ‫חדש‬ ‫כלי‬ ‫גויס‬ ‫כך‬ ‫לשם‬ ‫אורקל‬ ‫גישת‬ 29.1 .‫מקבילים/דמיוניים‬ ‫יקומים‬ ‫על‬ ‫כרגע‬ ‫מדברים‬ ‫אנחנו‬ M :‫כלומר‬ .O-‫ל‬ ‫אורקל‬ ‫גישת‬ ‫יש‬ M ‫מכונה‬ ‫לכל‬ ‫היקום‬ ‫שבאותו‬ (‫ויחידה‬ ‫)אחת‬ O ‫שפה‬ ‫ישנה‬ ‫מקביל‬ ‫ביקום‬ ‫כי‬ ‫נניח‬ .x ∈ O ‫האם‬ - ‫מהצורה‬ ‫שאלה‬ ‫לכל‬ ‫נכונה‬ ‫תשובה‬ ‫יחיד‬ ‫חישוב‬ ‫בצעד‬ ‫מקבלת‬ ‫גם‬ ‫ומותר‬ x1, . . . , xn−1 ‫רוצים‬ ‫שאנחנו‬ ‫שאילתות‬ ‫כמה‬ ‫אורקל‬ ‫אותו‬ ‫את‬ ‫לשאול‬ ‫מותר‬ ,‫כלומר‬ ,‫אדפטיבית‬ ‫היא‬ ‫הגישה‬ .(‫השאילתות‬ ‫בבניית‬ ‫הוא‬ ‫כאן‬ ‫)המחיר‬ .‫בקודמותיה‬ ‫תלויה‬ ‫תהיה‬ xn ‫שאילתה‬ ‫שכל‬ ‫סימונים‬ 29.2 .O ‫לאורקל‬ ‫גישה‬ ‫עם‬ ‫גישה‬ ‫עם‬ x ‫קלט‬ ‫על‬ M ‫מכונה‬ ‫של‬ ‫הריצה‬ ‫את‬ MO (x)-‫ב‬ ‫מסמנים‬ .O ‫לאורקל‬ ‫גישה‬ ‫בעזרת‬ (P-‫ה‬ ‫)בגלל‬ (14) ‫ביעילות‬ ‫להכריע‬ ‫שניתן‬ ‫השפות‬ ‫על‬ ‫אוסף‬ ‫זהו‬ - PO .O ‫לאורקל‬ ‫גישה‬ ‫בעזרת‬ ‫ל"ד‬ ‫באופן‬ ‫ביעילות‬ ‫להכריע‬ ‫שניתן‬ ‫השפות‬ ‫על‬ ‫אוסף‬ ‫זהו‬ - NPO .‫לאורקל‬ ‫גישה‬ ‫באמצעות‬ ‫ביעילות‬ SAT ‫את‬ ‫לפתור‬ ‫ניתן‬ ‫שבו‬ ‫יקום‬ ‫זה‬ - PSAT :‫למשל‬ .‫כמותו‬ ‫ועונה‬ ‫לאורקל‬ x ‫קלט‬ ‫מעבירה‬ M ‫מכונה‬ - SAT ∈ PSAT .‫להפך‬ ‫ועונה‬ ‫לאורקל‬ x ‫קלט‬ ‫מעבירה‬ M ‫מכונה‬ - SATC ∈ PSAT 30
  • 31.
    ‫רקע‬ 29‫החישובים‬ ‫מורכבות‬ :‫תזכורת‬ ‫קופסה‬‫מעין‬ ‫כמו‬ ,‫יחיד‬ ‫חישוב‬ ‫בצעד‬ x ∈ O ‫האם‬ ‫להכריע‬ ‫ניתן‬ ‫מקביל‬ ‫שביקום‬ ‫שפה‬ ‫זאת‬ - O .‫שחורה‬ .‫בודקים‬ ‫אנחנו‬ ‫שאותו‬ ‫הקלט‬ ‫זה‬ - x .NP, coNP ⊆ PSAT :‫כי‬ ‫מכך‬ ‫נובע‬ :‫למשל‬ ,‫שאילתות‬ ‫שתי‬ ‫ידרשו‬ (∃ · · · ) ∧ (∀ · · · ) ‫של‬ ‫בצורה‬ ‫בהיררכיה‬ 2 ‫ברמה‬ ‫בעיות‬ :29.1 ‫דוגמא‬ .Exact − SAT = { (φ, k) Val (φ) = K } :‫אםם‬ (φ, k) ∈ E.S. [∃w1 Val (φ, w1) ≥ k] (φ, k) ∈ L ‫תשובה‬ ‫נותן‬ ‫אורקל‬ f (φ, k) ‫חיובית‬ ∧ [∀w2 Val (φ, k) ≤ k] ‫תשובה‬ ‫נותן‬ ‫אורקל‬ f (φ, k + 1) ‫שלילית‬ .‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫יש‬ ‫כי‬ L ∈ NP - L = { (φ, k) Val (φ) ≥ k } ‫כאשר‬ .L≤p SAT :‫קארפ‬ ‫רדוקציית‬ ‫היא‬ f ‫כאן‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ - ‫מסורתית‬ ‫הוכחה‬ 29.3 : ‫טיעון‬ ‫אחר‬ ‫טיעון‬ ,‫ההוכחה‬ ‫את‬ ‫נרשום‬ ‫אזי‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫לרשום‬ ‫נרצה‬ ‫אם‬ φ1 ⊢ φ2 ⊢ · · · ⊢ φm .O ‫שרירותי‬ ‫לאורקל‬ ‫בגישה‬ ‫תיקונים‬ ‫ללא‬ ‫תקף‬ ‫להיות‬ ‫צריך‬ φi ⊢ φi+1 ‫מעבר‬ ‫כל‬ ‫כאשר‬ :‫מסורתיות‬ ‫להוכחות‬ ‫דוגמאות‬ .‫הזמן‬ ‫של‬ ‫ההיררכיה‬ ‫משפט‬ .‫א‬ .‫המקום‬ ‫של‬ ‫ההיררכיה‬ ‫משפט‬ .‫ב‬ .NP∃ = NPnd ‫ההגדרות‬ ‫שקילות‬ .‫ג‬ .P ⊆ NP .‫ד‬ BGS-‫ה‬ ‫משפט‬ 29.4 :29.1 ‫משפט‬ .PO ̸= NPO :‫מתקיים‬ O ‫אורקל‬ ‫לכל‬ ‫אזי‬ ,P ̸= NP ‫לטענה‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫יש‬ ‫אם‬ .P ̸= NP-‫ל‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫אין‬ ‫אז‬ - PO = NPO ‫שמקיים‬ O ‫אורקל‬ ‫יש‬ - BGS :29.2 ‫משפט‬ .PO = NPO :‫מתקיים‬ O ‫אורקל‬ ‫לכל‬ ‫אזי‬ ,P = NP ‫לטענה‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫יש‬ ‫אם‬ .P = NP-‫ל‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫אין‬ ‫אז‬ - PO ̸= NPO ‫שמקיים‬ O ‫אורקל‬ ‫יש‬ - BGS 31
  • 32.
    ‫הוכחה‬ ‫למערכת‬ ‫הדרושים‬‫התנאים‬ 31‫החישובים‬ ‫מורכבות‬ :4 ‫הסבר‬ ‫אותה‬ ‫בדיוק‬ ‫היא‬ A ‫הוכחה‬ :‫כלומר‬ ,P ̸= NP ‫לטענה‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ (A ‫לה‬ ‫)נקרא‬ ‫הוכחה‬ ‫ישנה‬ ‫אם‬ .PO ̸= NPO :‫מתקיים‬ O ‫אורקל‬ ‫לכל‬ ‫אזי‬ ,‫אורקל‬ ‫ובלי‬ ‫אורקל‬ ‫עם‬ ‫הוכחה‬ ,¬α ‫אז‬ ¬β ‫אם‬ :‫לביטוי‬ ‫שקול‬ ‫הוא‬ ‫כי‬ ‫מלוגיקה‬ ‫יודעים‬ ‫ואנחנו‬ ,β ‫אז‬ α ‫אם‬ :‫מהצורה‬ ‫ביטוי‬ ‫לנו‬ ‫יש‬ ‫כעת‬ :‫שלנו‬ ‫במקרה‬ ,‫כלומר‬ .(¬α) P ̸= NP-‫ל‬ ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ ‫אין‬ ‫אז‬ (¬β) PO = NPO ‫שמקיים‬ ‫אורקל‬ [‫]קיים‬ ‫יש‬ ‫אם‬ .BGS-‫ה‬ ‫משפט‬ ‫זה‬ .=←↛= :‫סימנים‬ ‫להפוך‬ ‫רק‬ ‫בדיוק‬ ‫משפט‬ ‫אותו‬ ‫לכתוב‬ ‫ניתן‬ ‫כעת‬ :A, B ‫אורקלים‬ ‫שני‬ ‫יש‬ BGS-‫ה‬ ‫משפט‬ ‫לפי‬ .(29.1 ‫)משפט‬ ‫המשפט‬ ‫של‬ ‫הראשון‬ ‫החלק‬ ‫וזה‬ - PA = NPA .(29.2 ‫)משפט‬ ‫המשפט‬ ‫של‬ ‫השני‬ ‫החלק‬ ‫וזה‬ - PB ̸= NPB (41 ‫)עמוד‬ BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ :‫כאן‬ ‫נמצאת‬ ,(‫חלקיו‬ ‫שני‬ ‫)על‬ ‫המשפט‬ ‫הוכחה‬ VIII ‫חלק‬ PCP-‫ה‬ ‫משפט‬ .‫הראשונה‬ ‫המודפסת‬ ‫ההוכחה‬ ‫את‬ ‫מחזיק‬ (1395-1468) ‫גוטנברג‬ ‫יוהן‬ ?‫הוכחה‬ ‫מערכת‬ ‫מהי‬ 30 :‫דברים‬ ‫שלושה‬ ‫לנו‬ ‫יש‬ .‫טענה‬ - φ .‫אמיתית‬ ‫שהטענה‬ V ‫את‬ ‫לשכנע‬ ‫ניסיון‬ - ‫טיעון‬ - P .‫הטיעון‬ ‫נכונות‬ ‫את‬ ‫שבודק‬ - ‫מוודא‬ - V :‫דורשים‬ ‫שאנחנו‬ ‫תנאים‬ ‫שלושה‬ ‫ישנם‬ ‫הוכחה‬ ‫למערכת‬ ‫הדרושים‬ ‫התנאים‬ 31 ‫שלמות‬ 31.1 :‫אמיתית‬ φ 32
  • 33.
    PCP-‫ה‬ ‫משפט‬ 32‫החישובים‬‫מורכבות‬ ∃P V (φ, P) = Accept ⇐ x ∈ L .∃P Pr [V (φ, P) = Accept] = 1 ‫זה‬ ‫כי‬ ‫נראה‬ ‫ובהמשך‬ ‫נאותות‬ 31.2 :‫שקרית‬ φ ∀P V (φ, P) = Reject ⇐ x /∈ L .∀P Pr [V (φ, P) = Reject] > 1 3 ‫או‬ ∀P Pr [V (φ, P) ̸= Reject] < 1 3 ‫זה‬ ‫כי‬ ‫נראה‬ ‫ובהמשך‬ PCP-‫ה‬ ‫משפט‬ 32 ‫דגימה‬ ‫שבאמצעות‬ ‫הוא‬ ‫היתרון‬ ‫אבל‬ ,‫בנפח‬ ‫וכמה‬ ‫כמה‬ ‫פי‬ ‫ההוכחה‬ ‫את‬ ‫מגדילים‬ ‫שאנחנו‬ ‫הוא‬ PCP-‫ה‬ ‫במשפט‬ ‫הרעיון‬ ‫בהסתברות‬ ‫או‬ ,‫נכונה‬ ‫ההוכחה‬ ‫האם‬ ‫לדעת‬ ‫נוכל‬ ‫אנחנו‬ ,(‫המקורית‬ ‫להוכחה‬ ‫ביחס‬ ‫קטן‬ ‫)שהוא‬ ‫ביטים‬ ‫של‬ ‫קבוע‬ ‫מספר‬ ‫של‬ .‫לא‬ ‫שהיא‬ (1 3 > ) ‫כלשהי‬ :‫סימון‬ L ∈ PCP (r, q) .‫שקוראים‬ ‫הביטים‬ ‫מספר‬ ‫הוא‬ q-‫ו‬ ,‫המטבע‬ ‫הטלות‬ ‫מספר‬ ‫זה‬ - r ‫כאשר‬ :‫אחרות‬ ‫במילים‬ ‫או‬ PCP (r, q) =    ‫לטענות‬ ‫עבורן‬ ,L ‫השפות‬ ‫כל‬ ‫אוסף‬ ‫מטבע‬ ‫הטלות‬ Θ (r) ‫עם‬ ‫יעיל‬ V ‫יש‬ x ∈ L ‫מההוכחה‬ ‫ביטים‬ Θ (q) ‫ו‬    :‫יעילות‬ ‫נגדיר‬ ‫כעת‬ ‫יעילות‬ 32.1 .n = |x| :‫שמקיים‬ V ‫יש‬ ‫אם‬ ,poly (n) ≥ ‫הוא‬ ‫הריצה‬ ‫זמן‬ ‫כאשר‬ ,Θ (r) ≥ ‫המטבע‬ ‫הטלות‬ ‫מספר‬ ‫וכאשר‬ .Θ (q) ≥ (‫שקוראים‬ ‫הביטים‬ ‫)מספר‬ ‫השאילתות‬ ‫ומספר‬ :‫למשל‬ NP = PCP (0, poly (n)) :‫הוא‬ ‫להוכיח‬ ‫נרצה‬ ‫שאנחנו‬ ‫המשפט‬ NP = P CP (Θ (log n) , Θ (1)) .45 ‫בעמוד‬ NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ :‫כאן‬ ‫נמצאת‬ ‫ההוכחה‬ 33
  • 34.
    ‫הבסיסי‬ ‫הרעיון‬ 33‫החישובים‬‫מורכבות‬ IX ‫חלק‬ IP - ‫אינטראקטיביות‬ ‫הוכחה‬ ‫מערכות‬ ‫הבסיסי‬ ‫הרעיון‬ 33 .‫ודו-שיח‬ ,‫הסתברות‬ :‫דברים‬ ‫שני‬ ‫משלבת‬ ‫אשר‬ ‫מתקדמת‬ ‫הוכחות‬ ‫במערכת‬ ‫כאן‬ ‫מדובר‬ ‫בעיקרון‬ :‫כזה‬ ‫הוא‬ ‫הרעיון‬ ‫הדו-שיח‬ ‫לגבי‬ ‫אבל‬ ,‫בהמשך‬ ‫נפגוש‬ ‫עוד‬ ‫אנחנו‬ ‫ההסתברות‬ ‫את‬ .‫מוכיח‬ - P-‫ו‬ ,‫מוודא‬ - V ‫ישנו‬ ...‫לשניהם‬ ‫זהה‬ x ∈ L ‫מהסוג‬ ‫טענות‬ .‫לו‬ ‫עונה‬ P-‫ו‬ P-‫ל‬ ‫שאילתה‬ ‫ושולח‬ ‫השיחה‬ ‫את‬ ‫פותח‬ V ‫הדו-שיח‬ ‫פרוטוקול‬ 33.1 :‫בניהן‬ ‫הדו-שיח‬ ‫פרוטוקול‬ ‫מתנהל‬ ‫כך‬ P V q1 qq™™™™™™™™™™™™™™™ r2 --‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘ ... qk−1 qq™™™™™™™™™™™™™™™ rk --‘‘‘‘‘‘‘‘‘‘‘‘‘‘‘ :‫כך‬ ‫מסומן‬ ‫והוא‬ ,‫צעדים‬ k-‫ב‬ ‫פרוטוקול‬ ‫נקרא‬ ‫הזה‬ ‫הפרוטוקול‬ L ∈ IP [k] V = (x,⃗c, q1, r2, . . . , qk−1, rk) ‫כאשר‬ ‫שלמות‬ 33.2 :x ∈ L 8 ∃P Pr [ V P (x) = Accept ] = 1 .‫רעיון‬ ‫אותו‬ ‫הוא‬ ‫הרעיון‬ .V P (x) ‫רושמים‬ ‫אנחנו‬ V (x, P) ‫לרשום‬ ‫במקום‬8 34
  • 35.
    ‫גרפים‬ ‫של‬ ‫איזומורפיזם‬- ‫דוגמה‬ 34‫החישובים‬ ‫מורכבות‬ ‫נאותות‬ 33.3 :x /∈ L ∀P Pr [ V P (x) = Reject ] ≥ 1 2 .P-‫ל‬ V ‫בין‬ ‫אינטראקציה‬ ‫שיש‬ ‫בכך‬ NP-‫מ‬ ‫שונה‬ ‫זה‬ ‫יעילות‬ 33.4 .poly (|x|) ‫בזמן‬ ‫רץ‬ V ‫גרפים‬ ‫של‬ ‫איזומורפיזם‬ - ‫דוגמה‬ 34 :‫פונקציה‬ ‫קיימת‬ ‫אם‬ G0 ∼= G1 ‫ומסומנים‬ ‫איזומורפים‬ ‫נקראים‬ G0, G1 ‫גרפים‬ ‫שני‬ π : V (G0) → V (G1) .‫ועל‬ ‫ערכית‬ ‫חד-חד‬ ‫שהיא‬ ‫להיות‬ ‫חייבים‬ ‫שלגרפים‬ ‫שמבטיח‬ ‫)מה‬ ‫ועל‬ ‫חח"ע‬ ‫שהיא‬ G1 ‫של‬ ‫לקודקודים‬ G0 ‫של‬ ‫מהקודקודים‬ ‫פונקציה‬ ‫קיימת‬ ,‫כלומר‬ :‫כלומר‬ ,"‫צלעות‬ ‫"שומרת‬ ‫גם‬ ‫שהיא‬ ,(‫קודקודים‬ ‫של‬ ‫מספר‬ ‫אותו‬ {u, v} ∈ E (G0) ⇐⇒ {π (u) , π (v)} ∈ E (G1) .G1-‫ב‬ {π (u) , π (v)} ‫צלע‬ ‫ישנה‬ ‫אזי‬ G0-‫ב‬ {u, v} ‫הצלע‬ ‫את‬ ‫ניקח‬ ‫אם‬ ,‫כלומר‬ ‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ 34.1 G0 G1 ?>=<89:;1 bbbbbb ?>=<89:;1 FFFFFFFFFFF ?>=<89:;5        ?>=<89:;2 ∼= ?>=<89:;5 ?>=<89:;2 ?>=<89:;4 ?>=<89:;3 ?>=<89:;4 ppppppppppp ?=89:;3 xxxxxxxxxxx ‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ :5 ‫איור‬ GISO, GNISO ‫השפות‬ 34.2 GISO = GI = { ⟨G0, G1⟩ G0 ∼= G1 } .π ‫היא‬ ‫לכך‬ ‫לבדיקה‬ ‫וקל‬ ‫קצר‬ ‫עד‬ ‫כי‬ GI ∈ NP .GI ∈ P ‫כי‬ ‫משערים‬ GNISO = { ⟨G0, G1⟩ G0 G1 } 35
  • 36.
    ‫קבוע‬ K ‫כאשר‬IP [K] 36‫החישובים‬ ‫מורכבות‬ .GNISO ∈ coNP ‫בבירור‬ .GISO /∈ NPC ‫וכי‬ GNISO /∈ NP :‫כי‬ ‫משערים‬ GNISO ∈ IP [2] ‫כי‬ ‫ההוכחה‬ 35 .G0 G1 ‫כי‬ ‫היא‬ ‫הטענה‬ :‫תזכורת‬ :‫כך‬ ‫פועל‬ P-‫ל‬ V ‫בין‬ ‫הפרוטוקול‬ P-‫ל‬ ‫ושולח‬ .π ‫אחידה‬ ‫תמורה‬ ‫ומגריל‬ (G0, G1 ‫הגרפים‬ ‫משני‬ ‫אחד‬ ‫בעצם‬ ‫)שזהו‬ b ∈ {0, 1} ‫אחד‬ ‫ביט‬ ‫מגריל‬ V .‫א‬ .π (Gb) ‫את‬ .c ‫ביט‬ ‫בחזרה‬ ‫ושולח‬ b ‫מהו‬ ‫לנחש‬ ‫מנסה‬ P .‫ב‬ V (G0, G1, b, π, c) = { Accept c = b Reject c ̸= b .‫ברורה‬ V ‫של‬ ‫היעילות‬ :‫שלמות‬ .G ∈ π (G0)∧G ∈ π (G1)-‫ש‬ ‫כך‬ G ‫גרף‬ ‫אף‬ ‫אין‬ ‫כלומר‬ , 9 ‫זרות‬ ‫ההתפלגויות‬ ‫אזי‬ ,(‫נכונה‬ ‫הטענה‬ ,‫)כלומר‬ G0 G1 ‫אם‬ c = 0 ‫לענות‬ ‫ואז‬ G0-‫ב‬ ‫אליו‬ ‫שנשלח‬ ‫הגרף‬ ‫האם‬ ‫לחשב‬ ‫יכול‬ ‫האפשריות‬ ‫התמורות‬ |V |! ‫כל‬ ‫סריקת‬ ‫עי‬ ‫יכול‬ P-‫ה‬ ‫לכן‬ .c = 1-‫ב‬ ‫לענות‬ ‫ואחרת‬ .V (G0, G1, b, π, c) = Accept :‫ולכן‬ ,c = b ‫בברור‬ :‫נאותות‬ .10 π ‫בכל‬ ‫פעמים‬ ‫מספר‬ ‫אותו‬ ‫מופיע‬ ‫גרף‬ ‫כל‬ ,‫כלומר‬ ,‫זהות‬ ‫ההתפלגויות‬ ‫אזי‬ (‫שקרית‬ ‫הטענה‬ ,‫)כלומר‬ G0 ∼= G1 ‫אם‬ :‫ולכן‬ π (G1)-‫ל‬ π (G0) ‫בין‬ ‫להבין‬ ‫יכול‬ ‫לא‬ P ,‫לכן‬ Pr [c ̸= b] = 1 2 ⇓ Pr [V (G0, G1, b, π, c) = Reject] = 1 2 ‫קבוע‬ K ‫כאשר‬ IP [K] 36 .‫הצדדים‬ ‫לשני‬ ‫גלויות‬ ‫הן‬ AM-‫וב‬ ,‫סודיות‬ ‫הן‬ ‫ההטלות‬ IP-‫ב‬ ‫רק‬ IP ‫כמו‬ ‫זה‬ - AM AM = AM [2] = ∪ K IP [K] .‫קבוע‬ K ‫כאשר‬ .1 = ‫שלמות‬ ‫לייצר‬ ‫כדי‬ ‫פומביות‬ ‫הודעות‬ ‫שתי‬ ‫רק‬ ‫מספיקות‬ ,‫כלומר‬ .AM ⊆ Π2P ‫כי‬ ‫ידוע‬ ‫גרף‬ ‫אף‬ ‫לנו‬ ‫יהיה‬ ‫לא‬ - ‫איזומורפים‬ ‫אינם‬ ‫הם‬ ‫אם‬ ,‫שווים‬ ‫הם‬ ‫מתי‬ ‫ונראה‬ ‫מהגרפים‬ ‫אחד‬ ‫כל‬ ‫של‬ ‫האפשרויות‬ ‫התמונות‬ ‫כל‬ ‫את‬ ‫ניקח‬ ‫אם‬ ,‫כלומר‬9 .‫גרף‬ ‫לאף‬ ‫ששווה‬ ‫אזי‬ ,(‫האפשריות‬ ‫הפרמוטציות‬ ‫כל‬ ‫)את‬ ‫האפשריים‬ ‫הגרפים‬ ‫כל‬ ‫את‬ ‫תכיל‬ ‫עמודה‬ ‫וכל‬ ‫האפשריות‬ (‫)הגרפים‬ ‫הפרמוטציות‬ ‫כל‬ ‫של‬ ‫טבלה‬ ‫נעשה‬ ‫אם‬10 .‫עמודה‬ ‫בכל‬ ‫פעמים‬ ‫מספר‬ ‫אותו‬ ‫יופיע‬ ‫גרף‬ ‫אותו‬ ‫שבו‬ ‫מצב‬ ‫ייווצר‬ 36
  • 37.
    Zero Knowledge-‫ה‬ ‫עיקרון‬38‫החישובים‬ ‫מורכבות‬ (‫המרכזי‬ ‫)המשפט‬ IP ‫הגדרת‬ 37 IP = IP [poly (n)] = ∪ c∈N IP [K = Θ (nc )] :‫ולכן‬ IP = PSPACE .(K = 2) ‫בקבוע‬ ‫מדובר‬ (35) GNISO-‫ה‬ ‫בפרוטוקול‬ ,‫למשל‬ Zero Knowledge-‫ה‬ ‫עיקרון‬ 38 ?P-‫מ‬ V ‫מקבל‬ ‫אינפורמציה‬ ‫כמה‬ :‫היא‬ ‫כאן‬ ‫השאלה‬ .‫אחד‬ ‫ביט‬ ‫היא‬ ?”x ∈ L” ‫לשאלה‬ ‫התשובה‬ ‫כאשר‬ (NP) ‫קלאסית‬ ‫הוכחה‬ ‫מערכת‬ 38.1 .‫ביטים‬ n :SAT .‫ביטים‬ Θ (|V |) :3 − COL .x ∈ L-‫ש‬ ‫טענה‬ ‫אותה‬ ‫בהוכחת‬ P-‫ה‬ ‫את‬ ‫להחליף‬ ‫יכול‬ V -‫ה‬ :‫מסקנה‬ [IP] ‫אינטראקטיביות‬ ‫הוכחות‬ ‫מערכת‬ 38.2 :(35) GNISO ‫של‬ ‫הפרוטוקול‬ ‫על‬ ‫נסתכל‬ !‫דבר‬ ‫יודע‬ ‫אינו‬ V ,(‫שלמות‬ ‫שיש‬ ‫כיוון‬ ‫שראינו‬ ‫כמו‬ ‫וודאית‬ ‫)שהיא‬ G0 G1-‫ש‬ ‫לידיעה‬ ‫מעבר‬ ...Zero Knowledge ‫שנקרא‬ ‫מה‬ ‫זה‬ !‫בעצמו‬ ‫ביעילות‬ ‫האינטראקציה‬ ‫את‬ ‫לסמלץ‬ ‫יכול‬ ‫היה‬ V ‫אזי‬ G0 G1-‫ש‬ ‫כבר‬ ‫יודע‬ ‫שהיה‬ ‫נניח‬ ,‫אחרות‬ ‫במילים‬ .(P ‫את‬ ‫חייב‬ ‫הוא‬ - ‫זאת‬ ‫יודע‬ ‫לא‬ ‫שהוא‬ ‫בגלל‬ ‫)אבל‬ :5 ‫הסבר‬ ‫דרך‬ ‫שום‬ ‫לנו‬ ‫אין‬ ,‫כלומר‬ .‫הביט‬ ‫אותו‬ ‫מלבד‬ ‫אינפורמציה‬ ‫לנו‬ ‫מעביר‬ ‫לא‬ P-‫ש‬ ‫הוא‬ Zero Knowledge -‫ב‬ ‫הרעיון‬ .‫מידע‬ ‫ממנו‬ ‫מקבלים‬ ‫שאנחנו‬ ‫עד‬ ‫שקרית‬ ‫או‬ ‫נכונה‬ (x ∈ L) ‫הטענה‬ ‫האם‬ ‫לדעת‬ ‫את‬ ‫להחליף‬ ‫נוכל‬ ‫שאנחנו‬ ‫כדי‬ ‫כלומר‬ ,‫בעצמנו‬ ‫לשפוט‬ ‫נדע‬ ‫שאנחנו‬ ‫כדי‬ ‫מספיק‬ ‫לא‬ - ‫מקבלים‬ ‫שאנחנו‬ ‫המידע‬ ‫וגם‬ ‫כמות‬ ‫בגלל‬ P ‫את‬ ‫להחליף‬ ‫יכולים‬ ‫אנחנו‬ ,38.1 - (NP) ‫קלאסית‬ ‫הוכחה‬ ‫ב-מערכת‬ ‫למשל‬ ‫)כי‬ .‫הבאים‬ ‫במקרים‬ P .(‫לנו‬ ‫מספק‬ ‫שהוא‬ ‫האינפורמציה‬ ‫נאותות‬ + ‫שלמות‬ + ‫יעילות‬ :‫שמקיים‬ ‫פרוטוקול‬ ‫להמציא‬ ‫קל‬ .‫רבות‬ ‫חישוביות‬ ‫למשימות‬ ‫טוב‬ Zero Knowledge -‫ה‬ .‫הפרוטוקול‬ ‫לפי‬ ‫פועלים‬ (‫)מחשבים‬ ‫השחקנים‬ ‫שכל‬ ‫בהנחה‬ ‫לפי‬ ,‫)כלומר‬ Zero Knowledge-‫ב‬ ‫פעל‬ ‫שהוא‬ ‫האחרים‬ ‫לשחקנים‬ ‫להוכיח‬ ‫יוכל‬ ‫מהשחקנים‬ ‫אחד‬ ‫כל‬ ‫לכך‬ ‫בנוסף‬ .(‫הפרוטוקול‬ ‫להתחזות‬ ‫בעתיד‬ ‫ניתן‬ ‫שיהיה‬ ‫מבלי‬ ‫השני‬ ‫מול‬ ‫אחת‬ ‫להזדהות‬ ‫למחשבים‬ ‫למשל‬ ‫מאפשרת‬ Zero Knowledge-‫ה‬ ‫תכונת‬ .(‫לכך‬ ‫מספיק‬ ‫לא‬ ‫ההזדהות‬ ‫עבור‬ ‫שנשלח‬ ‫המידע‬ ‫)כי‬ ‫מהם‬ ‫לאחד‬ 37
  • 38.
    ‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬39‫החישובים‬ ‫מורכבות‬ :‫לזכור‬ ‫כדאי‬ .‫לא‬ ‫או‬ ‫אמיתית‬ ‫היא‬ ‫אם‬ (‫)מוודא‬ ‫מאמת‬ ‫הוא‬ ‫הוכחה‬ ‫בהינתן‬ ,‫כלומר‬ ,‫מאמת‬ ‫הוא‬ - V .(‫)המוכיח‬ P-‫ה‬ ‫לו‬ ‫מספק‬ ‫ההוכחה‬ ‫את‬ ‫עיקרון‬ ‫של‬ ‫במקרה‬ ‫למשל‬ ,(‫לא‬ ‫או‬ ‫נכונה‬ ‫הטענה‬ ‫האם‬ ,‫)כלומר‬ ‫לטענה‬ ‫הוכחה‬ V -‫ל‬ ‫מספק‬ P ‫טענות‬ ‫של‬ ‫בהקשר‬ .‫לכך‬ ‫מעבר‬ ‫לא‬ ‫אבל‬ ,‫לא‬ ‫או‬ ‫נכונה‬ ‫הטענה‬ ‫האם‬ ‫המידע‬ ‫את‬ ‫מספק‬ P - (38) Zero Knowledge-‫ה‬ .‫שלו‬ ‫ההוכחה‬ ‫דרך‬ ‫את‬ ‫מספק‬ ‫ממש‬ P-‫ה‬ ‫שמה‬ - (38.1) ‫קלאסית‬ ‫הוכחה‬ ‫במערכת‬ X ‫חלק‬ ‫הוכחות‬ .‫בקורס‬ ‫מרכזיות‬ ‫הוכחות‬ ‫יסקרו‬ ‫זה‬ ‫בחלק‬ ‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬ 39 ‫הוכחה‬ ‫של‬ ‫רעיון‬ ‫היא‬ (‫קנטור‬ ‫של‬ ‫האלכסון‬ :‫)או‬ ‫באלכסון‬ ‫ההוכחה‬ ‫בשיטת‬ ‫הרעיון‬ ‫קאנטור‬ ‫ג'ורג‬ ‫מההוכחה‬ ‫במקצת‬ ‫שונה‬ ‫)שהוא‬ ‫הלכסון‬ ‫רעיון‬ ‫זה‬ - ‫הראשון‬ - ‫רעיונות‬ ‫משתי‬ ‫שמורכב‬ ‫לשחק‬ ‫שלנו‬ ‫היכולת‬ ‫זה‬ - ‫והשני‬ ,(‫אחרת‬ ‫יתואר‬ ‫הוא‬ ‫כאן‬ ‫ולכן‬ |ℵ0| |ℵ|-‫ש‬ ‫המתמטית‬ ‫אנחנו‬ ‫אם‬ ,‫ומספריים‬ ‫נייר‬ ‫באבן‬ ,‫)למשל‬ ‫אותו‬ ‫לנצח‬ ‫וכך‬ ‫השני‬ ‫השחקן‬ ‫אחרי‬ ‫אחד‬ ‫מהלך‬ ‫שלנו‬ ‫במקרה‬ .(‫אותו‬ ‫לנצח‬ ‫יכולים‬ ‫תמיד‬ ‫אנחנו‬ - ‫השני‬ ‫השחקן‬ ‫אחרי‬ ‫מיד‬ ‫משחקים‬ ‫אחרי‬ ‫לא‬ ‫או‬ ‫המילה‬ ‫את‬ ‫לקבל‬ ‫האם‬ ‫מכריעים‬ ‫אנחנו‬ ‫שבהן‬ ‫טיורינג‬ ‫במכונות‬ ‫מדובר‬ .(‫בהמשך‬ ‫יורחב‬ ‫כמובן‬ ‫זה‬ ‫על‬ ‫)אבל‬ .‫רצה‬ ‫שהמכונה‬ :‫סמלים‬ ‫בשלושה‬ ‫נשתמש‬ ,‫הלכסון‬ ‫רעיון‬ ‫את‬ ‫להבין‬ ‫בשביל‬ .‫וההפך‬ -‫ל‬ -‫מ‬ ,‫כלומר‬ ,‫האחרים‬ ‫שני‬ ‫בין‬ ‫המעבר‬ ‫את‬ ‫סמל‬ ‫אשר‬ - ‫ו‬ , , :‫הבאה‬ ‫הטבלה‬ ‫על‬ ‫נסתכל‬ ‫קנטור‬ ‫של‬ ‫האלכסון‬ :6 ‫איור‬ x1 x2 x3 x4 · · · M1 M2 M3 M4 ... ,‫טיורינג‬ ‫מכונות‬ ‫ואינסוף‬ ‫קלטים‬ ‫אינסוף‬ ‫לנו‬ ‫יש‬ ‫כאשר‬ (x) ‫מסוים‬ ‫קלט‬ ‫על‬ (M) ‫מכונה‬ ‫של‬ ‫ריצה‬ ‫מייצג‬ ‫בטבלה‬ ‫תא‬ ‫כל‬ .11 ‫בטבלה‬ ‫פעמים‬ ‫אינסוף‬ ‫מיוצגת‬ Mi ‫מכונה‬ ‫כל‬ ,‫וכמו-כן‬ . :‫מקבלים‬ x2 ‫על‬ M1 ‫את‬ ‫שמריצים‬ ,‫כלומר‬ .‫למשל‬ ⟨M1, x2⟩ = ‫כעת‬ :‫הבאה‬ ‫הפונקציה‬ ‫זאת‬ ‫שם‬ ‫שיש‬ ‫שמה‬ ‫לב‬ ‫נשים‬ :‫באלכסון‬ ‫שקורה‬ ‫מה‬ ‫זה‬ ‫אותנו‬ ‫שמעניין‬ ‫מה‬ ‫אבל‬ ⟨Mi, xi⟩ = { ⟨Mi, xi⟩ = ⟨Mi, xi⟩ = .‫כפלט‬ ‫מכריזה‬ ‫מכונה‬ ‫שאותה‬ ‫ממה‬ ‫ההפך‬ ‫את‬ ‫בדיוק‬ ‫יש‬ ‫באלכסון‬ ,‫כלומר‬ .‫מההוכחות‬ ‫בחלק‬ ‫זה‬ ‫בנתון‬ ‫נשתמש‬11 38
  • 39.
    ‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬39‫החישובים‬ ‫מורכבות‬ ‫העצירה‬ ‫בעיית‬ ‫אי-כריעות‬ ‫הוכחת‬ 39.1 HALT = { ⟨M⟩ , x x ‫קלט‬ ‫על‬ ‫עוצרת‬ M ‫מט‬ } ‫הנחות‬ 39.1.1 .‫קבועה‬ ‫טריוויאלית‬ ‫מט‬ ‫מייצגת‬ Mi ‫אזי‬ ,‫תקינה‬ ‫לא‬ Mi ‫מט‬ ‫אם‬ .‫טיורינג‬ ‫מכונת‬ ‫מייצגת‬ (xi) ‫מחרוזת‬ ‫כל‬ .‫א‬ .(‫מימוש‬ ‫ואותו‬ ‫תכנית‬ ‫)אותה‬ ‫במנייה‬ ‫פעמיים‬ ‫אינסוף‬ ‫מופיעה‬ ‫מכונה‬ ‫כל‬ .‫ב‬ ‫ההוכחה‬ 39.1.2 :i ‫הוכחה‬ HALT ‫את‬ ‫שמכריעה‬ MH ‫מכונה‬ ‫שקיימת‬ ‫בשלילה‬ ‫נניח‬ :‫כלומר‬ ,‫ההפך‬ ‫ומתנהגת‬ MH ⟨⟨Mi⟩ , xi⟩ ‫הריצה‬ ‫את‬ ‫מסמלצת‬ ‫היא‬ :xi ‫קלט‬ ‫על‬ MD ‫מלכסנת‬ ‫מכונה‬ ‫נגדיר‬ ‫של‬ ‫למצב‬ ‫נכנסת‬ MD .‫אינסופית‬ ‫ריצה‬ ,MD (xi) = ∞ ,MH ⟨⟨Mi⟩ , xi⟩ = Accept .‫מיד‬ ‫עוצרת‬ MD ,MD (xi) ̸= ∞ ,MH ⟨⟨Mi⟩ , xi⟩ = Reject . ⊙ -‫ב‬ ‫זאת‬ ‫נסמן‬ .12 xD ‫הקלט‬ ‫על‬ MD ‫את‬ ‫שנריץ‬ ‫הוא‬ ‫שנעשה‬ ‫מה‬ ,‫כעת‬ :‫אפשרויות‬ ‫שתי‬ ‫ישנן‬ ‫כעת‬ MH (⟨ MD ⟩ , xD ) = Reject MH (⟨ MD ⟩ , xD ) = Accept ⇓ MH -‫ש‬ ‫ההנחה‬ ‫לפי‬ HALT ‫את‬ ‫מכריעה‬ ⇓ MD ( xD ) ̸= ∞ MD ( xD ) = ∞ MD ( xD ) = ∞ ⊙ ‫לפי‬ MD ( xD ) ̸= ∞ !‫סתירה‬ !‫סתירה‬ .MD ̸= Mi :i ‫לכל‬ ,‫כלומר‬ ,‫כזאת‬ MD ‫מכונה‬ ‫קיימת‬ ‫שלא‬ ‫ומכאן‬ :6 ‫הסבר‬ :‫כזה‬ ‫הוא‬ ‫בהוכחה‬ ‫הרעיון‬ ‫מכונה‬ ,‫כלומר‬ ,‫מלכנסת‬ ‫מכונה‬ ‫מגדירים‬ ‫אנחנו‬ .HALT ‫את‬ ‫שמכריעה‬ h ‫מכונה‬ ‫קיימת‬ ‫כי‬ ‫בשלילה‬ ‫מניחים‬ ‫אנחנו‬ (‫קנטור‬ ‫של‬ ‫)האלכסון‬ ‫בטבלה‬ ‫האלכסון‬ ‫על‬ ‫רק‬ ‫עובדת‬ ‫המכונה‬ - ‫אחרות‬ ‫במילים‬ .‫בלבד‬ ‫האלכסון‬ ‫על‬ ‫שמשפיעה‬ .‫הופכת‬ ‫היא‬ ‫שם‬ ‫תוצאה‬ ‫-וכל‬ ‫המכונה‬ ,‫כלומר‬ ,‫עצמה‬ ‫של‬ ‫התשובה‬ ‫את‬ ‫הופכת‬ ‫היא‬ ‫ולכן‬ .‫עצמה‬ ‫את‬ ‫למכונה‬ ‫שולחים‬ ‫שאנחנו‬ ‫מכך‬ ‫מגיעה‬ ‫הסתירה‬ .‫אותה‬ ‫שהגדרנו‬ ‫איך‬ ‫עפ‬ ‫תתן‬ ‫היא‬ ‫עצמה‬ ‫את‬ ‫לה‬ ‫שנותנים‬ ‫ברגע‬ ‫אבל‬ ,‫למשל‬ ‫לנו‬ ‫תתן‬ ‫טבעי‬ ‫באופן‬ .‫סתירה‬ ‫וזאת‬ - ‫וגם‬ ‫שגם‬ ‫היא‬ ‫והתשובה‬ ?‫תתן‬ ‫היא‬ ‫פלט‬ ‫איזה‬ - ‫השאלה‬ ‫נשאלת‬ ‫לכן‬ .‫בטבלה‬ ‫נמצאת‬ ‫לא‬ ‫היא‬ ‫כי‬ ‫מכונה‬ ‫קיימת‬ ‫שלא‬ ‫מכך‬ ‫נובע‬ ‫ולכן‬ .‫עצמה‬ ‫את‬ ‫למכונה‬ ‫נותנים‬ ‫אנחנו‬ ,‫כלומר‬ .xD = xl ‫אזי‬ l ‫הוא‬ MD ‫של‬ ‫האינדקס‬ ‫אם‬ ,‫כלומר‬12 39
  • 40.
    ‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬39‫החישובים‬ ‫מורכבות‬ 13 ‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬ 39.2 xi ‫של‬ ‫המשמעות‬ ,‫למשל‬ .‫שם‬ ‫והוסברו‬ ‫כאן‬ ‫הוסברו‬ ‫שלא‬ ‫חלקים‬ ‫יש‬ ‫לכן‬ ,i ‫להוכחה‬ ‫דומים‬ ‫מאוד‬ ‫פרטים‬ ‫בהוכחה‬ ‫יש‬ .‫הדבר‬ ‫אותו‬ ‫היא‬ Mi-‫ו‬ :ii ‫הוכחה‬ .T1 = n2 , T2 = n3 ‫נגדיר‬ .‫בלבד‬ ‫צעדים‬ 14 Θ ( n2 ) ‫למשך‬Mi ‫המכונה‬ ‫של‬ ‫הריצה‬ ‫את‬ ‫מסמלצת‬ xi ‫שעל‬ M′ ‫מלכסנת‬ ‫מט‬ ‫נגדיר‬ :‫האפשרויות‬ ‫שלושת‬ ‫אלו‬ ‫צעדים‬ Θ ( n2 ) ‫לאחר‬ M′ (xi) =    Reject Mi (xi) = Accept Accept Mi (xi) = Reject Reject Mi (xi) = ‫עצרה‬ ‫טרם‬ .(‫במקום‬ Accept ‫גם‬ ‫אפשר‬ ‫השלישי‬ ‫)במקרה‬ :‫בזמן‬ ,‫כלומר‬ ,‫צעדים‬ Θ ( n2 ) ‫של‬ ‫לסימולציה‬ ‫שנדרש‬ ‫בזמן‬ ‫קלט‬ ‫כל‬ ‫על‬ ‫עוצרת‬ M′ Θ ( n2 ln ( n2 )) = Θ ( n2 ln (n) ) ≤ Θ ( n3 ) .AcceptReject ‫שהוא‬ ‫פלט‬ ‫מניבה‬ ‫קלט‬ ‫כל‬ ‫ועל‬ :‫נגדיר‬ L′ = { x M′ (x) = Accept } x ∈ L′ ⇐⇒ M′ (x) = Accept L′ ∈ D − Time ( n3 ) :‫ולכן‬ Θ ( n3 ) ‫בזמן‬ L′ ‫את‬ ‫מכריעה‬ M′ ‫כי‬ ‫הוכחנו‬ :‫ולכן‬ Θ ( n2 ) ‫בזמן‬ L′ ‫את‬ ‫מכריעה‬ ‫לא‬ ‫מכונה‬ ‫אף‬ ‫כי‬ ‫נוכיח‬ (12.1) ‫ההיררכיה‬ ‫משפט‬ ‫את‬ ‫להוכיח‬ ‫בשביל‬ .L′ /∈ D − Time ( n2 ) .‫היותר‬ ‫לכל‬ ‫צעדים‬ Θ ( n2 ) ‫תוך‬ L′ ‫את‬ ‫מכריעה‬ Mi ‫עבורו‬ i ‫שיש‬ ‫בשלילה‬ ‫נניח‬ :M′ (x) ‫ההרצה‬ ‫על‬ ‫נסתכל‬ .(‫הריצה‬ ‫את‬ ‫מסיימת‬ ‫לא‬ ‫)שהמכונה‬ ‫השלישית‬ ‫האפשרות‬ ‫מתקיימת‬ ‫לא‬ ‫צעדים‬ Θ ( n2 ) ‫היותר‬ ‫לכל‬ ‫רצה‬ M′ -‫ש‬ ‫מכיוון‬ :‫אפשרויות‬ ‫שתי‬ ‫ישנן‬ ‫לכן‬ Mi (xi) = Reject Mi (xi) = Accept M′ (xi) = Accept M′ ‫הגדרת‬ ‫לפי‬ M′ (xi) = Reject xi /∈ L′ L′ ‫הגדרת‬ ‫לפי‬ xi /∈ L′ !‫מצב‬ ‫בכל‬ xi ‫על‬ ‫טועה‬ Mi .Θ ( n2 ) -‫ב‬ L′ ‫את‬ ‫מכריעה‬ Mi ‫שעבורו‬ i ‫קיים‬ ‫שלא‬ ‫ומכאן‬ Θ-‫ב‬ ‫טיפול‬ 39.2.1 Time (Mi (x)) ≤ C · n2 :‫כלומר‬ ,C · n2 n2 ‫שבו‬ ‫מצב‬ ‫להיות‬ ‫ויכול‬ ,Θ ( n2 ) = C · n2 - (14) ‫כאן‬ ‫שהוער‬ ‫כמו‬ .‫יקרה‬ ‫לא‬ ‫שזה‬ ‫לדאוג‬ ‫וצריך‬ ‫שני‬ ‫ומתקיימים‬ l i :‫ש‬ ‫כך‬ l ‫קיים‬ Mi ‫עבור‬ ‫ולכן‬ ,‫פעמים‬ ‫אינסוף‬ ‫מופיעה‬ ‫מכונה‬ ‫כל‬ - 6 ‫באיור‬ ‫שנכתב‬ ‫כמו‬ ,‫לכן‬ :‫הבאים‬ ‫התנאים‬ .‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬13 C ∈ N+ ‫כאשר‬ C · n2 ‫במשך‬ ‫תרוץ‬ ‫שהיא‬ ‫היא‬ ‫כאן‬ ‫הכוונה‬14 40
  • 41.
    BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬40‫החישובים‬ ‫מורכבות‬ .Mi = Ml .‫א‬ .C · |xl| 2 ≤ |xl| 2.1 .‫ב‬ :‫ולכן‬ ‫הצליח‬ ‫הלכסון‬ ‫אזי‬ '‫ג‬ ‫במצב‬ ‫לא‬ ‫ואנחנו‬ ‫היות‬ .L′ ‫את‬ ‫מכריעה‬ ‫לא‬ Ml BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ 40 .‫חלקים‬ ‫משני‬ ‫מורכב‬ ‫שהמשפט‬ ‫מכיוון‬ ‫חלקים‬ ‫לשני‬ ‫תחולק‬ BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ .‫האלכסון‬ ‫בשיטת‬ ‫הוכחה‬ ‫היא‬ (40.2 ,BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫שני‬ ‫החלק‬ ‫)הוכחת‬ ‫השנייה‬ ‫ההוכחה‬ 15 BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫הראשון‬ ‫החלק‬ ‫הוכחת‬ 40.1 .PA = NPA ‫מתקיים‬ ‫עבורו‬ A ‫אורקל‬ ‫ישנו‬ ‫כי‬ ‫להראות‬ ‫נרצה‬ .A = TQBF ‫האורקל‬ ‫באמצעות‬ ‫זאת‬ ‫נראה‬ :iii ‫הוכחה‬ .PT QBF = PSPACE = NPT QBF ‫כי‬ ‫נראה‬16 :‫תת-הוכחות‬ ‫שלוש‬ ‫באמצעות‬ ‫זאת‬ ‫נראה‬ .PSPACE ⊆ PT QBF .‫א‬ .PT QBF ⊆ NPT QBF .‫ב‬ .NPT QBF ⊆ PSPACE .‫ג‬ .‫א‬ ,‫כלומר‬ ,‫שלמה‬ PSPACE ‫היא‬ TQBF ‫כי‬ ‫יודעים‬ ‫אנחנו‬ .TQBF ∈ PSPACE ‫וכמו-כן‬ L ≤p TQBF :L ∈ PSPACE ‫לכל‬ .L ∈ P T QBF ⇐ L ∈ P SP ACE : ‫צל‬ :‫הוכחה‬ .TQBF-‫ל‬ ‫אותה‬ ‫שמעביר‬ x ‫קלט‬ ‫על‬ ‫פולינומית‬ ‫רדוקציה‬ ‫קיימת‬ ‫אזי‬ L ∈ PSPACE ‫אם‬ ,‫תשובתו‬ ‫את‬ ‫ונחזיר‬ PT QBF ‫של‬ ‫האורקל‬ ‫את‬ ‫ונשאל‬ x ‫על‬ ‫הרדוקציה‬ ‫את‬ ‫נפעיל‬ .L ∈ PT QBF -‫ש‬ ‫ומכאן‬ .‫ב‬ .L ∈ NP T QBF ⇐ L ∈ P T QBF : ‫צל‬ :‫הוכחה‬ .TQBF ‫של‬ ‫לאורקל‬ ‫פניה‬ ‫באמצעות‬ ‫השפה‬ ‫את‬ ‫ביעילות‬ ‫להכריע‬ ‫ניתן‬ ‫אזי‬ L ∈ PT QBF ‫אם‬ .L ∈ NPT QBF ‫ולכן‬ ‫לא-דטרמיניסטית‬ ‫בצורה‬ ‫ביעילות‬ ‫גם‬ ‫אותה‬ ‫להכריע‬ ‫ניתן‬ ‫שיהיה‬ ‫בוודאי‬ ‫ולכן‬ .‫ג‬ .L ∈ P SP ACE ⇐ L ∈ NP T QBF : ‫צל‬ :‫הוכחה‬ .‫ולא-דטרמיניסטית‬ ‫יעילה‬ ‫בצורה‬ TQBF ‫של‬ ‫האורקל‬ ‫באמצעות‬ L ‫את‬ ‫להכריע‬ ‫ניתן‬ ‫אזי‬ L ∈ NPT QBF ‫אם‬ .‫תשובתו‬ ‫את‬ ‫ונחזיר‬ TQBF ‫של‬ ‫האורקל‬ ‫את‬ ‫ונשאל‬ ‫קלט-קלט‬ ‫שנעבור‬ ‫זה‬ ‫שנעשה‬ ‫מה‬ ,‫לכן‬ :‫אפשרויות‬ ‫שלוש‬ ‫ישנן‬ ‫השני‬ ‫החלק‬ ‫בשביל‬ ‫כאן‬ ‫זה‬ ‫אבל‬ ,‫האלכסון‬ ‫בשיטת‬ ‫הוכחה‬ ‫לא‬ ‫זאת‬15 .‫נכונה‬ ‫בהכרח‬ ‫לא‬ ‫כאן‬ ‫ההוכחה‬16 41
  • 42.
    BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬40‫החישובים‬ ‫מורכבות‬ .x ∈ L-‫ש‬ ‫ומחזירים‬ ‫מסיימים‬ ‫אנחנו‬ - ‫כן‬ ‫מחזיר‬ ‫האורקל‬ .‫א‬ ‫וממשיכים‬ ‫הזיכרון‬ ‫בסרט‬ ‫שיש‬ ‫מה‬ ‫את‬ ‫מוחקים‬ ‫אנחנו‬ - ‫נגמרו‬ ‫לא‬ ‫עוד‬ ‫הקלט‬ ‫ואפשרויות‬ ‫לא‬ ‫מחזיר‬ ‫האורקל‬ .‫ב‬ .(‫זיכרון‬ ‫)מחזור‬ ‫הבא‬ ‫לקלט‬ .x /∈ L-‫ש‬ ‫ומחזירים‬ ‫מסיימים‬ ‫אנחנו‬ - ‫קלט‬ ‫אפשרויות‬ ‫יותר‬ ‫ואין‬ ‫לא‬ ‫אומר‬ ‫האורקל‬ .‫ג‬ ‫שהיא‬ ‫בשפה‬ ‫מדובר‬ ‫אזי‬ ,(‫פולינומית‬ ‫חסום‬ TQBF ‫של‬ ‫)הקלט‬ ‫פולינומית‬ ‫חוסם‬ ‫הוא‬ ‫הקלט‬ ‫ואורך‬ ‫זיכרון‬ ‫ומחזרנו‬ ‫היות‬ .PSPACE-‫ב‬ .L ∈ PSPACE ,‫כלומר‬ BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫שני‬ ‫החלק‬ ‫הוכחת‬ 40.2 :‫יתקיים‬ ‫עבורם‬ L ‫ושפה‬ O ‫אורקל‬ ‫ישנו‬ ‫כי‬ ‫להראות‬ ‫נרצה‬ ‫אנחנו‬ 29.2 ‫משפט‬ ‫את‬ ‫להוכיח‬ ‫בשביל‬ L ∈ NPO PO .L /∈ PO ,‫כלומר‬ :iv ‫הוכחה‬ :‫הבאה‬ ‫השפה‬ ‫על‬ ‫נסתכל‬ L = LO = { 1n n ‫באורך‬ ‫מחרוזת‬ O − ‫ב‬ ‫יש‬ } :‫למשל‬ O = {01, 11, 1010, 1111, . . .} 11 , 13 , 19 /∈ L 12 , 16 , 114 ∈ L On = { x ∈ O |x| = n } .(O ‫אורקל‬ ‫)לכל‬ Lo ∈ NPO .‫כמותו‬ ‫ותענה‬ x ? ∈ O ‫האורקל‬ ‫את‬ ‫תשאל‬ x ∈ {0, 1} n ‫תנחש‬ M ‫מטלד‬ 1n ‫קלט‬ ‫בהינתן‬ .(‫)תקבל‬ MO (1n ) = Accept ‫ואז‬ ‫כן‬ ‫יענה‬ O ‫עבורו‬ x ‫ניחוש‬ ‫יש‬ 1n ∈ LO .(‫)תדחה‬ MO (1n ) = Reject ‫ואז‬ ‫לא‬ ‫יענה‬ O x ‫ניחוש‬ ‫לכל‬ 1n /∈ LO ?L /∈ P O ‫שיתקיים‬ ‫כך‬ O ‫את‬ ‫נגדיר‬ ‫איך‬ (‫הלכסון‬ ‫בשיטת‬ ‫נשתמש‬ ‫אנחנו‬ ‫אבל‬ ,‫הסתברותית‬ ‫שיטה‬ ‫)ישנה‬ .‫שאלות‬ 2n − 1 ‫היותר‬ ‫לכל‬ ‫שואלת‬ ‫היא‬ 1n ‫קלט‬ ‫על‬ ‫אם‬ ,‫כלומר‬ ,‫סבירה‬ M ‫מכונה‬ ‫נגדיר‬ .yi /∈ On ‫סופית‬ ‫נכריע‬ y1, . . . , ym ‫שאילתה‬ ‫לכל‬ :‫אפשרויות‬ ‫שתי‬ ‫ישנן‬ y ∈ {0, 1} n ‫עבור‬ MO (1n ) = Reject MO (1n ) = Accept .‫ריקה‬ On-‫ש‬ ‫טוענת‬ Mn ‫נגדיר‬ y /∈ {y1, . . . , ym} ‫לכל‬ .On ̸= ∅ ‫ואז‬ y ∈ On .‫ריקה‬ ‫לא‬ On-‫ש‬ ‫טוענת‬ Mn ‫נגדיר‬ y /∈ {y1, . . . , ym} ‫לכל‬ .On = ∅ ‫ואז‬ y /∈ On 1n ‫על‬ ‫טועה‬ Mn 1n ‫על‬ ‫טועה‬ Mn :‫בעיות‬ ‫בשתי‬ ‫לטפל‬ ‫לנו‬ ‫נשאר‬ ‫ההוכחה‬ ‫את‬ ‫להשלים‬ ‫בשביל‬ ‫כעת‬ 42
  • 43.
    ‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬‫ההוכחה‬ 41‫החישובים‬ ‫מורכבות‬ Θ-‫ב‬ ‫טיפול‬ 40.2.1 .(‫בעיקרון‬ ‫בעיה‬ ‫)אותה‬ (39.2) ‫ההיררכיה‬ ‫משפט‬ ‫בהוכחת‬ Θ-‫ב‬ ‫טיפול‬ ‫של‬ ‫למקרה‬ ‫דומה‬ Θ-‫ב‬ ‫הטיפול‬ .C · n′k ≤ 2n′ − 1-‫ו‬ Mn = Mn′ -‫ש‬ ‫שיתקיים‬ ‫כך‬ n′ n ‫נחפש‬ ‫אנחנו‬ ‫שכאן‬ ‫רק‬ ‫טופלו‬ ‫שכבר‬ ‫בקלטים‬ ‫טיפול‬ 40.2.2 ‫תוכל‬ ‫פשוט‬ ‫היא‬ ‫ואז‬ ‫בהם‬ ‫לגעת‬ ‫שנרצה‬ ‫מסוימים‬ ‫בקלטים‬ ‫כבר‬ ‫טיפלה‬ Mn-‫ש‬ ‫להיות‬ ‫שיכול‬ ‫היא‬ ‫הגדולות‬ ‫הבעיות‬ ‫אחת‬ .2n − 1 ‫של‬ ‫המחסום‬ ‫את‬ ‫לעקוף‬ ‫וככה‬ ‫עליהם‬ ‫לדלג‬ ‫קודמות‬ ‫שמכונות‬ ‫להיות‬ ‫יכול‬ ‫אבל‬ ,n ‫באורך‬ ‫שאילתות‬ ‫רק‬ ‫נשאלות‬ Mn (1n ) ‫בריצת‬ 1n ‫קלט‬ ‫שעל‬ ‫הנחנו‬ ‫אנחנו‬ ,‫כלומר‬ (‫אלו‬ ‫קלטים‬ ‫על‬ ‫שאלו‬ ‫כבר‬ n-‫מ‬ ‫קטן‬ ‫שלהן‬ ‫שהאינדקס‬ ‫)כאלה‬ ‫על‬ Mn ‫את‬ ‫נריץ‬ ‫ואז‬ ,n-‫מ‬ ‫קטן‬ ‫הסידורי‬ ‫שמספרן‬ ‫המכונות‬ ‫כל‬ ‫את‬ ‫נריץ‬ Θ-‫ב‬ ‫שטיפלנו‬ ‫שאחרי‬ ‫הוא‬ ‫שנעשה‬ ‫מה‬ ,‫לכן‬ .‫הקודמות‬ ‫המכונות‬ ‫של‬ ‫בשאילתות‬ ‫הופיע‬ ‫שלא‬ ‫ביותר‬ ‫הקטן‬ ‫המחרוזת‬ ‫אורך‬ = s ‫כאשר‬ 1s ‫קלט‬ .‫פולינומי‬ ‫בזמן‬ On ‫את‬ ‫להכריע‬ ‫יכולה‬ ‫לא‬ ‫והיא‬ L /∈ PO ‫כי‬ ‫יודעים‬ ‫אנחנו‬ ‫אלו‬ ‫בעיות‬ ‫בשתי‬ ‫שטיפלנו‬ ‫אחרי‬ :7 ‫הסבר‬ :‫הוא‬ ‫כאן‬ ‫ההוכחה‬ ‫של‬ ‫הרעיון‬ ‫שהיא‬ ‫מה‬ .‫לא‬ ‫או‬ On-‫ב‬ y ‫האם‬ ‫לנחש‬ ‫לה‬ ‫ונותנים‬ ,(‫לנו‬ ‫)מותר‬ ‫שאילתות‬ 2n − 1-‫ל‬ ‫המכונה‬ ‫את‬ ‫מגבילים‬ ‫אנחנו‬ .‫ההפך‬ ‫נענה‬ ‫תמיד‬ ‫אנחנו‬ - ‫תענה‬ ‫לא‬ ?‫איך‬ - ‫שאילתות‬ 2n − 1-‫ל‬ ‫המכונה‬ ‫את‬ ‫מגבילים‬ ‫שאנחנו‬ ‫וברגע‬ ,‫אפשרויות‬ 2n ‫ישנן‬ ‫אזי‬ {0, 1} n ‫וקטור‬ ‫על‬ ‫מדובר‬ ‫אם‬ ‫קודמות‬ ‫שמכונות‬ ‫קלטים‬ ‫יש‬ ‫אם‬ ‫)ומה‬ .‫אקספוננציאלי‬ ‫בזמן‬ ‫רק‬ ‫אלא‬ ‫כולם‬ ‫על‬ ‫לשאול‬ ‫תוכל‬ ‫לא‬ ‫שהיא‬ ‫בוודאי‬ ‫אזי‬ .40.2.2 :‫כאן‬ ‫נידון‬ ‫זה‬ ?‫צעדים‬ 2n ‫לעשות‬ ‫וכן‬ ‫הללו‬ ‫מהשאלות‬ ‫להתעלם‬ ‫תוכל‬ ‫היא‬ ‫ואז‬ ‫בעבר‬ ‫עליהם‬ ‫שאלו‬ ‫וההפך‬ ‫שלא‬ ‫נגיד‬ ‫אז‬ On-‫ב‬ ‫שהם‬ ‫תחליט‬ ‫היא‬ ‫ואם‬ - ‫אליהם‬ ‫תגיע‬ ‫לא‬ ‫שהמכונה‬ ‫קלטים‬ ‫יהיו‬ ‫תמיד‬ - ‫בקיצור‬ ‫לכן‬ . ‫לרצוננו‬ ‫בהתאם‬ ‫להחליט‬ ‫שנוכל‬ ‫אחת‬ ‫מחרוזת‬ ‫לפחות‬ ‫יש‬ ‫)תמיד‬ .‫פולינומי‬ ‫בזמן‬ L ‫את‬ ‫מכריעה‬ ‫שלא‬ ‫מכונה‬ ‫ליצור‬ ‫הצלחנו‬ ‫הלכסון‬ ‫באמצעות‬ ‫וכך‬ ‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫ההוכחה‬ 41 ‫ואת‬ ‫אלגוריתם‬ ‫באמצעות‬ ‫הראשון‬ .‫הסעיפים‬ ‫שני‬ ‫את‬ ‫נוכיח‬ ,(27.2) ‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫להוכיח‬ ‫בשביל‬ .‫רדוקציה‬ ‫באמצעות‬ ‫השני‬ TQBF ∈ D − SPACE ‫וגם‬ TQBF ∈ PSPACE 41.1 :v ‫הוכחה‬ TQBF ‫להכרעת‬ ‫אלגוריתם‬ 1 ‫אלגוריתם‬ :ψ = ∃x1 (· · · ) ‫מהצורה‬ ‫הקלט‬ ‫אם‬ .‫א‬ .‫התשובה‬ ‫את‬ ‫ונחזיר‬ ψx1←T ∈ TQBF ∨ ψx1←F ∈ TQBF ‫האם‬ ‫רקורסיבית‬ ‫נבדוק‬ (1) :ψ = ∀x1 (· · · ) ‫מהצורה‬ ‫הקלט‬ ‫אם‬ .‫ב‬ .‫התשובה‬ ‫את‬ ‫ונחזיר‬ ψx1←T ∈ TQBF ∧ ψx1←F ∈ TQBF ‫האם‬ ‫רקורסיבית‬ ‫נבדוק‬ (1) 43
  • 44.
    ‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬‫ההוכחה‬ 41‫החישובים‬ ‫מורכבות‬ .‫הכמתים‬ ‫מספר‬ - m S (m, l) = 2S (m − 1, l) 2m ‫פתרון‬ .2-‫ה‬ ‫את‬ ‫ונוריד‬ ‫זיכרון‬ ‫במחזור‬ ‫נשתמש‬ ‫לכן‬ ,2m ‫פתרון‬ ‫עם‬ ‫נסיגה‬ ‫נוסחת‬ ‫זוהי‬ S (m, l) = Θ (m) + O (l) .‫לינארי‬ ‫בזיכרון‬ ‫פתרון‬ ‫-שלמה‬PSPACE ‫היא‬ TQBF 41.2 ‫נצטרך‬ ‫כך‬ ‫ובשביל‬ ‫פולינומית‬ ‫רדוקציה‬ ‫נצטרך‬ ‫-שלמה‬PSPACE ‫שהיא‬ ‫כי‬ ‫להוכיח‬ ‫בשביל‬ ‫כעת‬ :‫חדש‬ ‫מושג‬ ‫קונפיגורציות‬ ‫גרף‬ 41.2.1 GFED@ABCCi eeeeee GFED@ABCCI GFED@ABCCj // GFED@ABCCA ‫לדוגמה‬ ‫קונפיגורציות‬ ‫גרף‬ :7 ‫איור‬ :‫וכאשר‬ ‫קודקוד‬ ‫היא‬ ‫קונפיגורציה‬ ‫כל‬ ‫כאשר‬ ,‫במכונה‬ ‫האפשריות‬ ‫הקונפיגורציות‬ ‫כל‬ ‫את‬ ‫מכיל‬ ‫אשר‬ G ‫גרף‬ ‫זהו‬ .‫יחידה‬ ‫התחלתית‬ ‫קונפיגורציה‬ - CI .(‫לאחת‬ ‫כולן‬ ‫את‬ ‫נרכז‬ ‫אבל‬ ,‫יותר‬ ‫שיש‬ ‫להיות‬ ‫)יכול‬ ‫יחידה‬ ‫מקבלת‬ ‫קונפיגורציה‬ - CA .‫יחיד‬ ‫בצעד‬ Cj-‫ל‬ Ci-‫מ‬ ‫לעבור‬ ‫יכול‬ ‫החישוב‬ ‫אםם‬ Ci → Cj ‫מכוונת‬ ‫צלע‬ .(‫הלד‬ ‫במובן‬ ‫או‬ ‫הדטרמיניסטי‬ ‫)במובן‬ M (x) = Accept ⇐⇒ CI CA ‫מסלול‬ G ‫בגרף‬ ‫קיים‬ :‫ישנן‬ ‫קונפיגורציות‬ ‫כמה‬ n · S · |Σ| S · |Q| = n · 2Θ(S) = ⊙ 2Θ(S) . n = Ω (log n)-‫ש‬ ‫בהנחה‬ - ⊙ .(⊙-‫ש‬ ‫בטוח‬ ‫לא‬ ‫)כי‬ T := |V | = n · 2Θ(S) :‫היותר‬ ‫לכל‬ ‫מסלול‬ ‫אורך‬ .1 ‫היא‬ ‫היציאה‬ ‫דרגת‬ ‫קודקוד‬ ‫לכל‬ - ‫דטרמיניסטי‬ ‫בחישוב‬ .1-‫מ‬ ‫גדולה‬ ‫יציאה‬ ‫דרגת‬ ‫עם‬ ‫קודקודים‬ ‫ייתכנו‬ - ‫לד‬ ‫בחישוב‬ L ≤p TQBF 41.2.2 (L ∈ PSPACE ‫)כאשר‬ .f (x) = ψ ∈ TQBF :‫הרדוקציה‬ ‫פלט‬ ,x ∈ L :‫הרדוקציה‬ ‫קלט‬ .|p| ≤ T ‫כאשר‬ x ∈ L ⇐⇒ ∃p CI CA ⇐⇒ ‫אמיתי‬ ‫פסוק‬ ψ .x /∈ L ⇐⇒ ‫כנל‬ ‫מסלול‬ ‫אין‬ ⇐⇒ ‫שקרי‬ ‫פסוק‬ ψ 44
  • 45.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ :‫חדשה‬ ‫שפה‬ ‫נגדיר‬ PATH (Ci, Cj, t) =    ‫שיש‬ ‫שפירושו‬ ‫פסוק‬ ‫מסלול‬ ‫בגרף‬ t ≥ ‫שאורכו‬ Ci Cj    ψ = PATH (CI, CA, T) :‫ולכן‬ ,‫קונפיגורציה‬ D-‫ב‬ ‫נסמן‬ |D| = log |Q| ‫פנימי‬ ‫מצב‬ · log |S| · log (n) ‫קוראים‬ ‫ראשים‬ ·Θ (S) :(‫וישנו‬ ‫במידה‬ CI CA ‫של‬ ‫לאמצע‬ ,‫)כלומר‬ ‫לאמצע‬ ‫חיפש‬ ‫נעשה‬ PATH (Ci, Cj, t) = ∃D∀E1E2 [(E1 = Ci ∧ E2 = D) ∨ (E1 = D ∧ E2 = Cj)] −→ PATH ( E1, E2, t 2 ) :8 ‫הסבר‬ .‫ממנה‬ ‫לחצי‬ ‫נגיע‬ ‫פעם‬ ‫כל‬ ‫אנחנו‬ ‫אזי‬ CI CA ‫מסילה‬ ‫ישנה‬ ‫שאם‬ ‫הוא‬ ,PATH ‫של‬ ,‫כאן‬ ‫הרקורסיה‬ ‫של‬ ‫הרעיון‬ ‫יהיו‬ ‫לא‬ ‫שניהם‬ ‫פעם‬ ‫אף‬ ‫אבל‬ T-‫ה‬ ‫את‬ ‫שמקבל‬ ‫הוא‬ ‫אחר‬ ‫חצי‬ ‫פעם‬ ‫וכל‬ P ∨ Q → R :‫כך‬ ‫בנויה‬ ‫הנוסחה‬ ,‫כלומר‬ .T ‫ביטוי‬ ‫נקבל‬ ‫הרקורסיה‬ ‫כל‬ ‫עם‬ ‫שנסיים‬ ‫אחרי‬ ,‫שלבסוף‬ ‫עד‬ - (‫בחצי‬ ‫נתקדם‬ ‫)וגם‬ ‫בחצי‬ ‫נרד‬ ‫פעם‬ ‫כל‬ ‫אנחנו‬ ‫וככה‬ .CI CA ‫מסילה‬ ‫ויש‬ ‫במידה‬ ‫אמיתי‬ ‫שיהיה‬ TQBF ‫של‬ ‫מהצורה‬ .‫הרדוקציה‬ ‫רעיון‬ ‫זה‬ |PATH (· · · , t)| = ¡2 · PATH ( · · · , t 2 ) + 11 · |D| Θ(S) +14 = (log T) · Θ (S) = Θ ( S2 ) ,‫נוסחה‬ ‫בכל‬ ‫לנו‬ ‫שיש‬ ‫הכמתים‬ ‫כל‬ ‫בגלל‬ ‫זה‬ - 14-‫ה‬ .T = 2Θ(S) -‫ו‬ :(Cook-Levin)‫קוק-לווין‬ ‫עפ‬ :(1 ‫של‬ ‫אורך‬ ‫)ויש‬ ‫לסוף‬ ‫מגיעים‬ ‫כאשר‬ PATH ( , , 1) Θ(S2) ‫ההסבר‬ ‫כולל‬ ‫נמצאת‬ ‫)והיא‬ 2m ‫הוא‬ ‫שלה‬ ‫שהפתרון‬ S (m, l) = S (m − 1, l) ‫שהיא‬ ‫המקורית‬ ‫הנוסחה‬ ‫במקום‬ ‫וזה‬ .(v ‫בהוכחה‬ ‫זמן‬ ‫ואילו‬ Θ ( S2 ) :‫הוא‬ ‫הפסוק‬ ‫אורך‬ ‫כאשר‬ TQBF ‫בצורת‬ ‫פסוק‬ ‫מקבלים‬ ‫בהתחלה‬ ‫הכמתים‬ ‫כל‬ ‫את‬ ‫מרכזים‬ ‫אם‬ .(28.1 ‫משפט‬ ‫את‬ ‫לנו‬ ‫מוכיחה‬ ‫הזאת‬ ‫)והמסקנה‬ .Θ ( S2 ) :‫הוא‬ ‫הפסוק‬ ‫חישוב‬ NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42 .‫קוראים‬ ‫שאנחנו‬ ‫הביטים‬ ‫מספר‬ ‫הוא‬ q-‫ו‬ ‫המטבע‬ ‫הטלות‬ ‫מספר‬ ‫זה‬ r ‫כאשר‬ L ∈ PCP (r, q) :‫כזכור‬ 45
  • 46.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ ‫להוכחה‬ ‫כלים‬ 42.1 .‫כלים‬ ‫מספר‬ ‫נצטרך‬ ‫המשפט‬ ‫הוכחת‬ ‫בשביל‬ ‫ווקטורים‬ ‫על‬ ‫פעולות‬ 42.1.1 :‫כלומר‬ ,Z2-‫ב‬ ‫יהיו‬ ‫בהוכחה‬ ‫כאן‬ ‫אליהם‬ ‫שנתייחס‬ ‫הווקטורים‬ ‫כל‬ .⃗x, ⃗y, ⃗u,⃗v, . . . ∈ {0, 1} n .‫א‬ .Z2-‫ב‬ ‫יהיו‬ ‫שנעשה‬ ‫הפעולות‬ ‫כל‬ .‫ב‬ ‫חיבור‬ ⃗z = ⃗x + ⃗y ⇒ ∀i (xi + yy = zi) ‫פנימית‬ ‫מכפלה‬ ⟨⃗x, ⃗y⟩ = n∑ i=1 xi · yi .(|⃗x| = |⃗y|-‫ש‬ ‫בתנאי‬ ‫כמובן‬ ‫)וזה‬ ‫מטריצות‬ ‫על‬ ‫פעולות‬ 42.1.2 :‫הבא‬ ‫באופן‬ 17 ‫מטריצה‬ ‫נגדיר‬ .j ‫בעמודה‬ i ‫בשורה‬ ‫הנמצא‬ ‫האיבר‬ ‫את‬ ‫מסמל‬ Ai,j ‫האיבר‬ ,n × n ‫מסדר‬ ‫מטרצה‬ A ‫תהא‬ A = ( A1,1 A1,2 A2,1 A2,2 ) .n × n ‫מסדר‬ ‫מטריצות‬ ‫שתי‬ A, B ‫יהיו‬ ‫מטריצות‬ ‫חיבור‬ :i, j ‫לכל‬ ‫אזי‬ Ai + Bi = Ci .(C = A + B :‫כלומר‬ ,‫החיבור‬ ‫מטריצת‬ ‫היא‬ C ‫)כאשר‬ :A, B ‫מטריצות‬ ‫בהינתן‬ ‫מטריצות‬ ‫של‬ ‫פנימית‬ ‫מכפלה‬ ⟨A, B⟩ = n∑ i=1   n∑ j=1 Ai,j · Bi,j   :‫הבא‬ ‫באופן‬ A = ⃗x ⊗ ⃗y ‫מטריצה‬ ‫נגדיר‬ ,⃗x, ⃗y ‫וקטורים‬ ‫שני‬ ‫בהינתן‬ ‫טנזורית‬ ‫מכפלה‬ Ai,j = xi · yj .n ‫עד‬ 1-‫מ‬ ‫אחד‬ ‫כל‬ ‫רצים‬ (i, j) ‫והאינדקסים‬ n × n ‫מסדר‬ ‫היא‬ A ‫המטריצה‬ .‫כמובן‬ ‫בולאנית‬ ‫מטריצה‬ ‫על‬ ‫כאן‬ ‫מדובר‬17 46
  • 47.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ ‫וולש-הדמרד‬ ‫קוד‬ 42.1.3 :‫הבא‬ ‫באופן‬ f⃗u ∈ Hn ‫הפונקציה‬ ‫את‬ ‫נגדיר‬ ⃗u ‫וקטור‬ ‫בהינתן‬ f⃗u (⃗x) = ⟨⃗u, ⃗x⟩ :‫כאשר‬ WH : {0, 1} n → {0, 1} 2n :‫פונקציה‬ ‫הינו‬ ‫וולש-הדמרד‬ ‫קוד‬ :‫למשל‬ n = 2 ‫עבור‬ WH (⃗u) = (⟨⃗u, (0, 0)⟩ , ⟨⃗u, (0, 1)⟩ , ⟨⃗u, (1, 0)⟩ , ⟨⃗u, (1, 1)⟩) :‫נקבל‬ ,⃗u = {0, 1} ‫ועבור‬ WH (⃗u) = (0, 1, 0, 1) NP ⊇ PCP (Θ (log n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.2 :vi ‫הוכחה‬ .L ∈ PCP (Θ (log n) , d) ‫שעבורו‬ ‫מוודא‬ - VP CP ‫שיש‬ ‫נתון‬ .L ∈ NP ‫שעבורו‬ ‫מוודא‬ - VNP :‫צל‬ :‫כך‬ ‫פועל‬ VNP ‫המוודא‬ P ‫וטיעון‬ x ‫קלט‬ ‫על‬ ‫עם‬ VP CP ‫של‬ ‫ריצה‬ ‫יסמלץ‬ VNP ‫הטלות‬ ‫של‬ ‫תוצאה‬ ‫לכל‬ .VP CP ‫של‬ ‫מטבע‬ ‫הטלת‬ ‫של‬ ‫אפשריות‬ ‫תוצאות‬ 2r ‫סורק‬ .‫מטבע‬ ‫הטלות‬ .‫התוצאות‬ ‫רוב‬ ‫לפי‬ ‫עונה‬ VNP ‫הסריקה‬ ‫בסיום‬ :‫הריצה‬ ‫זמן‬ 2r ≤2C log n−nc · Time (VP CP (· · · )) poly(n) poly(n) ≥ VNP .(‫האפשרויות‬ ‫כל‬ ‫על‬ ‫עברנו‬ ‫)כי‬ 0 :‫מטבע‬ ‫הטלות‬ ?‫מההוכחה‬ ‫קראנו‬ ‫ביטים‬ ‫כמה‬ :‫הוא‬ ‫הביטים‬ ‫מספר‬ ,‫לכן‬ .‫קורא‬ VP CP -‫ש‬ ‫הביטים‬ ‫מספר‬ ‫הוא‬ d .|P | ≤ poly (n) ‫בהכ‬ ‫ולכן‬ ,poly (n) ≥ 2r · d :‫שלמות‬ :(31.1) ‫ב-שלמות‬ ‫שמובטח‬ P ‫לאותו‬ ‫אזי‬ x ∈ L ‫אם‬ Pr (VP CP (x, P) = Accept) ≥ 2 3 1 2 .∃P VNP (x, P) = Accept :‫כלומר‬ .Accept ‫יענה‬ VNP P ‫לאותו‬ ‫ולכן‬ :‫נאותות‬ :‫ולכן‬ Pr (· · · ) 1 3 1 2 :‫מתקיים‬ P ‫לכל‬ ‫אזי‬ x /∈ L ‫אם‬ ∀P VNP (x, P) = Reject NP ⊆ PCP (poly (n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.3 .(poly ‫על‬ ‫נוכיח‬ log ‫)במקום‬ ‫המקורי‬ ‫המשפט‬ ‫של‬ ‫מוחלשת‬ ‫גרסה‬ ‫זאת‬ ‫כאן‬ ‫מוכיחים‬ ‫שאנחנו‬ ‫מה‬ .‫-שלמה‬NP ‫שהיא‬ ‫לשפה‬ ‫ברדוקציה‬ ‫שנתחיל‬ ‫בכך‬ ‫לכך‬ ‫ההוכחה‬ ‫את‬ ‫נראה‬ :‫בהוכחה‬ ‫לנו‬ ‫שיעזרו‬ ‫כלים‬ ‫כמה‬ ‫נכיר‬ ‫כל‬ ‫קודם‬ 47
  • 48.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ QE ‫שנייה‬ ‫ממעלה‬ ‫משאוות‬ 42.3.1 .Z2 ‫מעל‬ ‫משתנים‬ n-‫ו‬ ‫משוואת‬ m ‫של‬ S ‫מערכת‬ ‫זוהי‬ :42.1 ‫דוגמא‬ :‫משתנים‬ 5 ‫עבור‬ ‫משוואת‬ 3 ‫של‬ ‫למערכת‬ ‫דוגמה‬ ‫הנה‬ ,‫למשל‬ x1x2 + x1x3 = 1 x2x4 + x2 1 + x3 = 0 x1 + x3 = 1 ‫כך‬ x1, . . . , x5 ‫למשתנים‬ ‫השמה‬ ‫קיימת‬ ‫האם‬ ,‫כלומר‬ ,‫ספיקה‬ (‫)שלמעלה‬ S ‫המערכת‬ ‫היא‬ ‫המעניינת‬ ‫השאלה‬ :‫למשל‬ ,‫שווים‬ ‫יהיה‬ ‫הצדדים‬ ‫שני‬ ,‫כלומר‬ ,‫תספק‬ ‫שההשמה‬ .‫א‬ x3 = x5 = 0-‫ו‬ x1 = x2 = x4 = 1 .‫מספקת‬ ‫הייתה‬ ‫עדיין‬ ‫וההשמה‬ 0 ‫ערך‬ ‫גם‬ ‫לתת‬ ‫ניתן‬ ‫היה‬ ‫אזי‬ ,‫במשוואה‬ ‫מופיע‬ ‫אינו‬ x5-‫ש‬ ‫בגלל‬‫א‬ .S ‫של‬ ‫הימני‬ ‫לצד‬ ‫השמאלי‬ ‫בצד‬ ‫בין‬ ‫שיווין‬ ‫נקבל‬ ‫אלו‬ ‫ערכים‬ ‫את‬ ‫נציב‬ ‫אם‬ :42.1 ‫משפט‬ ⃗c ∈ {0, 1} m ‫ניקח‬ ‫אם‬ ‫אזי‬ ,(‫השמה‬ ‫משתנה‬ ‫)לכל‬ n ‫בגודל‬ ⃗u ∈ {0, 1} n ‫השמות‬ ‫של‬ ‫ווקטור‬ S ‫מערכת‬ ‫לנו‬ ‫ונתונה‬ ‫נניח‬ 18 :‫אזי‬ ,S′ ⊆ S ‫תת-מערכת‬ ‫זה‬ ‫לנו‬ ‫שיש‬ ‫מה‬ ‫כעת‬ .mi ‫בקואורדינטה‬ i ‫משוואה‬ ‫כל‬ ‫ונכפול‬ (m ‫בגודל‬ ⃗c ‫)וקטור‬ .S′ ‫את‬ ‫גם‬ ‫מספקת‬ ‫היא‬ ‫אזי‬ S ‫את‬ ‫מספקת‬ ⃗u ‫אם‬ .‫א‬ .Pr [S′ ‫את‬ ‫מספקת‬ ⃗u] = 1 2 :‫אזי‬ S ‫את‬ ‫מספקת‬ ‫אינה‬ ⃗u ‫אם‬ .‫ב‬ 3 − SAT ≤p QE 42.3.2 :3 − SAT ≤p QE ‫פולינומית‬ ‫רדוקציה‬ ‫כעת‬ ‫נראה‬ .3 − CNF ‫בצורת‬ ‫משתנים‬ n-‫ו‬ ‫פסוקיות‬ m ‫לנו‬ ‫נותנים‬ .‫איברים‬ ‫שלושה‬ ‫עם‬ ‫למשוואה‬ ‫פסוקית‬ ‫כל‬ ‫נמיר‬ ‫השמאלי‬ ‫בצד‬ 1 ‫הערך‬ ‫את‬ ‫משווה‬ ‫בכל‬ ‫נשים‬ ‫בהמרה‬ ‫אזי‬ ‫אמת‬ ‫ערך‬ ‫בעלות‬ ‫להיות‬ ‫צריכות‬ ‫הפסוקיות‬ ‫וכל‬ ‫היות‬ ,‫כעת‬ :‫כלומר‬ ,‫דה-מורגן‬ ‫באמצעות‬ ‫הכמתים‬ ‫את‬ ‫ונמיר‬ (x1 ∨ x2 ∨ x3) ≡ ¬ (x1 ∧ x2 ∧ x3) ≡ 1 − x1 · (1 − x2) · x3 = 1 :‫הבא‬ ‫הדבר‬ ‫את‬ ‫נעשה‬ ‫זאת‬ ‫לפתור‬ ‫כדי‬ ,‫אסור‬ ‫וזה‬ ‫שלישית‬ ‫ממעלה‬ ‫איבר‬ ‫לנו‬ ‫יש‬ ‫כי‬ ‫לב‬ ‫נשים‬ ,‫כעת‬ .y2,3 = x2 · x3 ‫משוואה‬ ‫ונוסיף‬ x1 · y2,3 :‫נכתוב‬ x1 · x2 · x3 ‫במקום‬ .3 − SAT-‫ל‬ NP-‫ב‬ ‫בעיה‬ ‫כל‬ ‫להמיר‬ ‫ניתן‬ ‫כי‬ ‫יודעים‬ ‫אנו‬ ,‫זאת‬ ‫שהגדרנו‬ ‫אחרי‬ ‫כעת‬ 19 ?‫זאת‬ ‫נעשה‬ ‫כיצד‬ ‫אז‬ ,‫ביטים‬ Θ (1) ‫לדגום‬ ‫הוא‬ ‫אותנו‬ ‫שמעניין‬ ‫מה‬ ‫אבל‬ ‫נחבר‬ ‫ואז‬ ci ‫בקואורדינטה‬ i ‫משוואה‬ ‫כל‬ ‫ונכפול‬ (‫המשוואות‬ ‫מספר‬ ‫)כגודל‬ ⃗c ∈ {0, 1} m ‫וקטור‬ ‫שניקח‬ ‫הוא‬ ‫שנעשה‬ ‫מה‬ .20 ⃗c ‫של‬ '‫בקור‬ ‫אותן‬ ‫שהכפלנו‬ ‫אחרי‬ ‫המשוואות‬ ‫כל‬ ‫את‬ .‫הוכחה‬ ‫ללא‬ ‫נשאיר‬ ‫הנל‬ ‫המשפט‬ ‫את‬18 .Θ (1) ‫לא‬ ‫זה‬ ‫אזי‬ ‫המשוואות/משתנים‬ ‫במספר‬ ‫תלויים‬ ‫אנחנו‬ ‫אם‬ ‫כי‬19 ‫לנו‬ ‫בוחר‬ ⃗c - ‫אחרות‬ ‫במילים‬ .‫שהיא‬ ‫כמו‬ ‫נשארת‬ ‫היא‬ ‫אזי‬ 1-‫ב‬ ‫אותה‬ ‫כפלנו‬ ‫ואם‬ ‫אותה‬ ‫השמטנו‬ ‫אזי‬ 0-‫ב‬ ‫משוואה‬ ‫כפלנו‬ ‫שאם‬ ‫לם‬ ‫לשים‬ ‫כדאי‬20 .‫לסכום‬ ‫משוואת‬ ‫אילו‬ 48
  • 49.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ :42.2 ‫דוגמא‬ .⃗c = {0, 1, 1} ‫הווקטור‬ ‫את‬ ‫ניקח‬ 42.1 ‫דוגמה‬ ‫עבור‬ ,‫למשל‬ :‫והשלישית‬ ‫השנייה‬ ‫המשוואה‬ ‫את‬ ‫רק‬ ‫נסכום‬ ‫אנחנו‬ ,‫כלומר‬ x2x4 + x2 1 + x3 = 0 x1 + x3 = 1 :‫הוא‬ ‫שנקבל‬ ‫מה‬ x2 1 + x2x4 + x1 = 1 .(‫מצטמצם‬ ‫הוא‬ ‫ולכן‬ x3 + x3 = 0 ‫)כי‬ ‫ההוכחה‬ ‫של‬ ‫המרכזי‬ ‫הרעיון‬ - (‫המאמת‬ ‫)של‬ V ‫של‬ ‫תפקידו‬ 42.3.3 ‫מהן‬ ‫אחת‬ ‫כל‬ ‫נסכום‬ ,21 ‫לא‬ ‫ואיזה‬ ‫להכניס‬ ‫משוואות‬ ‫אילו‬ ‫של‬ ‫האפשרויות‬ ‫כל‬ ‫את‬ ‫שיכלול‬ 2m ‫באורך‬ ⃗e1 ‫וקטור‬ ‫יוצר‬ V .‫התוצאה‬ ‫את‬ ‫ונרשום‬ ‫ההשמה‬ ‫את‬ ‫נשים‬ ,(‫שמאל‬ ‫אגף‬ ‫)את‬ :42.1 ‫בדוגמה‬ ,‫למשל‬ ⃗e1 = (0, 1, . . . , 0) .1 ‫יהיה‬ ‫וערכה‬ 22 ‫הרביעית‬ ‫בקואורדינטה‬ ‫יהיה‬ 42.2 ‫בדוגמה‬ ‫שראינו‬ ‫מה‬ ‫כאשר‬ :‫במקביל‬ ⃗e1 ‫הווקטור‬ ‫בנוי‬ ‫שבה‬ ‫השיטה‬ ‫באותה‬ ‫שבנוי‬ 2m ‫באורך‬ ⃗e2 ‫וקטור‬ ‫יוצר‬ ‫הוא‬ :‫ימין‬ ‫אגפי‬ ‫את‬ ‫השיטה‬ ‫באותה‬ ‫סוכם‬ V .(‫ימין‬ ‫אגפי‬ ‫סכום‬ ‫את‬ ‫יש‬ ,‫ההשמה‬ ‫לאחר‬ ‫שמאל‬ ‫אגף‬ ‫סכום‬ ‫שבמקום‬ ‫)רק‬ :(42.1 ‫)דוגמה‬ ‫שלנו‬ ‫הדוגמה‬ ‫עפ‬ ‫למשל‬ ⃗e2 = (0, 1, 0, ..., 0) :42.2 ‫דוגמה‬ ‫ועפ‬ .⃗e2 [4] = 1 :1 ‫יהיה‬ ‫הרביעית‬ ‫בקואורדינטה‬ :V ‫של‬ ‫המרכזי‬ ‫תפקידו‬ ‫מגיע‬ ‫כעת‬ 2m -‫ל‬ 1 ‫בין‬ p ‫מספר‬ ‫מגריל‬ V .⃗e1 [p] = ⃗e2 [p] :‫האם‬ ‫ובודק‬ .‫מקבל‬ ‫הוא‬ - ‫כן‬ ‫אם‬ .‫דוחה‬ ‫הוא‬ - ‫לא‬ ‫אם‬ .(‫בינארי‬ ‫באופן‬ ‫אותו‬ ‫מציג‬ ⃗c) ‫מגריל‬ V -‫ש‬ p ‫מספר‬ ‫אותו‬ ‫זה‬ ‫בהתחלה‬ ‫עליו‬ ‫שדובר‬ ⃗c ‫הווקטור‬ ‫כאשר‬ :9 ‫הסבר‬ :‫כזה‬ ‫הוא‬ ‫הכללי‬ ‫הרעיון‬ .(‫המשוואות‬ ‫)מספר‬ m ‫באורך‬ ⃗c ∈ {0, 1} m ‫וקטור‬ ‫מגריל‬ V ‫ואז‬ ,‫למעלה‬ ‫שמסובר‬ ‫כפי‬ ⃗e1,⃗e2 ‫וקטורים‬ ‫שני‬ ‫יוצר‬ P ‫לנו‬ ‫יש‬ ‫נניח‬ ‫אם‬ ,‫כלומר‬ ,‫הבינארי‬ ‫המספר‬ ‫לאותו‬ ‫שתאומות‬ ‫המשוואות‬ ‫של‬ ‫שקלול‬ ‫יש‬ ⃗e ‫בווקטורי‬ i ‫מיקום‬ ‫בכל‬ ‫במקום‬ ‫נסתכל‬ ‫אזי‬ ⃗c = (0, 1, 0, 1, 1, 0) :‫לנו‬ ‫ויצא‬ ‫הגרלנו‬ ‫נניח‬ ‫ואם‬ m ‫באורך‬ ‫יהיו‬ ⃗c,⃗e1, ⃗e2 ‫אזי‬ ,‫משוואות‬ 6 ‫בקואורדינטה‬ ‫ולכן‬ 101 ‫זה‬ ‫בינארי‬ ‫בייצוג‬ 5 ,‫למשל‬ .‫לא‬ ‫ואילו‬ ‫להכניס‬ ‫משוואות‬ ‫אילו‬ ‫לנו‬ ‫שאומר‬ ‫מיקום‬ ‫בעצם‬ ‫היא‬ ‫בווקטור‬ ‫קואורדינטה‬ ‫שכל‬21 .‫והאחרונה‬ ‫הראשונה‬ ‫המשוואה‬ ‫את‬ ‫רק‬ ‫נסכום‬ ‫בווקטור‬ ‫החמישית‬ .(‫בינארי‬ ‫בבסיס‬ ‫מוצג‬ 011) 0112 = 410 ‫כי‬22 49
  • 50.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ .⃗e1,⃗e2 ‫הווקטורים‬ ‫בשני‬ 22-‫ה‬ .‫נדחה‬ ,‫אחרת‬ .‫נקבל‬ ‫זהה‬ ‫יהיה‬ ‫המספר‬ ‫יהיה‬ ‫אם‬ :(31.1) ‫שלמות‬ :S ‫את‬ ‫מספקת‬ ⃗u ‫ההשמה‬ ‫אם‬ 42.1 ‫משפט‬ ‫עפ‬ .Accept ‫של‬ ‫תוצאה‬ ‫לנו‬ ‫ייתן‬ ‫שנגריל‬ ⃗c ‫כל‬ .‫כנדרש‬ ∃P Pr [V (φ, P) = Accept] = 1 :‫כלומר‬ :(31.2) ‫נאותות‬ :42.1 ‫משפט‬ ‫עפ‬ ‫אזי‬ S ‫את‬ ‫מספקת‬ ‫לא‬ ⃗u ‫אם‬ .‫כנדרש‬ ∀P Pr [V (φ, P) = Reject] = 1 2 1 3 :(32.1) V ‫יעילות‬ .(⃗c ‫)הגרלת‬ ‫לא‬ ‫או‬ ‫יכנסו‬ ‫משוואות‬ ‫אילו‬ - r = m .‫בסוף‬ ‫ההשוואה‬ - q = 1 .‫כנדרש‬ .Θ (m) :V ‫של‬ ‫הריצה‬ ‫זמן‬ ‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ 42.3.4 :‫הבא‬ ‫בחלק‬ ‫בו‬ ‫נשתמש‬ ‫אשר‬ 23 ‫מטריצות‬ ‫עבור‬ ‫דומה‬ ‫עיקרון‬ ‫ישנו‬ ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫לעיקרון‬ ‫בדומה‬ .(‫אפסים‬ ‫שכולה‬ ‫מטריצה‬ ,‫האפס‬ ‫)מטריצת‬ A = 0 ‫האם‬ ‫לבדוק‬ ‫נרצה‬ A ∈ {0, 1} n×n ‫מטריצה‬ ‫בהינתן‬ :‫האם‬ ‫ונבדוק‬ ,⃗x, ⃗y ∈ {0, 1} n :‫ובת‬ ‫אחיד‬ ‫באופן‬ ‫נגריל‬ ‫כך‬ ‫לשם‬ ⃗xT A⃗y = 0 :‫שלמות‬ .⃗xT A⃗y = 0 ‫בברור‬ ‫אז‬ A = 0 ‫אם‬ :‫נאותות‬ .‫אפסים‬ ‫שורת‬ ‫אינה‬ (A ‫במטריצה‬ i ‫)שורה‬ Ai ‫שעבורו‬ (1 ≤ i ≤ n) i ‫אינדקס‬ ‫איזשהו‬ ‫יש‬ ‫אזי‬ A ̸= 0 ‫אם‬ :24 ‫לווקטורים‬ ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ ‫לפי‬ Pr [(Ai⃗y) = 1] = 1 2 :‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ ‫לפי‬ ,(Ai⃗y) = 1-‫ש‬ ‫בהינתן‬ ,‫כעת‬ Pr ( ⃗xT A⃗y = 1 A⃗y ̸= 0 ) = 1 2 :‫ולכן‬ Pr ( ⃗xT A⃗y = 1 ) = Pr ( ⃗xT A⃗y = 1 A⃗y ̸= 0 ) = 1 2 · Pr (A⃗y ̸= 0) ≥ 1 2 ≥ 1 4 ‫ההוכחה‬ ‫של‬ ‫הסינטקטי‬ ‫השלב‬ 42.3.5 ‫אם‬ ‫מה‬ ,‫השאלה‬ ‫נשאלת‬ ‫אז‬ ‫אבל‬ ,‫ההוכחה‬ ‫של‬ ‫המרכזי‬ ‫הרעיון‬ - (‫המאמת‬ ‫)של‬ V ‫של‬ ‫תפקידו‬ - ‫כאן‬ ‫היה‬ ‫ההוכחה‬ ‫לב‬ ?‫התוצאה‬ ‫את‬ ‫להתאים‬ ‫מנסה‬ ‫זדוני‬ ‫מישהו‬ .‫תקין‬ ‫אכן‬ ‫שקיבלנו‬ ‫שהקידוד‬ ‫לוודא‬ ‫נרצה‬ ‫כך‬ ‫לשם‬ .‫השמה‬ ‫היא‬ ⃗u ‫כי‬ ‫נניח‬ ‫כך‬ ‫לשם‬ ‫תדחה‬ V - ‫הנאותות‬ ‫ומבחינת‬ ‫הבא‬ ‫לשלב‬ ‫עוברים‬ ‫מיד‬ - ‫שלמות‬ ‫מתקיימת‬ ‫שאם‬ ‫חלקים‬ ‫משלושה‬ ‫מורכבת‬ ‫ההוכחה‬ .1 2 ≤ ‫בהסתברות‬ .‫בולאנית‬ ‫למטריצות‬ ‫רק‬ ‫נתייחס‬ ‫כאן‬23 .Pr (⟨⃗x, ⃗y⟩ = 1) = 1 2 :⃗x, ⃗y ∈ {0, 1}n ‫שעבור‬ ‫אומר‬ ‫הוא‬ ‫בעיקרון‬ ‫אך‬ ,‫כאן‬ ‫הוגדר‬ ‫או‬ ‫הוכח‬ ‫לא‬ ‫הוא‬24 50
  • 51.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ .42.3.3 ‫הסמנטי‬ ‫לשלב‬ ‫עוברים‬ - ‫בהצלחה‬ ‫הללו‬ ‫השלבים‬ ‫שלושת‬ ‫את‬ ‫שסיימנו‬ ‫ברגע‬ :‫הבא‬ (P) ‫הקידוד‬ ‫על‬ ‫נסתכל‬ WH (⃗u) ∈{0,1}2n , WH (⃗u ⊗ ⃗u) ∈{0,1}2n×n .‫וולש-הדמרד‬ ‫קוד‬ ‫הוא‬ WH ‫כאשר‬ .‫הטענה‬ ‫את‬ ‫לאמת‬ ‫כדי‬ V -‫ה‬ ‫עובד‬ ‫ועלזה‬ ‫מכיל‬ P-‫ש‬ ‫מה‬ ‫זה‬ ,‫כלומר‬ .‫ההוכחה‬ ‫של‬ P-‫ה‬ ‫זה‬ - ‫תקין‬ ‫שזה‬ ‫בהנחה‬ :'‫א‬ ‫חלק‬ :‫תזכורת‬ ‫פונקציה‬ ‫של‬ ‫האמת‬ ‫טבלת‬ ‫היא‬ ⃗s ⇐⇒ ⃗v ∈ {0, 1} t ‫מחרוזת‬ ‫של‬ ‫וולש-הדמרד‬ ‫קוד‬ ‫היא‬ ⃗s ∈ {0, 1} 2l ‫מחרוזת‬ .f (7.1.2) ‫לינארית‬ # ! ‫לבדוק‬ ‫ונרצה‬ Sf = WH (⃗u) , Sg = WH (⃗w) :‫ש‬ ‫כך‬ ⃗u ∈ {0, 1} n , ⃗w ∈ {0, 1} n×n ‫קיימים‬ ‫האם‬ ‫לבדוק‬ ‫נרצה‬ .(‫לינאריות‬ ‫לבדוק‬ ‫נרצה‬ ,‫)כלומר‬ ‫לינאריות‬ ‫פונקציות‬ ‫של‬ ‫אמת‬ ‫בטבלת‬ ‫מדובר‬ ‫אכן‬ ‫האם‬ ‫לאורך‬ ‫בהתאם‬ ‫הוא‬ ‫אורכם‬ ‫אשר‬ ⃗a,⃗b ‫וקטורים‬ ‫שני‬ Si ‫כל‬ ‫עבור‬ ‫מגרילים‬ ‫לינאריות‬ ‫הפונקציות‬ ‫אכן‬ ‫האם‬ ‫לבדוק‬ ‫בשביל‬ ,⃗u, ⃗w ‫של‬ :‫האם‬ ‫ובודקים‬ ‫ביטים‬ ‫שלושה‬ ‫מגרילים‬ ‫ובת‬ ‫אחיד‬ ‫באופן‬ ‫ואז‬ f (⃗a) + f ( ⃗b ) = f ( ⃗a +⃗b ) :10 ‫הסבר‬ .‫מיקום‬ ‫מציינים‬ ⃗a,⃗b ‫הווקטורים‬ ,⃗c ‫בהגרלת‬ ‫כמו‬ ‫אזי‬ ⃗a,⃗b ‫וקטורים‬ ‫שני‬ ‫שהגרלנו‬ ‫אחרי‬ ‫צריך‬ ‫אזי‬ ,‫הפונקציה‬ ‫של‬ ‫אמת‬ ‫טבלת‬ ‫היא‬ WH (⃗u) -‫ש‬ ‫כך‬ ⃗u ∈ {0, 1} n ‫קיים‬ ‫האם‬ ‫למשל‬ ‫לבדוק‬ ‫בשביל‬ ‫כעת‬ .f (⃗a) + f ( ⃗b ) = f ( ⃗a +⃗b ) ‫מתקיים‬ ‫האם‬ ‫ולבדוק‬ ( ⃗a,⃗b ) ‫בווקטור‬ ‫מקומות‬ ‫שני‬ ‫לדגום‬ :‫שלמות‬ ‫יתקיים‬ ‫בהכרח‬ ‫אזי‬ (‫כלשהי‬ ‫לינארית‬ ‫פונקציה‬ ‫של‬ ‫אמת‬ ‫טבלת‬ ‫הוא‬ WH (⃗u)-‫ש‬ ‫כך‬ ⃗u ‫קיים‬ ,‫)כלומר‬ ‫לינארית‬ f ‫אם‬ .(42.3.3 - ‫הסמנטי‬ ‫לשלב‬ ‫ישר‬ ‫)ונעבור‬ .‫השוויון‬ :‫נאותות‬ .Θ (∆) ‫בהסתברות‬ ‫אותה‬ ‫דוחה‬ (‫)מאמת‬ V -‫ה‬ ‫אזי‬ ‫∆-רחוקה‬ ‫היא‬ f ‫אם‬ .f′ ‫לינארית‬ ‫לפונקציה‬ ‫מאוד‬ ‫קרובה‬ ‫אבל‬ ,‫לינארית‬ ‫אינה‬ f-‫ש‬ ‫במקרה‬ ‫לטפל‬ ‫הוא‬ ‫לנו‬ ‫שנותר‬ ‫מה‬ ‫כל‬ .'‫ב‬ ‫לשלב‬ ‫נעבור‬ ‫זה‬ ‫במקרה‬ :‫יעילות‬ .(‫מהמקרים‬ ‫אחת‬ ‫בכל‬ ‫מקומות‬ ‫שני‬ ‫)עבור‬ r = 2 · n + 2 · n2 :‫שמוגרלים‬ ‫האקראים‬ ‫הביטים‬ ‫כמות‬ .(‫מקרה‬ ‫כל‬ ‫עבור‬ 3) q = 3 + 3 = 6 :‫שקוראים‬ ‫הביטים‬ ‫כמות‬ :'‫ב‬ ‫חלק‬ .⃗w = ⃗u ⊗ ⃗u :‫האם‬ ‫לבדוק‬ ‫נרצה‬ ,(⃗w − ⃗u ⊗ ⃗u) = 0 ‫האם‬ ‫נבדוק‬ ‫כך‬ ‫לשם‬ :(42.3.4) ‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ ‫באמצעות‬ ‫זאת‬ ‫נעשה‬ :‫האם‬ ‫ונבדוק‬ ,⃗x, ⃗y ‫וקטורים‬ ‫שני‬ ‫נגריל‬ ⃗xT A⃗y = 0 ⃗xT (⃗w − ⃗u ⊗ ⃗u) ⃗y = 0 ⃗xT ⃗w⃗y = ⃗xT (⃗u ⊗ ⃗u) ⃗y :‫האם‬ ‫הוא‬ ‫לבדוק‬ ‫שצריך‬ ‫מה‬ ,‫ולכן‬ 51
  • 52.
    NP = PCP(Θ (log n) , Θ (1)) ‫הוכחת‬ 42‫החישובים‬ ‫מורכבות‬ WH (⃗w)⃗x⊗⃗y = WH (⃗u)⃗x · WH (⃗u)⃗y .(‫המיקום‬ ‫את‬ ‫מציין‬ ⃗x-‫ה‬ WH (⃗u)⃗x-‫ב‬ ,‫)כלומר‬ ‫מיקום‬ ‫הוא‬ ‫אלה‬ ‫משלושת‬ ‫אחד‬ ‫כל‬ ‫כאשר‬ :‫שלמות‬ .‫הסמנטי‬ ‫לשלב‬ ‫ונעבור‬ ‫תמיד‬ ‫יתקיים‬ ‫השוויון‬ ‫אזי‬ ⃗w = ⃗u ⊗ ⃗u ‫אכן‬ ‫אם‬ :‫נאותות‬ .1 4 -‫מ‬ ‫קטן‬ ‫הוא‬ ‫כאן‬ ‫שנטעה‬ ‫הסיכוי‬ - ‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ ‫עפ‬ :‫יעילות‬ .(‫ווקטור‬ ‫כל‬ ‫)עבור‬ r = n + n = 2 · n :‫המוגרלים‬ ‫הביטים‬ ‫כמות‬ .(‫המרכזית‬ ‫המשוואה‬ ‫)בדיקת‬ q = 1 + 1 + 1 = 3 :‫שנקראים‬ ‫הביטים‬ ‫כמות‬ ‫סיכום‬ 42.4 .‫ביטים‬ Θ (1) ‫רק‬ ‫לקרוא‬ ‫שצריך‬ ‫וזה‬ ‫והנאותות‬ ‫השלמות‬ ‫בגלל‬ ‫תאורטית‬ ‫מבחינה‬ ‫מדהים‬ ‫הוא‬PCP-‫ה‬ ‫משפט‬ .‫-שלמות‬NP ‫לבעיות‬ ‫קירוב‬ ‫קושי‬ ‫עם‬ ‫לנו‬ ‫עזור‬ ‫הוא‬ ‫מעשית‬ ‫מבחינה‬ :(‫סמנטי‬ ‫שלב‬ ‫ואחרים‬ ‫סינטקטיים‬ ‫)שניים‬ ‫האימות‬ ‫של‬ ‫השלבים‬ ‫שלושת‬ ‫אחרי‬ ,‫סהכ‬ r = m + 2n2 + 4n q = 10 52
  • 53.
    ‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬ ‫העניינים‬‫תוכן‬ 1 ‫חזרה‬ I 1 ‫הסתברות‬ 1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מדגם‬ ‫מרחב‬ 1.1 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מאורע‬ 1.2 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A ‫מאורע‬ ‫פירוק‬ 1.3 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Union Bound ‫האיחוד‬ ‫חסם‬ 1.3.1 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫והדחה‬ ‫הכלה‬ 1.3.2 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מותנית‬ ‫הסתברות‬ 1.4 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫תלויים‬ ‫בלתי‬ ‫מאורעות‬ 1.4.1 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫איחוד‬ ‫לגבי‬ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מקרי‬ ‫משתנה‬ 1.5 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫תוחלת‬ 1.6 3 ‫טיילור‬ ‫קירוב‬ 2 3 ‫קירוב‬ ‫אלגוריתמי‬ 3 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (G ‫גרף‬ ‫)של‬ ‫הקשירות‬ ‫בעיית‬ :‫דוגמה‬ 3.1 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ערך‬ ‫פונקציית‬ 3.2 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (‫קבוע‬ ‫)=יחס‬ ‫קירוב‬ ‫פקטור‬ 3.3 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מדויקות‬ ‫הגדרות‬ 3.3.1 4 (k-wise independece) ‫משתנים‬ ‫של‬ ‫אי-תלות‬ 4 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הכללות‬ 4.1 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המקרי‬ ‫הלינארי‬ ‫הצירוף‬ ‫עיקרון‬ 4.2 5 ‫בולאניים‬ ‫מעגלים‬ ‫מול‬ ‫פולינומים‬ 5 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XOR ‫שער‬ - ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ 5.1 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המעגל‬ ‫חיזוק‬ 5.2 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פולינומים‬ 5.3 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (‫יחיד‬ ‫)משתנה‬ ‫הגדרה‬ 5.3.1 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫רב-משתנים‬ ‫לפולינום‬ ‫דוגמה‬ 5.3.2 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נמוכה‬ ‫מדרגה‬ ‫פולינומים‬ ‫עי‬ ‫מעגלים‬ ‫קרוב‬ 5.4 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מעגלים‬ ‫סדרת‬ 5.4.1 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פולינומים‬ ‫סדרת‬ 5.4.2 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לפולינומים‬ (‫)מעגלים‬ ‫שערים‬ ‫המרת‬ 5.5 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פרמה‬ ‫משפט‬ 5.5.1 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NOT ‫שער‬ 5.5.2 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MOD ‫שער‬ 5.5.3 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AND ‫שער‬ 5.5.4 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OR ‫שער‬ 5.5.5 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מסכמת‬ ‫טבלה‬ 5.6 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הקירוב‬ ‫משפט‬ 5.7 8 (‫קירוב‬ ‫)יחס‬ ‫פקטור‬ 6 53
  • 54.
    ‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬ 8‫לינאריות‬ ‫בדיקת‬ 7 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לינאריות‬ ‫ופונקציות‬ ‫בולאניות‬ ‫פונקציות‬ ‫הגדרת‬ 7.1 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הבולאניות‬ ‫הפונקציות‬ ‫כמות‬ 7.1.1 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לינאריות‬ ‫פונקציות‬ 7.1.2 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הסטטיסטי‬ ‫המרחק‬ 7.2 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פונקציות‬ ‫שתי‬ ‫בין‬ ‫הסטטיסטי‬ ‫המרחק‬ 7.2.1 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לינארית‬ ‫לפונקציה‬ ‫סטטיסטי‬ ‫מרחק‬ 7.2.2 9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המרכזי‬ ‫המשפט‬ 7.3 9 ‫טיורינג‬ ‫מכונות‬ II 10 ‫חישובים‬ ‫מורכבות‬ 8 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫אלגוריתם‬ ‫מאפיין‬ ‫מה‬ 8.1 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נתונים‬ 8.1.1 10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫חוקים‬ 8.1.2 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫היסודית‬ ‫השאלה‬ 8.2 11 ‫חישוב‬ ‫מכונות‬ 9 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫החישוב‬ ‫אופן‬ 9.1 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫חישוב‬ ‫מתבצע‬ ‫כיצד‬ 9.1.1 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫החישוב‬ ‫פלט‬ ‫סימון‬ 9.1.2 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טיורינג‬ ‫מכונת‬ ‫של‬ ‫וריאנטים‬ 9.2 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המרכזי‬ ‫המשפט‬ 9.2.1 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילה‬ ‫סימולציה‬ 9.2.2 12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סימולציה‬ ‫זמן‬ 9.2.3 12 ‫אוניברסליות‬ 10 13 ‫אלגוריתם‬ ‫של‬ ‫יעילות‬ 11 13 (‫)חזרה‬ ‫חישוביות‬ III 13 ‫חישובית‬ ‫מורכבות‬ 12 13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההיררכיה‬ ‫משפט‬ 12.1 14 ‫טבעית‬ ‫בעיות‬ 13 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫טבעית‬ ‫בעיה‬ ‫נגדיר‬ ‫כיצד‬ 13.1 14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫טבעית‬ ‫לא‬ ‫חיפוש‬ ‫בעיית‬ ‫נגדיר‬ ‫איך‬ 13.2 15 NP ‫המחלקה‬ 14 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שלמות‬ 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נאותות‬ 15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילות‬ 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המחשב‬ ‫במדעי‬ ‫המרכזית‬ ‫הבעיה‬ 14.1 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מייצגת‬ ‫בעיה‬ 14.2 16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫קשה‬ ‫הכי‬ ‫נגדיר‬ ‫איך‬ 14.2.1 16 ‫פולינומית‬ ‫רדוקציה‬ - (Karp) ‫קארפ‬ ‫רדוקציית‬ 15 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫-שלמה‬C ‫שפה‬ 15.1 54
  • 55.
    ‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬ 18‫ואופטימיזציה‬ ‫חיפוש‬ ,‫הכרעה‬ ‫של‬ ‫גרסאות‬ ‫בין‬ ‫שקילות‬ 16 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 − SAT ‫דוגמת‬ 16.1 18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שקילות‬ ‫דוגמת‬ 16.1.1 19 DSR ‫שיטת‬ 17 19 (‫-דטרמיניסטי‬ ‫לא‬ ‫חישוב‬ NP ‫)הגדרת‬ ‫מטלד‬ 18 19 coNP ‫המחלקה‬ 19 19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . coC ‫המחלקה‬ 19.1 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . coP = P 19.2 20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫כמתים‬ ‫באמצעות‬ coNP ‫הגדרת‬ 19.3 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NP ̸= coNP-‫ש‬ ‫ההשערה‬ 19.4 21 PH - ‫פולינומית‬ ‫היררכיה‬ IV 22 coNP-‫ו‬ NP-‫ל‬ ‫שמעבר‬ ‫מה‬ 20 22 . . . . . . . . . . . . . . . . . . . . . . . . . . . (‫כמתים‬ ‫שני‬ ‫עם‬ ‫לבעיה‬ ‫)דוגמה‬ ‫המזערי‬ ‫המעגל‬ ‫בעיית‬ 20.1 23 ‫הפולינומית‬ ‫ההיררכיה‬ ‫הגדרת‬ 21 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סימונים‬ 21.1 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ΠkP-‫ו‬ ΣkP 21.2 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PH ‫הגדרת‬ 21.3 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . '‫וכו‬ P ̸= NP ‫לגבי‬ ‫מרכזיות‬ ‫השערות‬ 21.4 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הקריסה‬ ‫משפט‬ 21.5 24 ‫זיכרון‬ ‫סיבוכיות‬ V 25 S ≪ T ‫שבו‬ ‫למקרה‬ ‫דוגמת‬ 22 25 ‫חישוב‬ ‫קונפיגורצית‬ 23 26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫ישנן‬ ‫קונפיגורציות‬ ‫כמה‬ 23.1 26 ‫זיכרון‬ - ‫סיבוכיות‬ ‫מחלקות‬ 24 26 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההיררכיה‬ ‫משפט‬ 24.1 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫המחלקות‬ ‫של‬ ‫ההיררכיה‬ 24.2 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?L ̸= NP :‫פתוחה‬ ‫בעיה‬ 24.2.1 27 ‫במשחקים‬ ‫מנצחות‬ ‫אסטרטגיות‬ VI 28 ‫משחקים‬ ‫הגדרת‬ 25 28 ‫צרמלו‬ ‫משפט‬ 26 28 . . . . . . . . . . . . . . . . . . . . . . . . ?‫מנצחת‬ ‫אסטרטגיה‬ ‫יש‬ (‫)לבן‬ ‫הפותח‬ ‫שלשחקן‬ ‫רושמים‬ ‫כיצד‬ 26.1 29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ?‫נותרו‬ ‫צעדים‬ ‫כמה‬ ‫מסמנים‬ ‫כיצד‬ 26.2 29 TQBF 27 29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TQBF ‫להכרעת‬ ‫אלגוריתם‬ 27.1 29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫-שלמה‬PSPACE ‫היא‬ TQBF 27.2 29 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TQBF ‫של‬ ‫הזיכרון‬ ‫סיבוכיות‬ 27.3 55
  • 56.
    ‫העניינים‬ ‫תוכן‬‫החישובים‬ ‫מורכבות‬ 29‫לא-דטרמינסטי‬ ‫זיכרון‬ ‫סיבוכיות‬ 28 30 (‫אוב‬ ‫)פונקציית‬ ‫האורקל‬ ‫גישת‬ VII 30 ‫רקע‬ 29 30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫אורקל‬ ‫גישת‬ 29.1 30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סימונים‬ 29.2 31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לאורקל‬ ‫בגישה‬ ‫שנשמרת‬ ‫הוכחה‬ - ‫מסורתית‬ ‫הוכחה‬ 29.3 31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BGS-‫ה‬ ‫משפט‬ 29.4 32 PCP-‫ה‬ ‫משפט‬ VIII 32 ?‫הוכחה‬ ‫מערכת‬ ‫מהי‬ 30 32 ‫הוכחה‬ ‫למערכת‬ ‫הדרושים‬ ‫התנאים‬ 31 32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שלמות‬ 31.1 33 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נאותות‬ 31.2 33 PCP-‫ה‬ ‫משפט‬ 32 33 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילות‬ 32.1 34 IP - ‫אינטראקטיביות‬ ‫הוכחה‬ ‫מערכות‬ IX 34 ‫הבסיסי‬ ‫הרעיון‬ 33 34 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הדו-שיח‬ ‫פרוטוקול‬ 33.1 34 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫שלמות‬ 33.2 35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫נאותות‬ 33.3 35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫יעילות‬ 33.4 35 ‫גרפים‬ ‫של‬ ‫איזומורפיזם‬ - ‫דוגמה‬ 34 35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ 34.1 35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GISO, GNISO ‫השפות‬ 34.2 36 GNISO ∈ IP [2] ‫כי‬ ‫ההוכחה‬ 35 36 ‫קבוע‬ K ‫כאשר‬ IP [K] 36 37 (‫המרכזי‬ ‫)המשפט‬ IP ‫הגדרת‬ 37 37 Zero Knowledge-‫ה‬ ‫עיקרון‬ 38 37 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . (NP) ‫קלאסית‬ ‫הוכחה‬ ‫מערכת‬ 38.1 37 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [IP] ‫אינטראקטיביות‬ ‫הוכחות‬ ‫מערכת‬ 38.2 38 ‫הוכחות‬ X 38 ‫האלכסון‬ ‫בשיטת‬ ‫הוכחות‬ 39 39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫העצירה‬ ‫בעיית‬ ‫אי-כריעות‬ ‫הוכחת‬ 39.1 39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הנחות‬ 39.1.1 39 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההוכחה‬ 39.1.2 56
  • 57.
    ‫האיורים‬ ‫רשימת‬‫החישובים‬ ‫מורכבות‬ 40. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 ‫ההיררכיה‬ ‫משפט‬ ‫הוכחת‬ 39.2 40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Θ-‫ב‬ ‫טיפול‬ 39.2.1 41 BGS-‫ה‬ ‫משפט‬ ‫הוכחת‬ 40 41 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫הראשון‬ ‫החלק‬ ‫הוכחת‬ 40.1 42 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BGS-‫ה‬ ‫משפט‬ ‫של‬ ‫שני‬ ‫החלק‬ ‫הוכחת‬ 40.2 43 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Θ-‫ב‬ ‫טיפול‬ 40.2.1 43 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טופלו‬ ‫שכבר‬ ‫בקלטים‬ ‫טיפול‬ 40.2.2 43 ‫-שלמה‬PSPACE ‫היא‬ TQBF-‫ש‬ ‫ההוכחה‬ 41 43 . . . . . . . . . . . . . . . . . . . . . . . . TQBF ∈ D − SPACE ‫וגם‬ TQBF ∈ PSPACE 41.1 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫-שלמה‬PSPACE ‫היא‬ TQBF 41.2 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫קונפיגורציות‬ ‫גרף‬ 41.2.1 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . L ≤p TQBF 41.2.2 45 NP = PCP (Θ (log n) , Θ (1)) ‫הוכחת‬ 42 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫להוכחה‬ ‫כלים‬ 42.1 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ווקטורים‬ ‫על‬ ‫פעולות‬ 42.1.1 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫חיבור‬ 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פנימית‬ ‫מכפלה‬ 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫על‬ ‫פעולות‬ 42.1.2 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫חיבור‬ 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫של‬ ‫פנימית‬ ‫מכפלה‬ 46 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טנזורית‬ ‫מכפלה‬ 47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫וולש-הדמרד‬ ‫קוד‬ 42.1.3 47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NP ⊇ PCP (Θ (log n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.2 47 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NP ⊆ PCP (poly (n) , Θ (1))-‫ש‬ ‫ההוכחה‬ 42.3 48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . QE ‫שנייה‬ ‫ממעלה‬ ‫משאוות‬ 42.3.1 48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 − SAT ≤p QE 42.3.2 49 . . . . . . . . . . . . . . . . . . . ‫ההוכחה‬ ‫של‬ ‫המרכזי‬ ‫הרעיון‬ - (‫המאמת‬ ‫)של‬ V ‫של‬ ‫תפקידו‬ 42.3.3 50 . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫מטריצות‬ ‫עבור‬ ‫המקרי‬ ‫הלינארי‬ ‫הצרוף‬ ‫עקרון‬ 42.3.4 50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫ההוכחה‬ ‫של‬ ‫הסינטקטי‬ ‫השלב‬ 42.3.5 52 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫סיכום‬ 42.4 ‫האיורים‬ ‫רשימת‬ 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XOR ‫בולאני‬ ‫למעגל‬ ‫דוגמה‬ 1 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫טיורינג‬ ‫למכונת‬ ‫דוגמה‬ 2 17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫הפולינומית‬ ‫הרדוקציה‬ ‫פעולת‬ 3 24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫פולינומית‬ ‫היררכיה‬ 4 35 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫איזומורפים‬ ‫לגרפים‬ ‫דוגמה‬ 5 38 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫קנטור‬ ‫של‬ ‫האלכסון‬ 6 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ‫לדוגמה‬ ‫קונפיגורציות‬ ‫גרף‬ 7 .‫בלכסון‬ ‫שמתרכזת‬ ‫חלקית‬ ‫בהוכחה‬ ‫אלא‬ ‫מלאה‬ ‫בהוכחה‬ ‫מדובר‬ ‫לא‬25 ‫השני‬ ‫החלק‬ ‫בשביל‬ ‫כאן‬ ‫זה‬ ‫אבל‬ ,‫האלכסון‬ ‫בשיטת‬ ‫הוכחה‬ ‫לא‬ ‫זאת‬26 57
  • 58.
    ‫מפתח‬ 1 ,‫הסתברות‬ 1 ,‫האיחוד‬‫חסם‬ 1 ,‫מאורע‬ 2 ,‫בלתי-תלויים‬ ‫מאורעות‬ 4 ,‫בעיית‬ ,‫מינימיזציה‬ 4 ,‫בעיית‬ ,‫מקסימיזציה‬ 24 ,‫הקריסה‬ ‫משפט‬ 2 ,‫מקרי‬ ‫משתנה‬ 1 ,‫מדגם‬ ‫מרחב‬ 8 ,‫בולאניות‬ ‫פונקציות‬ 4 ,‫קירוב‬ ‫פקטור‬ 11 ,‫מצבים‬ ‫קבוצת‬ 26 ,‫קונפיגורציה‬ 4 ,‫קירוב‬ 3 ,‫טיילור‬ ‫קירוב‬ 6 ,MOD ‫שער‬ 17 ,‫-קשה‬C ‫שפה‬ 16 ,‫-קשה‬NP ‫שפה‬ 2 ,‫תוחלת‬ 3 ,‫התוחלת‬ ‫לינאריות‬ D 19 ,DSR 58