תרגול הכנה למבחן don`t panic
Download
Report
Transcript תרגול הכנה למבחן don`t panic
תרגול הכנה למבחן
don’t panic
שאלות מתוך:
2007סמסטר א' מועד ב'
קודים מתקני שגיאות
Error Correcting Codes
תזכורת:
• קוד Cהוא תת-קבוצה של כל המחרוזות {0,1,…,q-1}n
• לכל קוד יש 4מאפיינים עיקריים בהם נתעניין:
–
–
–
–
גודל האלפבית q -
מרחק – המספר המינימלי של תוים ששונים בין 2מילות קוד ,יחסית למספר
התוים ()n
אורך הבלוק – כמות הביטים שאנחנו צריכים לכל מילת קוד ,ז"א )nlog(q
קצב – כמות הביטים שהיינו צריכים לכל בלוק בקידוד אופטימאלי ,ללא תיקון
שגיאות ,יחסית לאורך הבלוק (ז"א לוג מספר המילים בקוד)
• דוגמא:
q = 3, n = 4
}C = {0121, 1210, 2101, 1012
d[C] = d(1210, 1012) = 2/4 = 1/2
))r[C] = log(4) / 4log(3) = 1/(2log(3
–
–
–
–
קודים מתקני שגיאות
Error Correcting Codes
תזכורת:
• קוד Cהוא תת-קבוצה של כל המחרוזות {0,1,…,q-1}n
• לכל קוד יש 4מאפיינים עיקריים בהם נתעניין:
–
–
–
–
גודל האלפבית q -
מרחק – המספר המינימלי של תוים ששונים בין 2מילות קוד ,יחסית למספר
התוים ()n
אורך הבלוק – כמות הביטים שאנחנו צריכים לכל מילת קוד ,ז"א )nlog(q
קצב – כמות הביטים שהיינו צריכים לכל בלוק בקידוד אופטימאלי ,ללא תיקון
שגיאות ,יחסית לאורך הבלוק (ז"א לוג מספר המילים בקוד)
• מטרה :מרחק וקצב גדולים
קודים לינאריים
Linear Codes
•
נניח שקיים שדה Fqבגודל ( qלדוגמא })F2 = {0,1
• Cהוא קוד לינארי אמ"ם הוא תת-מרחב של Fqn
• ניתוח:
– קצב – נסמן )k=dim(C
• ב C-יש qkמילים
– ( Cמורכב מצירופים לינאריים של k :איברי בסיס q ,סקלרים לכל אחד)
• r[C] = log(qk)/log(qn) = k/n
– מרחק – )d(x,y) = d(x-y,0
• לכן ,מרחק הקוד יהיה המספר המינמלי של כניסות שונות מ0-
• דוגמא:
q = 2, n = 5
}C = span{10101, 11100
k = 2, r[C] = 2/5
d[C] = d(01001,00000) = 2/5
–
–
–
–
שאלות מתוך:
2007סמסטר א' מועד ב'
קצת גרפים...
נתון גרף מלא על 2nצמתים ,עם משקלים אי-שלילים לקשתות.
• נסמן ב m-את משקל הזיווג המושלם שמשקלו מינימלי.
• נסמן ב c-את משקל המעגל ההמילטוני שמשקלו מינימלי.
• נסמן ב t-את משקל העץ הפורש שמשקלו מינימלי.
טענות:
) t ≤ c (iתמיד.
) t ≤ c (iiאם ורק אם המשקלים בגרף מקיימים את אי שוויון המשולש.
) m ≤ c/2 (iiiתמיד.
) m ≤ c/2 (ivאם ורק אם המשקלים בגרף מקיימים את אי שוויון המשולש.
אילו מהטענות הנ"ל נכונות?
בi + iv .
אi + iii .
גii + iii .
דii + iv .
קצת גרפים...
טענות:
) t ≤ c (iתמיד.
) t ≤ c (iiאם ורק אם המשקלים בגרף מקיימים את אי שוויון המשולש.
) m ≤ c/2 (iiiתמיד.
) m ≤ c/2 (ivאם ורק אם המשקלים בגרף מקיימים את אי שוויון המשולש.
קצת גרפים...
הוכחות:
• ) t ≤ c (iתמיד:
אם נסיר קשת אחת ממעגל המילטוני מינימאלי,
נקבל עץ פורש.
ז"אt ≤ c – w)e( ≤ c :
•
) m ≤ c/2 (iiiתמיד:
מעגל המילטוני מינמאלי הוא איחוד של שני זיווגים מושלמים.
ז"אm ≤ min{m1,m2} ≤ )m1+m2)/2 = c/2 :
תשובה :אi + iii .
מסלול פשוט מקסימלי
מהי המחלקה המינימלית ביחס להכלה אליה שייכת הבעיה הבאה?
קלט :גרף מכוון Gושני צמתים בו xו.y-
שאלה :האם כל מסלול פשוט מ x-ל y-ב G-הוא באורך לכל היותר ?n/2
אL .
בNL .
x
d
גP .
דNP .
a
y
הPH .
ו .אף אחד מהנ"ל.
f
c
b
מסלול פשוט מקסימלי
שאלה :האם כל מסלול פשוט מ x-ל y-ב G-הוא באורך לכל היותר ?n/2
רעיון – נשתמש באלגוריתם דומה ל non-Conn-בNL-
ז"א נחשב באינדוקציה את:
}pi = {v | there exists a path from x to v of length i
x
d
בעיה – אי אפשר לוודא ב NL-שהמסלול פשוט...
a
y
f
c
b
מסלול פשוט מקסימלי
שאלה :האם כל מסלול פשוט מ x-ל y-ב G-הוא באורך לכל היותר ?n/2
רעיון – 2נראה רדוקציה מ:non-HamPath-
נכפיל את מספר הצמתים בלי להוסיף קשתות.
בגרף החדש יש מסלול פשוט באורך n/2אמ"ם בגרף המקורי מסלול המילטוני.
מסקנה – השפה בcoNPC-
’x
’d
תשובה :הPH .
’f
d
’a
’y
’c
x
a
y
’b
f
c
b
מיון
Sorting
• נגיד שפונקציה fחשיבה ב NL-אם:
• קיימת מכונת טיורינג (א-דטרמיניסטית) עם
– סרט קלט (קריאה בלבד)
– סרט פלט (כתיבה בלבד)
– וסרט עבודה (מוגבל במקום ).)O(lg n
• בהינתן xעל סרט הקלט ,המכונה:
– מחזירה על סרט הפלט את ) f(xועוברת למצב YES
– או מחזירה פלט כלשהו ועוברת למצב ,Quit
– ולכל קלט יש לפחות ריצה אחת שבסופה המכונה במצב .YES
מיון
Sorting
Dsortהיא הבעיה הבאה:
• קלט :גרף מכוון Gוצומת שלו .s
• פלט :רשימה של כל הצמתים ממוינים לפי מרחקם מ.s-
– אם לכמה צמתים יש את אותו מרחק מ s-אז המיון הוא לפי סדר
לקסיקוגרפי עולה.
– (תזכורת :מרחק מצומת sלצומת vהוא אורך המסלול הקצר
ביותר מ s-ל.)v-
• צ"ל Dsort :חשיבה ב.NL-
מיון
Sorting
• פלט :רשימה של כל הצמתים
ממוינים לפי מרחקם מ.s-
s
d
a
e
• לדוגמא:
– )(s,a,c,d,e,f,b
– )(s,a,d,c,f,e,b
f
c
b
מיון
Sorting
:• לדוגמא
s
(s,a,c,d,e,f,b) –
(s,a,d,c,f,e,b) –
d
a
:• נסמן
e
rk = {v | d)s,v( ≤ k}
b
c
f
• ואז באופן כללי נקבל
:שתוצאת המיון היא
(s=r0,r1\r0,…,rn\rn-1,V\rn)
מיון
Sorting
d
• תזכורת – הוכחת :non-Conn ϵ NL
בונים באינדוקציה עד ל...rk-
– לכל צמת vב rk-מראים מסלול באורך k
– לכל צמת uלא ב ,rk-מראים | |rk-1צמתים
ב rk-1-שהם לא שכנים של u
• אנחנו רוצים – עד ל:rk\rk-1-
a
e
f
– לכל צמת vב rk-1-מראים מסלול באורך k-1
– לכל צמת uלא ב ,rk-מראים | |rk-1צמתים
ב rk-1-שהם לא שכנים של u
– לכל צמת wב rk\rk-1-מראים | |rk-2צמתים
ב rk-2-שהם לא שכנים של + wמסלול באורך k
• סיבוכיות זכרון (סרט עבודה) – ))O(log(n
s
c
b
מיון
Sorting
• – Dsort ϵ NL
נתאר מ"ט א-דטרמיניסטית M
שתפתור את :Dsort
– " Mתנחש" (חישוב א"ד) את העד
– Mתדפיס את תוצאת המיון לסרט הפלט
– אם העד חוקי M ,תקבל ,אחרת תדחה
s
d
a
e
f
c
b
Unique Game
• נניח שלכל ε > 0קיים kכך ש:gap-kUG[ε,1- ε] ϵ NP-hard -
הראו ,ללא שימוש במשפט ה ,PCP-שבעיית ה Clique-היא NPקשה
לקרוב לכל קבוע.
x
u
})πu,v = {(a,a),(b,c)(c,b
w
– Cliqueמקסימום צמתים שכנים
v
– UGמקסימום קשתות
שמסופקות במקביל
Unique Game
• רדוקציה מ gap-UG-ל:gap-Clique-
– ניצור צמת בגרף הקליק לכל (קשת +צביעה חוקית של צמתיה) בגרף הUG-
– נחבר צמתים בקשת בגרף הקליק אמ"ם הצביעות לא סותרות בגרף הUG-
x
u,v
a,a
u,v
b,c
x,w
a,c
u,x
a,b
סיבוכיות – זמן פולינומיאלי
u
})πu,v = {(a,a),(b,c)(c,b
w
v
]gap-kUG[ε,1- ε] ≤ gap-CLIQUE[ε/k,(1- ε)/k
• נשים לב כי ||VCLIQUE| = k|EUG
• נכונות:
– נאותות – אם קיימת קליקה בגודל ) ,(ε/kאז הצביעה של הUG-
המתאימה מספקת εמהאילוצים.
– שלמות – אם קיימת צביעה שמספקת ) (1-εמהאילוצים ,אז
הצמתים המתאימים לקשתות שמסופקות יוצרים קליקה של
(1-ε)kצמתים.
x
u,v
a,a
u,v
b,c
x,w
a,c
u,x
a,b
u
})πu,v = {(a,a),(b,c)(c,b
w
v
תודה
ובהצלחה