מבוא לתורת הקודים לתיקון שגיאות

Σχετικά έγγραφα
שדות תזכורת: פולינום ממעלה 2 או 3 מעל שדה הוא פריק אם ורק אם יש לו שורש בשדה. שקיימים 5 מספרים שלמים שונים , ראשוני. שעבורם

פתרון תרגיל מרחבים וקטורים. x = s t ולכן. ur uur נסמן, ur uur לכן U הוא. ur uur. ur uur

פתרון תרגיל 8. מרחבים וקטורים פרישה, תלות \ אי-תלות לינארית, בסיס ומימד ... ( ) ( ) ( ) = L. uuruuruur. { v,v,v ( ) ( ) ( ) ( )

פתרון תרגיל 5 מבוא ללוגיקה ותורת הקבוצות, סתיו תשע"ד

gcd 24,15 = 3 3 =

חורף תש''ע פתרון בחינה סופית מועד א'

צעד ראשון להצטיינות מבוא: קבוצות מיוחדות של מספרים ממשיים

לוגיקה ותורת הקבוצות פתרון תרגיל בית 8 חורף תשע"ו ( ) ... חלק ראשון: שאלות שאינן להגשה נפריד למקרים:

אלגברה ליניארית (1) - תרגיל 6

לוגיקה ותורת הקבוצות פתרון תרגיל בית 4 אביב תשע"ו (2016)

תרגיל 13 משפטי רול ולגראנז הערות

ל הזכויות שמורות לדפנה וסטרייך

לדוגמה: במפורט: x C. ,a,7 ו- 13. כלומר בקיצור

( )( ) ( ) f : B C היא פונקציה חח"ע ועל מכיוון שהיא מוגדרת ע"י. מכיוון ש f היא פונקציהאז )) 2 ( ( = ) ( ( )) היא פונקציה חח"ע אז ועל פי הגדרת

אלגברה ליניארית 1 א' פתרון 7

c ארזים 26 בינואר משפט ברנסייד פתירה. Cl (z) = G / Cent (z) = q b r 2 הצגות ממשיות V = V 0 R C אזי מקבלים הצגה מרוכבת G GL R (V 0 ) GL C (V )

יסודות לוגיקה ותורת הקבוצות למערכות מידע (סמסטר ב 2012)

Logic and Set Theory for Comp. Sci.

משוואות רקורסיביות רקורסיה זו משוואה או אי שוויון אשר מתארת פונקציה בעזרת ערכי הפונקציה על ארגומנטים קטנים. למשל: יונתן יניב, דוד וייץ

{ : Halts on every input}

brookal/logic.html לוגיקה מתמטית תרגיל אלון ברוק

= 2. + sin(240 ) = = 3 ( tan(α) = 5 2 = sin(α) = sin(α) = 5. os(α) = + c ot(α) = π)) sin( 60 ) sin( 60 ) sin(

תרגול פעולות מומצאות 3

אלגברה לינארית מטריצות מטריצות הפיכות

מודלים חישוביים תרגולמס 5

co ארזים 3 במרץ 2016

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

סיכום לינארית 1 28 בינואר 2010 מרצה: יבגני סטרחוב מתרגלת: גילי שול אין המרצה או המתרגלת קשורים לסיכום זה בשום דרך.

אלגברה מודרנית פתרון שיעורי בית 6

אלגברה לינארית (1) - פתרון תרגיל 11

פתרון תרגיל 6 ממשוואות למבנים אלגברה למדעי ההוראה.

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

[ ] Observability, Controllability תרגול 6. ( t) t t קונטרולבילית H למימדים!!) והאובז' דוגמא: x. נשתמש בעובדה ש ) SS rank( S) = rank( עבור מטריצה m

מבנים אלגבריים II 27 במרץ 2012

אלגברה לינארית 1. המערכת הלא הומוגנית גם כן. יתרה מזאת כל פתרון של (A b) הוא מהצורה c + v כאשר v פתרון כלשהו של המערכת ההומוגנית

מתכנס בהחלט אם n n=1 a. k=m. k=m a k n n שקטן מאפסילון. אם קח, ניקח את ה- N שאנחנו. sin 2n מתכנס משום ש- n=1 n. ( 1) n 1

1 תוחלת מותנה. c ארזים 3 במאי G מדיד לפי Y.1 E (X1 A ) = E (Y 1 A )

תרגול מס' 6 פתרון מערכת משוואות ליניארית

אלגברה לינארית 1 יובל קפלן

מתמטיקה בדידה תרגול מס' 5

אינפי - 1 תרגול בינואר 2012

רשימת משפטים וטענות נכתב על ידי יהונתן רגב רשימת משפטים וטענות

סיכום- בעיות מינימוםמקסימום - שאלון 806

תרגול מס' 1 3 בנובמבר 2012

אלגוריתמים ללכסון מטריצות ואופרטורים

מתרגלת: שירה גילת סמסטר א 2017 תשע"ז

אלגברה ליניארית 1 א' פתרון 11

מתמטיקה בדידה תרגול מס' 13

פתרון תרגיל בית 6 מבוא לתורת החבורות סמסטר א תשע ז

Charles Augustin COULOMB ( ) קולון חוק = K F E המרחק סטט-קולון.

קבוצה היא שם כללי לתיאור אוסף כלשהו של איברים.

מבני נתונים ואלגוריתמים תרגול #11

x a x n D f (iii) x n a ,Cauchy

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

גירסה liran Home Page:

תורת המספרים 1 פירוק לגורמים ראשוניים סיכום הגדרות טענות ומשפטים אביב הגדרות 1.2 טענות

שדות הגדרת השדה: חשבון מודולו n: הגדרה: שדה F הוא קבוצה שיש בין אבריה שתי פעולות משפט: יהא F שדה. משפט: יהא F שדה ו- (mod )

סיכום בנושא של דיפרנציאביליות ונגזרות כיווניות

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ב (2012) דפי עזר

תרגיל 7 פונקציות טריגונומטריות הערות

חשבון אינפיניטסימלי מתקדם II 21 ביוני 2012

תרגול 1 חזרה טורי פורייה והתמרות אינטגרליות חורף תשע"ב זהויות טריגונומטריות

logn) = nlog. log(2n

אלגברה א' - פתרונות לשיעורי הבית סמסטר חורף תשס"ט

גבול ורציפות של פונקציה סקלרית שאלות נוספות

c ארזים 15 במרץ 2017

חשבון אינפיניטסימלי 1

מבוא לאלגברה ליניארית

I. גבולות. x 0. מתקיים L < ε. lim אם ורק אם. ( x) = 1. lim = 1. lim. x x ( ) הפונקציה נגזרות Δ 0. x Δx

. {e M: x e} מתקיים = 1 x X Y

שאלה 1 V AB פתרון AB 30 R3 20 R

נושאים בתיאוריה של מדעי המחשב

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

אלגברה ליניארית 1 א' פתרון 5

אלגברה ליניארית 1 א' פתרון 2

פתרונות , כך שאי השוויון המבוקש הוא ברור מאליו ולכן גם קודמו תקף ובכך מוכחת המונוטוניות העולה של הסדרה הנתונה.

תורת הקבוצות יובל קפלן סיכום הרצאות פרופ ארז לפיד בקורס "תורת הקבוצות" (80200) באוניברסיטה העברית,

נושאים: 4. בסיס 5. מימד ליניארית - אסוציאטיביות (קיבוץ) וקומטטיביות (חילוף) החיבור בין אברי V (הוקטורים) לאיברי F (סקלרים) התנאים:

1 סכום ישר של תת מרחבים

לוגיקה ותורת הקבוצות מבחן סופי אביב תשע"ד (2014) דפי עזר

מתמטיקה בדידה תרגול מס' 12

תורת הקבוצות תרגיל בית 2 פתרונות

רשימת משפטים והגדרות

( k) ( ) = ( ) ( ) ( ) ( ) A Ω P( B) P A B P A P B תכונות: A ו- B ב"ת, אזי: A, B ב "ת. בינומי: (ההסתברות לk הצלחות מתוך n ניסויים) n.

מבני נתונים ויעילות אלגוריתמים

סדרות - תרגילים הכנה לבגרות 5 יח"ל

מבנים אלגבריים למדעי המחשב מערכי תרגול קורס פברואר 2017, גרסה 1.5

חידה לחימום. כתבו תכappleית מחשב, המקבלת כקלט את M ו- N, מחליטה האם ברצוappleה להיות השחקן הפותח או השחקן השappleי, ותשחק כך שהיא תappleצח תמיד.

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

אוטומטים- תרגול 8 שפות חסרות הקשר

הגדרה: קבוצת פעילויות חוקית היא קבוצה בה כל שתי פעילויות

מבנים אלגבריים למדעי המחשב מערכי תרגול קורס אבי אלון, תומר באואר וגיא בלשר ינואר 2016, גרסה 0.22

אוטומט סופי דטרמיניסטי מוגדר ע"י החמישייה:

(2) מיונים השאלות. .0 left right n 1. void Sort(int A[], int left, int right) { int p;

אלגברה לינארית 2 יובל קפלן סיכום הרצאות מר שמואל ברגר בקורס "אלגברה לינארית 2" (80135) באוניברסיטה העברית,

מינימיזציה של DFA מינימיזציה של הקנוני שאותה ראינו בסעיף הקודם. בנוסף, נוכיח את יחידות האוטומט המינימלי בכך שנראה שכל אוטומט על ידי שינוי שמות

אלגברה ליניארית 1 א' פתרון 8

קומבינטוריקה על פי הרצאות מאת פרופ' גיל קלעי 19 ביולי = 2 n k. k= ( 1) n n + 1

קיום ויחידות פתרונות למשוואות דיפרנציאליות

תורת הקבוצות ניר אדר ניר אדר.

Transcript:

מבוא לתורת הקודים לתיקון שגיאות שיעור ראשון /0/05 בירוקרטיה וכאלה מרצה: אמיר שפילקה בנבנישתי. אין תרגול, יהיו תרגילים. יהיו בערך פעם בשבוע שבועיים, התרגיל הראשון יהיה השבוע. הוא יכלול בעיקר חישובים. כל התרגילים הם להגשה. הציון הוא %80 בחינה %0 תרגילים. שעת קבלה בשני ב :00 בחדר 8 בשרייבר. מייל: shpilka@post.tau.ac.il חומר הקדמה במאמר מ 948 Shannonכתב על התרחיש הבא: Aliceרוצה לשלוח הודעה ל Bob. מה קורה כשבתווך יש רעש? מודל: :Binary Symmetric Channel כשרוצים לשלוח ביט מקבלים בהסתברות p את אותו הביט, ובהסתברות p את הביט השונה. מודל נוסף: :noiseless אם נרצה לשלוח פקס, רוב הפיקסלים שנרצה לשלוח הם לבנים. כלומר מרחב ההודעות שלנו הוא לא אחיד. ולכן נרצה לחסוך, כלומר נרצה לדחוס. במצב שבו אנחנו,noiseless יתקיימו מצבים שבהם נרצה לחסוך, ולכן נרצה לבצע.compression נתמקד במודל noiseless בדוגמא של פקס. פיקסל לבן: %99, פיקסל שחור: %. נחשוב על לבן כעל 0 ועל שחור כעל. מסכימים מראש על הקידוד הבא: נחתוך את הביטים לקבוצות של 0 ביטים. כשהבלוק הוא 0 אפסים, נשלח 0 יחיד. כשיש בו רק אחדות, נשלח ואז את הבלוק. נשאלת השאלה האם חסכנו בקידוד הזה? נניח שהפקס המקורי הכיל n פיקסלים. ננסה להבין כמה פיקסלים אנחנו מעבירים באמצעות הקידוד הזה בממוצע. P (block with only zeros) = 0.99 0 > 0.9 P (block with at least one in it) < 0. לכן כמות הביטים שנשלח יהיה: כלומר, חסכנו פי 5 בערך. Shannon שאל: מה האופטימום שאפשר להשיג מבחינת דחיסה? הוא אפיין בדיוק כמה אפשר לחסוך. אנטרופיה n 0 (0.9 + 0. ) = n 5

. x Ω D(X) =.D : Ω [0, ] :Ω התפלגות על D מרחב סופי. Ω נגדיר את האנטרופיה: h(x) = log D(x) H(D) = Eh(x) = D(X) log D(X) = D(x) logd(x) x Ω x Ω משפט שאנון לערוץ ללא רעש: לכל D, Ω כנ ל יש פונקציית } {0, Ω Dec : {0, } Ω,Enc : כך שלכל x Ω מתקיים: Dec(Enc(x)) = x E X D [ Enc(X) ] [H(D), H(D) + ] וגם ואי אפשר טוב יותר. הוכחה: Huffman tree לשם פשטות, נניח שכל ההסתברויות מהצורה.i N, i נתחיל לבנות עץ האפמן. ניקח בכל פעם את הקודקודים עם הסכום הנמוך ביותר, ונחבר אליהם קודקוד חדש מלמעלה. נשים לב שאף מחרוזת בקידוד אינה רישא של מחרוזת אחרת. יקבל מחרוזת באורך i. תכונה מרכזית של הקידוד: איבר שההסתברות שלו היא i ניתן להוכיח תכונה זו באינדוקציה על כמות האיברים ב Ω. נראה שהבנייה הזו משיגה בדיוק את האנטרופיה. E X D = x i ix x = x D(x) log D(x) = H(D)

, ואז ניתן לראות שאנחנו מבזבזים במקרה שבו החזקות הן לא כאלה, ניתן לקחת את המספר הכי קרוב אליו מלמעלה מהצורה i לכל היותר +. Noisy channel אלפבית הודעות מקור Σ. אלפבית שהערוץ מציג Γ. לכל הודעה ב Σ קיימת הסתברות מסוימת לקבל הודעה מ Γ. דוגמא: Channel) BSC (Binary Symmetric עם פרמטר.p עוד דוגמא: BEC: Binary Erasure Channel עם פרמטר p, בו יש הסתברות שהודעה מגיעה מחוקה במקום לקבל את הביט ההפוך. ואז ניתן לדעת שהייתה בעיה. משפט שאנון עבור BSC(p) לכל < p 0 קיים קבוע < c < 0 וזוג פונקציות Enc, Dec Enc : {0, } k {0, } n Dec : {0, } n {0, } k n = c k כך שאם בוחרים באקראי הסתברות אחידה x,,0} { k מקודדים ל Enc(x) ו שולחים בערוץ הרועש. מסתכלים על המחרוזת ( Enc(xכאשר η η {0, } n,p r(η i = ) = p אז בהסתברות גבוהה Dec(Enc(x) + η) = x.(h(p) = p log p ( p) log( p) (כאשר.c > H(p) u, v {0, } n, dist(u, v) = {i u i v i } עבור BSC מספיק לקחת הוכחה: לכל xנבחר {0, } k את Enc(x) באקראי מתוך } n.{0, נגדיר :Hamming distance Dec(y) = x : dist(y, Enc(x)) is minimal wt(η) = {i η i = } = dist(η, 0) (כשיש כמה מחרוזות מתאימות, נבחר אחת מהן). נקבע איזשהו x {0, } k ואת.Enc(x) נגדיר y = Enc(x) η. בהסתברות גבוהה המשקל של η הוא לכל היותר p). + ε)n. נראה שההסתברות שאיזשהו x x מקיים dist(enc(x ), y) (p + ε)n היא קטנה. נוכיח את : 3

. P r (wt(η) > (p + ε)n) chernoff < e ε 3 n. נקבע x כלשהו. P r (dist (Enc (x), y) (p + ε) n) = V ol(ball(0, r)) =. k V ol(ball(y,(p+ε)n)) V ol (Ball (y, (p + ε) n)) n ולכן ההסתברות שאיזשהו x יפול ב כדור היא לכל היותר n ( ) ( ) ( ) n n n + +... + = H( r n )n+o(log n) 0 r V ol(ball(y, (p + ε)n)) = n( k n +H(p+ε) +O()) אפשר להראות את זה עם קירוב סטירלינג. ולכן n > k H(p + ε) אם אנחנו בוחרים את n בצורה הבאה: אנחנו מקבלים את התוצאה הרצויה. P r E,η (Dec (Enc (x) η) x) < e ε 3 n + n( k n H(p+ε) o()) > c אם n = c k אז ההסתברות שניכשל בפענוח של x היא קטנה מהחלק הימני של האי שוויון האחרון עבור איזשהו לכל H(p).ε > 0 היחס k n נקרא קצב. H(p) נקרא הקיבול של.BSC(p) משפט: לכל < p < 0 ולכל < δ 0 יש n 0 כך שאם n n 0 וגם k ( H(p)) + ε)n אז לכל זוג פונקציות E : {0, } k {0, } n, D : {0, } n {0, } k P r η,x {0,} k (D (E(x) η) = x) < δ מתקיים: שיעור שני 8/0/05 בשיעור שעבר: מודל של שאנון לרעש.BSC, BEC קיבול של ערוץ משפט שאנון לערוץ רועש משפט הדחיסה (לערוצים בלי רעש) היום נדבר על העבודה של.Hamming 4

Hamming אנחנו רוצים להיות מסוגלים לפענח בוודאות וביעילות. סימונים Σ אלפבית. Enc : Σ k Σ n message length הוא אורך ההודעה k.codeword/block length הוא אורך מילת קוד n d: המרחק המינימלי של הקוד d = min x y dist(enc(x), Enc(y)) {i Enc(x) i Enc(y) i } q Σ גודל האלפבית. נסמן Image(Enc) C = קבוצת מילות הקוד. קוד מסומן ע י.(n, k, d) q נסמן ב e את מספר הטעויות שקרו. מהו ה e המקסימלי עבורו אנו יכולים לדעת שקרתה טעות? קיבלנו,w = Enc(x) + η מהו ה e המקסימלי e) (w + (η) = כך שנוכל לדעת בוודאות?w / C תשובה:.d מהו ה e המקסימלי עבורו נוכל לשחזר בוודאות את?Enc(x) תשובה: אנחנו רוצים ש: n יהיה קטן ככל האפשר k יהיה גדול ככל האפשר d יהיה גדול ככל האפשר. דוגמאות:. d q קטן (אנחנו עובדים עם מחשבים אז אנחנו מעדיפים ש q יהיה חזקה של.). הערה: יותר קל לבנות קודים עם q גדול..Enc(x) = x ניתן לבחור :d =.(repition code (זה Enc(x) = (x, x) ניתן לבחור :d = Enc(x) = (x,..., x k, k (חיבור מודולו.( עוד אפשרות: i) i= x נראה כי באפשרות זו אכן מתקיים = d: אם (y dist(x, אז בכל מקרה המרחק גדול שווה ל. אחרת = y).dist(x, נשים לב שמספר האחדות ב x בהכרח שונה ממספר האחדות ב y, אם אחד זוגי אז השני אי זוגי. ובמקרה כזה גם ה bit parity שונה. = 3 d: כאן המקרה יותר קשה, ונטפל בו בקרוב. קוד ליניארי קוד עבורו Enc הוא העתקה ליניארית הוא קוד ליניארי. צריך Σ k מרחב וקטורי. Σ הוא שדה. דוגמא: F: {,0} עם חיבור וכפל מודולו. באופן שקול: C Σ n יהיה מ ו. ניתן לתאר קידוד ע י מטריצה G: n k Enc(x) = G n k (x) העמודות במטריצה הן בסיס ל C..dim(C) = k 5

.Generating Matrix נקראת המטריצה היוצרת G.C = {w H w = 0} = Ker(H) ומתקיים:.(P CM גם (נקראת H מטריצת בדיקת זוגיות. מסומנת Parity Check Matrix.(n k) n היא מטריצה מסדר H הקוד הדואלי ל C מסומן כ { C C = {v {0, } n v w w המרחב הנפרש ע י שורות.H תכונות:. C הוא מ ו.. מספיק לדרוש שאם w,..., w k הם בסיס ל G אז }} k.c = {v v w,..., v w כזכור, עמודות G הן בסיס ל C. ולכן: C = {v v G = 0} = {v v G = 0} מרחב הפתרונות:.dim(C ) = n k n הערה: יש אפשרות שהחיתוך בין C ל C לא יהיה ריק. לדוגמא, תרגיל שמדגים את הקיצוניות של המצב הזה: מצאו C ממימד k n משוואות בת ל. i= a i x i = 0,..., n i= a i k כך ש C.C = (כדי למצוא פתרון לתרגיל מייצרים k משוואות: = 0 i x יהי v,..., v n k בסיס ל.C v. H =.. v n k תרגיל: 0} = x.c = {x H מה הקשר (אם יש בכלל) בין המרחק המינימלי בקוד ל H? הבחנה: אם C הוא קוד לינארי, אז 0) dist(x,.dist(c) = min 0 x C wt(x) = min 0 x C הוכחה: dist(x, y) = {i x i y i } = {i x i y i 0} = dist(x y, 0) אבל מכיוון ש y,x הן מילות קוד, אז גם הפרש שלהם הוא מילת קוד (כי מדובר בקוד ליניארי). המרחק המינימלי בקוד ליניארי C הוא גדול שווה ל d אמ ם אין ב C מילות קוד ממשקל קטן מ d, פרט ל 0. H (x) = x c +... + x k c n k = 0 dist(c) d אמ ם כל צירוף לינארי של פחות מ d עמודות של H אינו שווה ל 0. נחזר למקרה בו = 3 d: מעל GF ניקח את H להיות מטריצה שכל עמודותיה שונות, (כלומר, כל צירוף של עמודות מהמטריצה יהיה שונה מ 0, ולכן כל עמודות מהמטריצה צריכות להיות שונות, ולכן נדרוש שכל העמודות במטריצה יהיו שונות.) ואף עמודה אינה 0. איך נוכל לגרום לכך ש k ו n יהיו כמה שיותר קרובים? נסמן n. k = l אז המטריצה היא מסדר l, n ונרצה ש l יהיה כמה שיותר קטן ביחס ל n. אם נרצה לבחור כמה שיותר עמודות במטריצה כך שהן יהיו שונות אחת מהשנייה ונרצה להגדיל את n, המקסימום שנוכל לבחור הוא l n. = H = [] l (l ) עמודות H יהיו {0} l }.{0, מסקנה: לכל > 0 l טבעי קיים קוד 3), l.( l, l האמינג הוכיח משפט שאומר שזהו הקוד הטוב ביותר. מה זה אומר? שעבור = q d, =,3 אם l n = עבור l טבעי כלשהו, אז ה k הטוב ביותר שנוכל לקבל הוא l.k = l הקוד שלקחנו הוא מושלם במובן שאם נסתכל על ה כדורים של מילות הקוד (שמייצגים את המילת קוד והמילים שקרובות למילות הקוד לאחר שיבוש של מספר ביטים), אז הכדורים מכסים את כל המרחב ואין חיתוך בין כדורים. נוכיח את זה: 6

.n הגודל הוא +? d כמה מילות קוד יש לנו? ( l. k = l) מה גודל הכדור ברדיוס = כמה מילים בתוך כל הכדורים יש לנו? (n + ) k = l l l = l = n כלומר אנחנו מכסים את כל המרחב ע י המילים בכל הכדורים. טענה נחמדה: אם יש לנו קוד עם d אי זוגי, נוכל להוסיף לו parity bit ולהגדיל את d ב. חסמים על קודים d סביב מילות קוד הם זרים. ראינו כבר חסם על קודים: חסם הכדורים של המינג. נובע מכך שכדורים ברדיוס k d Ball(0, ) n סימונים:.(0 < R ).R = n k קצב של קוד :(Rate).δ = d n מרחק יחסי: אנחנו רוצים:. R n Ball ( 0, δ n) n ( R n Ball 0, δ ) n = R n H( δ ) n+o(n) n d n k +.(Σ = {0, } (מעל R + H( δ קיבלנו את החסם: ) חסם סינגלטון :(Singleton) [n, k, d] q קוד, מתקיים: בכל (אסימפטוטית R.(δ הוכחה: יהי.C Σ n נביט בהטלה על k הקוארדינטות הראשונות. יש k Σ מחרוזות שונות. C. = Σ k לפי שובך היונים, יש,x y C המסכימים על k הקוארדינטות הראשונות. בפרט: + k.dist(x, y) n (k ) = n, n ] קוד. k, n +] q קוד (MDS-Code) Maximum Distance Separable הוא קוד שמשיג את חסם סינגלטון, כלומר הוא מעל F לא ניתן להגיע לסינגלטון. נראה עבור קודים ליניארים: ב ( PCM ) Parity Check Matrix של קוד MDS כל n k עמודות הן בת ל. נראה כי מעל F לא ניתן להגיע לתוצאה הרצויה. נניח כי n k העמודות הראשונות הן בת ל (אחרת סיימנו). נרצה להוסיף עמודה אחת נוספת, נרצה עמודה נוספת שתהיה תלויה ב k n העמודות הראשונות. אבל מעל F צירוף של העמודות האלה הוא חיבור שלהן. אבל כעת לא נוכל להוסיף עמודה נוספת שתהיה תלויה בכל עמודות הקודמות, מכיוון שאז נקבל את אותה עמודה נוספת או 0. הסבר:. אם n k העמודות הראשונות ת ל, אז יש צ ל באורך קצר או שווה ל k n ובפרט יש מילה בגרעין (כלומר, מילת קוד) ממשקל קטן שווה ל k n.. אם n k העמודות הראשונות בת ל, אז הן בסיס. אם עמודה אחרת היא צ ל של t < n k מהן אז יש מילה בגרעין ממשקל גדול שווה ל + t.n k (ואז הקוד אינו.(MDS 3. אם כל עמודה אחרת היא צרוף של בדיוק כל n k איברי הבסיס, ו k, אז יש עמודות זהות. 7

כדי ש H תהיה PCM של MDS קוד, חייב להתקיים שכל n k עמודות ב H הן בת ל. נחפש מטריצה כזו: :moment curve יהיו α,..., α n איברים שונים. נביט במטריצה הבאה: α... a n α... αn...... α t... a t n כל t עמ הן בת ל. שדה :Field כל מה שמקיים את אקס השדה. (כפל וחיבור שמתנהגים יפה ויש הופכי ונגדי). דוגמאות: F. עם חיבור וכפל מודולו..Q, R, C..3 אם p ראשוני, אז } p F p = GF (p) = {0,,..., עם חיבור וכפל מודולו.p לכל שני שלמים n, m יש שלמים a, b כך ש ( m.a n + b m = gcd(n, אם m ראשוני ו m n < נקבל: = m a. n + b אז במקרה שיש לנו מספר p ראשוני, נוכל למצוא בעזרת האלגוריתם של אוקלידס למציאת gcd את ההופכי של מספר מסוים בשדה F. p.[n, k, n k + ] q מסקנה: לכל q ראשוני ו q n יש קוד הוכחה: יהיו α,,... α n איברי שדה שונים. נגדיר: H = [ αj i ] i=0...n k,j=...n נובע מכך שהדטרמיננטה של מטריצה ונדרמונדה היא ) j i<j α) i α בכל שדה. מציין של שדה: כל שדה מכיל.0, נסתכל על הקבוצה:...},.{, +, + + שדה הוא ממציין סופי אם הקבוצה הנ ל סופית. והמציין במקרה הזה הוא גודל הקבוצה. דוגמא: המציין של Fהוא p p. נאמר שהמציין הוא 0 אם הקבוצה אינסופית, לדוגמא ב C,Q.,R טענה: המציין הוא 0 או ראשוני. a.n = ( { + }}... + ) { b ( { + }}... + ) { a b=n {}}{ הוכחה: אם המציין הוא,n = a b אז = 0 +... + = ומכך שבשדה לכל איבר שונה מ 0 יש הופכי, נקבל a = n או b. = n בפרט, n ראשוני. הסבר: אם = 0 b a ו a הפיך אז = 0 b (כפל ב (a ואז b < n }...,, {, + בסתירה להגדרת.n הערה: נשים לב שאם המציין של שדה F הוא p אז F מכיל את {0, p,...,,} וכמו כן החיבור של שני איברים מהקבוצה (וכן הכפל שלהם) מתבצע מודולו p. ולכן F. p F טענה: F עם מציין p הוא מ ו מעל F. p הוכחה: ברור. דוגמא: } + x F 4 = {0,, x, עם חיבור מודולו וכפל: + x.x x = מסקנה: אם dim F/F p = k אז. F = p k שיעור שלישי 4//05 חזרה על שיעורים קודמים (n,k,d) q קוד. R = k n קצב. k מימד/אורך ההודעה. δ = d n מרחק יחסי. d מרחק מינימלי. 8

היום דיברנו על קודים ליניארים, G מטריצה יוצרת, מטריצה H לבדיקת זוגיות. קוד המינג 3), l.( l, l ol(ball(0,. k V קוד שמשיג חסם זה נקרא perfect code (קוד המינג הוא כזה). d חסם הרדיוסים של המינג: n )) חסם סינגלטון + k.d n קוד שמשיג חסם זה ייקרא.MDS k (a,..., a k ) F k a i x i קוד Reed-Solomon קוד.Reed-Muller קוד האדמרד. חסם.Gilbert-Varshamov הקודים של.Wozenkraft קודי Reed-Solomon יהי F שדה בגודל.q n לכל k נגדיר קוד.(n, k, n k + ) q F: k נחשוב על כל איבר ב F k כמתאר פולינום. i=0 הודעות = F}.{f(x) f is polynom with degree lower than k over נקבע n איברים שונים בשדה α.,,... α n F (נשים לב שזה מכריח את q להיות גדול שווה ל n.) Enc(f) = (f(α ),..., f(α n )) כיוון שהקוד ליניארי (כי מדובר בפולינומים) מספיק להבין מה המספר המינימלי של קוארדינטות שונות מ 0 לכל מילת קוד שאינה 0. עובדה: לפולינום ממעלה k יש לכל היותר k שורשים. לכן בכל מילת קוד ששונה מ 0 יש לכל היותר k אפסים, ובפרט מרחקה מ 0 הוא לפחות + k n. k) ( = n דוגמא: הודעה: ) k.(x α )... (x α ובמילת הקוד המתאימה יש בדיוק + k n קוארדינטות שאינן.0 המטריצה היוצרת של הקוד: α... α k α... α k......... α n... α k n n k a 0... a k = f(α )... f(α n ) כלומר זוהי מטריצת ונדרמונדה. דוגמא: ) 8 ( GF.F = קוד 7) 8.(56, 40, ובבינארית (ביטים ולא בייטים): 7) 40, 8 56,.(8 מעל F ידועים קודים טובים יותר. הסיבה שמשתמשים דווקא בקוד הזה ולא בקודים אחרים היא שסוג הטעויות שלנו הוא burst error (לדוגמא, שריטה), ואז קיימת דריסה של כמה תאים רצופים. אז אפילו אם קיימות 30 טעויות, אבל הן רצופות, נקבל שבעצם הן הרסו רק 5 תווים של השדה F. 8 9

קודי Reed-Muller דוגמא: משתנים. הודעות: פולינומים ב משתנים ממעלה קטנה שווה ל l, בכל משתנה מעל F. q l f(x, y) = a i,j x i y j i,j=0 מספר משתנים: ) +.(l Enc(f) = (f(α, β)) (α,β) F q זה נותן לנו קוד.(n = q, k = (l + ), d =?) q נשים לב:.q = n טענה: l) d = (q.f = l ניתן לכתוב את f בתור: (y) i=0 xi f i בסופו של דבר הקוד הוא קוד.(q, (l + ), (q l) ) q באופן כללי, m משתנים, דרגה l, שדה בגודל q. מקרה א :.l < q הודעות: פולינומים ב m משתנים מדרגה כוללת l.(total degree) קידוד: f (f(α)) α F m q נשים לב שזה לא לגמרי מכליל את קוד,Reed-Muller כי כאן אנחנו חוסמים את הדרגה הכוללת, ולא את המעלה של כל אחד מהפולינומים. הפולינום הכללי: f = d,...,dm di l 0 d i a d,...,d m x d...xdm m אורך = m.n = q. ( ) m+l מימד = m מרחק qm l q ) ( (נוכיח את זה בשיעורי הבית). דוגמא: (l x) (... x) (פולינום ממעלה l עם משתנים שקטים. במקרה כזה המרחק הוא שווה לחסם: (q l) q m = ( l q ) qm.(q m, ( ) m+l m, ( l בסופו של דבר הקוד הוא קוד q )qm ) q ( ) ( ) m m + l m + l m m ( ) m l k m דוגמא (לא מדויקת):.l log l log log k,m logk log log k,q log k עבור l, m, q כנ ל: q m k 0

( d = l ) ( ) q m k = ( o()) k q log log k וסך הכל הקוד הוא (k, k, ( o()) k ) log k או בצורה אחרת: (n, n, ( o())n) O(log n) מקרה ב : l q ההודעות הן פולינומים ב mמשתנים מדרגה כוללת קטנה שווה ל l, אך אף משתנה לא מופיע מדרגה גדולה מ q. k =?,n = q m.0 b < q כאשר,l = a(q ) + b.d = q m a ( b q ) a. במקרה כזה אנחנו רואים ש d הוא קטן שווה דוגמא: b)) i= ((x 0)... (x (q ))) ((x a+ )... (x a+ מהחסם. דוגמא: =.q.n = m k = ( ) m + 0 ( ) m +... + ( ) m = l ( ) m l.d = m l.rm(m, l) ( m, ( m l) הקוד הוא קוד ) m l,.(n, n, נקבל n),l = m עבור מה קורה כאשר = l? נקבל ) m ( m, m +, קוד האדמרד: ).RM(m, זה קוד עם מרחק מאוד טוב, אבל נשים לב ש + n,k = log שזה לא נהדר. דרך נוספת להסתכל על קודי האדמרד: תהי ) A מטריצה של ( ± כך (ש I.A) A( t = n ( 0 = דוגמא: 0 ( ) k.a A t = k I אז A = ואם כאשר זו מכפלה טנזורית. תהיינו v,..., v n שורות v i ṽ i {0, } n,a (כאשר 0,.( וחוץ מזה ניקח.ũ i = ṽ i נקבל קבוצה של n הודעות: } i.{ũ i } {ṽ טענה: כל A כנ ל נותנת ) (n, log n +, n קוד. הוכחה: = 0 j v i, v לכל.i j מתקיים מכיוון ש I.A A t = n.dist(v i, v j ) = מתקיים n i j מקומות. כלומר, לכל n נקבל שכל מילות קוד מסכימות בדיוק על.i j לכל dist(ũ i, ũ j ) = וגם n dist(ṽ i, ũ j ) = ולכן גם n.dist(ṽ i, ṽ j ) = n ובפרט גם סיכום עד כה קודים בינאריים: 3), l (n log q, k log q, n k + ),( l, l +, l ) l,( l, l (מתקבל מ RS ).. k V ol(ball(0, d חסמים: + k n,d n ))

התנהגות אסימפטוטית של קודים: משפחה של קודים } i.c i = (n i, k i, d i ) qi,c = {C הקצב של המשפחה: R(C) = lim inf i k i n i δ(c) = lim inf d i n i משפחה היא אסימפטוטית טובה אם > 0 δ(c).r(c), לדוגמא RS : (n, n, n + ) n היא אינה משפחה טובה. משפט Gilbert-Varshamov לכל R, δ כך ש < H(δ) R + יש משפחה עם R(C) R וגם.δ(C) δ הוכחה: בנייה חמדנית. נתחיל עם.C 0 = {0, } n בכל שלב, כל עוד נשארו מילים שלא נמחקו, נוסיף ל C אחת המילים, ונמחק את כל המילים במרחק δn מהמילה שהוספנו. (למה.(d = δn כי?δn בכל שלב זורקים.V ol(ball(0, δn)) H(δ) (H(δ)+ε)n.R H(δ) ε ומכאן C n ולכן ( H(δ) ε)n = (H(δ)+ε)n בקוד הנ ל ניתן לתקן כל δn טעויות. בקוד של שאנון, עבור אחוז δ של טעויות מקריות, ייתן קוד מקצב (δ )H. הוכחה : (קוד ליניארי) תהי G מטריצה.k n כאשר k = ( H(δ) ε)n אקראית מעל ().GF (כל קוארדינטה היא 0/ באופן ב ת אחיד). טענה: בהסתברות טובה, אין אף מילת קוד בכדור ברדיוס δn מסביב ל 0. הוכחה: עבור הודעה xמסוימת,,0} { k P r (wt(x) δn) V ol(ball(0, δn)) n (H(δ)+ε)n k. ההסתברות שתהיה הודעה רעה היא קטנה שווה ל εn = n