מבנים אלגבריים למדעי המחשב - ארז שיינר
ספר הקורס
ההרצאות מבוססות באופן כללי על הספר Abstarct Algebra - Theory and Applications by Thomas W. Judson
נושאי ההרצאות
הרצאה 1 הקדמה; הסבר על קידוד והצפנה, מבוא למבנים אלגבריים
- קידוד הוא שיטה להעברת מידע ובין היתר מטרתו היא להבטיח את נכונות המידע ולזהות (ולתקן) שגיאות.
- הצפנה היא שיטה להסתרת מידע במקום בו כולם רואים את התוכן המועבר, ובנוסף דרך להבטיח מי הוא מקור המידע (חתימה).
- המבנים האלגבריים שאנו עוסקים בהם בקורס הם חבורה, חוג ושדה.
הרצאה 2 חבורות ותת חבורות; פרקים 3,4 מהספר
- תזכורת לגבי חבורות, תכונת הצמצום.
- [math]\displaystyle{ \mathbb{Z},\mathbb{Z}_n,{GL}_n,{SL}_n,S_n }[/math].
- תת חבורות; קווטרניונים, מעגל היחידה ושורשי יחידה, המרוכבים ללא אפס כתת חבורה של מטריצות ממשיות בגודל 2 על 2.
- תנאי מקוצר לבדיקת תת חבורה.
- כתיב אקספוננט [math]\displaystyle{ g^n=g\cdots g }[/math] או כפל [math]\displaystyle{ ng=g+\cdots+g }[/math] בהתאם לסימון פעולת החבורה.
- סדר של איבר, תת חבורה ציקלית, סדר האיבר הוא גודל החבורה הציקלית.
הרצאה 3 חבורת תמורות, סימן התמורה; פרק 5 מהספר
- הגדרת סימן של תמורה לפי חלוקת פולינומים, הוכחת כפליות הסימן.
- הצגת תמורה כמחזורים זרים, הצגת מחזורים כהרכבה של חילופים, סימן חילוף הוא שלילי.
הרצאה 4 הומומורפיזמים, איזומורפיזמים, משפט קיילי, משפט לגראנג'; פרקים 9 ו6 מהספר
- הומומורפיזמים, איזומורפיזמים.
- תמונה של הומומורפיזם היא תת חבורה.
- משפט קיילי- כל חבורה איזומורפית לתת חבורה של חבורת תמורות.
- תת חבורה מחלקת חבורה למחלקות שקילות (קוסטים) שוות בגודלן לגודל תת החבורה.
- אינדקס תת החבורה הוא מספר מחלקות השקילות שהיא מייצרת בחבורה, וזה בדיוק גודל החבורה חלקי גודל תת החבורה (משפט לגראנג').
- בחבורה סופית, לכל איבר יש סדר סופי ותת חבורה צקלית בגודל סדר האיבר. לכן סדר כל איבר מחלק את גודל החבורה.
- חבורה מגודל ראשוני חייבת להיות ציקלית, וכל איבר פרט לאיבר היחידה יוצר אותה.
- לפני הרצאה זו, חזרו בבקשה על הנושא של יחסי שקילות. ניתן לצפות בסרטון הבא:
הרצאה 5 חבורת אוילר, משפטי אוילר ופרמה; פרק 6 מהספר
- זוג מספרים שלמים [math]\displaystyle{ a,b }[/math] נקראים שקולים מודולו n אם קיים שלם [math]\displaystyle{ q }[/math] כך ש [math]\displaystyle{ a=b+q\cdot n }[/math]
- חלוקה עם שארית: לכל מספר טבעי a ולכל מספר שלם b קיים זוג שלמים יחיד [math]\displaystyle{ q,r }[/math] כך ש [math]\displaystyle{ b=q\cdot a+r }[/math] וגם [math]\displaystyle{ 0\leq r \lt a }[/math].
- המספר q נקרא מנת החלוקה והמספר r נקרא שארית החלוקה.
- [math]\displaystyle{ ab }[/math] שקול מודולו n למכפלת השאריות של [math]\displaystyle{ a,b }[/math] בחלוקה בn.
- לכל שני מספרים טבעיים [math]\displaystyle{ k\lt n }[/math] מתקיים כי [math]\displaystyle{ gcd(n,k)=gcd(n-k,k) }[/math]
- לכל שני מספריים טבעיים [math]\displaystyle{ n,k }[/math] קיימים מספרים שלמים [math]\displaystyle{ a,b }[/math] כך ש [math]\displaystyle{ an+bk=gcd(n,k) }[/math]
- (הוכחה באינדוקציה על הגודל של n+k. אם n=k סיימנו, אחרת אם [math]\displaystyle{ k\lt n }[/math] אזי [math]\displaystyle{ gcd(n,k)=gcd(n-k,k)=a(n-k)+bk=an+(b-a)k }[/math])
- שני מספרים טבעיים n,k נקראים זרים אם [math]\displaystyle{ gcd(n,k)=1 }[/math]
- ב[math]\displaystyle{ \mathbb{Z}_n }[/math] עם פעולת הכפל מודולו n האיברים ההפיכים הם בדיוק המספרים הזרים ל n.
- עבור מספר טבעי [math]\displaystyle{ 1\lt n }[/math] קבוצת המספרים הטבעיים הזרים לn וקטנים ממנו מהווה חבורה ביחס לכפל מודולו n, היא נקראית חבורת אוילר ומסומנת [math]\displaystyle{ U_n }[/math].
- [math]\displaystyle{ \mathbb{Z}_n }[/math] עם פעולות חיבור וכפל מודולו n הוא שדה אם ורק אם n הינו מספר ראשוני.
- פונקצית אוילר [math]\displaystyle{ \phi(n) }[/math] היא מספר המספרים הטבעיים שקטנים או שווים לn וזרים לו.
- משפט אוילר - יהיו שני מספרים טבעיים זרים [math]\displaystyle{ a\lt n }[/math]. אזי [math]\displaystyle{ a^{\phi(n)}\equiv 1 }[/math] מודולו n.
- המשפט הקטן של פרמה - יהי p ראשוני ומספר טבעי [math]\displaystyle{ a\lt p }[/math] אזי [math]\displaystyle{ a^{p-1}\equiv 1 }[/math] מודולו p.
- בפרט, בתנאי המשפט, [math]\displaystyle{ a^p\equiv a }[/math] מודולו p.
- למעשה התוצאה תקיפה לכל מספר טבעי [math]\displaystyle{ a }[/math], כיוון ש [math]\displaystyle{ a^{\phi(n)}=\left(qn+r\right)^{\phi(n)}\equiv r^{\phi(n)} }[/math], וגם [math]\displaystyle{ r }[/math] זר ל [math]\displaystyle{ n }[/math].
הרצאות 6-7 הצפנה סימטרית (מפתח פרטי), הצפנה אסימטרית (מפתח ציבורי), חתימה; פרק 7 מהספר
- הצפנה; העברת מידע בערוץ פומבי כך שרק המשתתפים בהצפנה יוכלו להבין אותו, הוכחה לזהות כותב המידע (בין היתר כותב המידע לא יוכל להתנער ממנו), הוכחה לאמינות המידע (המידע אינו חלקי ואף אחד לא שינה אותו).
- הצפנה סימטרית - הצפנה בה לשני הצדדים יש סוד משותף שהעבירו מראש בערוץ שאינו פומבי (משאית ברינקס למשל).
- הצפנה פומבית - הצפנה ללא סוד מתואם מראש, באמצעות מפתחות פומביים (שכולם רואים).
- פרקטית הצדדים מעבירים מפתח סודי באמצעות הצפנה פומבית, ואז עוברים להצפנה סימטרית.
הצפנות סימטריות וחוזקן, RSA, דיפי-הלמן.
הרצאות 8-9 משפט האיזומורפיזם; פרקים 10,11 מהספר
תת חבורות נורמליות, חבורות מנה, משפט האיזומורפיזם הראשון.
הדגמה על ידי חבורת המודולו, מותר להפעיל את המודולו בכל שלב שנרצה.
הרצאה 10 קידוד; פרק 8 מהספר
קידוד, ספרת ביקורת של תעודת זהות, קוד לינארי, קוד המינג.
checksum בפרוטוקולי IP, TCP, UDP.
הרצאה 11 חוג הפולינומים; פרקים 16,17 מהספר
חלוקה עם שארית, אידיאלים.
הרצאה 12 קודים ציקליים; פרק 22 מהספר
השדה הבינארי, קודים פולינומיים.
CRC בשימוש פרוטוקול Ethernet.