תורות המספרים ־ הרצאה 7

‫תורות המספרים ־ הרצאה ‪7‬‬
‫‪ 17‬בנובמבר ‪2014‬‬
‫פתרון קונגרואנציות ממעלה ראשונה‬
‫ראינו שעבור המשוואה )‪:ax ≡ b ( mod n‬‬
‫‪ .1‬יש פתרון אמ"מ ‪.d := gcd(a, n)|b‬‬
‫‪ x ∈ Z .2‬פותר את המשוואה )בהנחה שיש פתרון( אמ"מ‬
‫‬
‫‪n‬‬
‫‪d‬‬
‫‪mod‬‬
‫‪b‬‬
‫‪d‬‬
‫≡ ‪. ad x‬‬
‫‪ .3‬כלל הפתרונות נתונים ע"י ‪ xj = x0 + j nd‬כאשר ‪ x0‬הפתרון היחיד למשוואה המצומצמת‬
‫‪. ad x ≡ db‬‬
‫‪mod nd‬‬
‫‪ .4‬אם מסתכלים על פתרונות מודולו ‪ ,n‬יש בדיוק ‪ d‬פתרונות שונים )בהנחה שיש פתרון(‪.‬‬
‫המטרה‪ :‬מספר משוואות בנעלם אחד‪.‬‬
‫משפט השאריות הסיני‬
‫אם ‪ n1 , ..., nk‬זרים בזוגות אז לכל ‪ c1 , ..., ck‬יש פתרון למערכת המשוואות ) ‪.∀j, x ≡ cj ( mod nj‬‬
‫‪Q‬‬
‫הפתרון יחיד מודולו ‪. kj=1 nj‬‬
‫הערה‪ :‬המשפט אומר שהמערכת ) ‪ ∀j, x ≡ cj ( mod nj‬שקולה למשוואה הבודדת‪x ≡ c ( mod n1 · ... · nk ) :‬‬
‫)וכל הפתרונות כאן הם ‪ (xj = c + jn1 · ... · nk‬כאשר ‪ c ∈ Z‬המקיים ) ‪.∀j, c ≡ cj ( mod nj‬‬
‫הוכחת )ההערה(‪ :‬ניקח ‪ x = c‬כלשהו שפותר את המערכת‪ .‬אז כמובן ) ‪) c = cj ( mod nj‬לפי‬
‫ההגדרה(‪ ,‬ו ‪ c‬יחיד מודולו ‪) n1 · ... · nk‬לפי המשפט(‪.‬‬
‫בכיוון השני‪ ,‬אם ‪ xj = c + jn1 · ... · nk‬אז ) ‪ ,xj ≡ c ≡ cj ( mod nj‬כי החלק הימני מצטמצם‬
‫מודולו ‪.nj‬‬
‫‪1‬‬
‫הוכחת המשפט‬
‫קיום‬
‫נגדיר ‪ ,n = n1 · ... · nk‬ונגדיר לכל ‪ni :j‬‬
‫‪i6=j‬‬
‫‪Q‬‬
‫=‬
‫‪n‬‬
‫‪nj‬‬
‫= ‪.mj‬‬
‫נחפש פתרון ‪ x‬מהצורה‪:‬‬
‫‪x = m1 x1 + m2 x2 + ... + mk xk‬‬
‫עבור ) ‪ (xj‬שלמים‪.‬‬
‫הסיבה לצורה זו היא שעבור ‪ x‬כזה‪) x ≡ mj xj ( mod nj ) ,‬שאר האיברים הם כפולות של ‪nj‬‬
‫)שמוכל בתוך ‪ ,(n‬ולכן מצטמצמים(‪.‬‬
‫לכן נדרוש‪ .mj xj ≡ cj ( mod nj ) :‬נשים לב כי ‪ ,gcd (mj , nj ) = 1‬כי מהנתון ‪ ni‬זרים בזוגות‬
‫)אם ‪ p‬ראשוני מחלק את ‪ ,mj‬קיים ‪ i 6= j‬כך ש ‪ p|ni‬ולכן ‪ ,(p - nj‬לכן קיים ‪ xj‬הפותר את‬
‫) ‪ .mj xj ≡ cj ( mod nj‬נגדיר מה־ ) ‪ (xj‬את ‪ x‬ומצאנו פתרון‪.‬‬
‫יחידות‬
‫נניח כי ‪ x, y‬שניהם פתרונות ל ) ‪ .∀i, x ≡ cj ( mod nj‬לכן‪ ,∀j, y − x ≡ 0 ( mod nj ) ,‬כלומר‬
‫‪ .∀j, nj |y − x‬לכן )*( גם ‪ n = n1 · ... · nk |y − x‬כי ה ) ‪ (nj‬זרים‪ ,‬כלומר ) ‪.y ≡ x ( mod n1 · ... · nk‬‬
‫כאשר )*( מוסבר ע"י פרוק ‪ y − x‬לגורמים ראשוניים‪ ,‬ואבחנה שכל ‪ ni‬מוכל בחלק אחר של פרוק זה‪.‬‬
‫דוגמה‬
‫נפתור את חידת ברמהגופטא‪.‬‬
‫)‪2‬‬
‫)‪3‬‬
‫)‪5‬‬
‫)‪7‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫(‪1‬‬
‫(‪2‬‬
‫(‪4‬‬
‫(‪0‬‬
‫‪‬‬
‫‪‬‬
‫≡ ‪x‬‬
‫‪‬‬
‫≡ ‪x‬‬
‫‪‬‬
‫≡‪x‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫≡‪x‬‬
‫נקבל‪:‬‬
‫‪n = 2 · 3 · 5 · 7 = 210‬‬
‫‪210‬‬
‫‪= 105‬‬
‫= ‪m1‬‬
‫‪2‬‬
‫‪210‬‬
‫= ‪m2‬‬
‫‪= 70‬‬
‫‪3‬‬
‫‪210‬‬
‫= ‪m3‬‬
‫‪= 42‬‬
‫‪5‬‬
‫‪210‬‬
‫= ‪m4‬‬
‫‪= 30‬‬
‫‪7‬‬
‫‪2‬‬
‫נרצה למצוא ‪ x1 , ..., x4‬כך ש־‬
‫‪‬‬
‫)‪2‬‬
‫‪x1 = 1‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪3) e.g. x2 = 2‬‬
‫⇒‬
‫‪‬‬
‫)‪5‬‬
‫‪x3 = 2‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫)‪7‬‬
‫‪x4 = 0‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫(‪≡1‬‬
‫(‪≡2‬‬
‫(‪≡4‬‬
‫(‪≡0‬‬
‫‪‬‬
‫)‪2‬‬
‫‪x1‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫)‪3‬‬
‫‪x2‬‬
‫⇒⇐‬
‫‪‬‬
‫)‪5‬‬
‫‪2x3‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫)‪7‬‬
‫‪2x4‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫(‪≡1‬‬
‫(‪≡2‬‬
‫(‪≡4‬‬
‫(‪≡0‬‬
‫‪‬‬
‫‪105x1‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪70x‬‬
‫‪2‬‬
‫‪‬‬
‫‪42x3‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪30x4‬‬
‫כעת ניקח‬
‫‪x = 105 · 1 + 70 · 2 + 42 · 2 + 30 · 0 = 329‬‬
‫והפתרון הכללי למערכת הוא כל ה־ ‪ xj‬המוגדרים ע"י ‪ .xj = 329 + j · 210‬לכן יש לפחות ‪ 119‬ביצים‬
‫בסל )עבור ‪.(j = −1‬‬
‫מערכת משוואות לינארית כללית במשתנה אחד היא מהצורה ) ‪ ∀j, aj x ≡ bj ( mod nj‬כאשר ) ‪(nj‬‬
‫אינם חייבים להיות זרים‪.‬‬
‫נראה רדוקציה מכאן למערכת שאנו מכירים‪ .‬ראשית‪ ,‬ראינו ש־ )‪ ax ≡ b ( mod n‬כאשר = ‪d‬‬
‫‪ a0 db ≡1 ( mod nd ) a‬‬
‫⇒⇐‬
‫‪mod nd‬‬
‫)‪ gcd(a, n‬מחלק את ‪x ≡ db ( mod nd ) ⇐⇒ b‬‬
‫‪. x ≡ a0 db‬‬
‫‪d‬‬
‫בנוסף‪ ,‬אם הפירוק לראשוניים של‬
‫נקבל‪:‬‬
‫‬
‫‪e‬‬
‫‪mod pj j‬‬
‫‪n‬‬
‫‪d‬‬
‫הוא ‪= pe11 ...pel l‬‬
‫‪n‬‬
‫‪d‬‬
‫אז מההערה אחרי משפט השארית הסיני‬
‫‪b‬‬
‫‪b‬‬
‫‪( mod pe11 ...pel l ) ⇐⇒ ∀j, x ≡ a0‬‬
‫‪d‬‬
‫‪d‬‬
‫‪x ≡ a0‬‬
‫הערה‪.x ≡ c ( mod r) ⇐ r|x − c ⇐ rs|x − c ⇐ x ≡ c ( mod rs) :‬‬
‫כעת‪ ,‬כשנעבור מהמערכת ) ‪ ∀j, aj x ≡ bj ( mod nj‬לאיחוד של מערכות מהצורה ≡ ‪∀k, x‬‬
‫) ‪ dk ( mod pekk‬אז ניתן לשמור רק את המשוואה עם החזקה הכי גבוהה של כל ראשוני בהנחה שכל‬
‫החזקות הנמוכות יותר עקביות איתה )אחרת אין פתרון(‪ .‬כעת נמצא את הפתרון ממשפט השאריות‬
‫הסיני‪.‬‬
‫דוגמה‬
‫פתור‬
‫‪‬‬
‫‪‬‬
‫)‪x ≡ 5 ( mod 6‬‬
‫)‪x ≡ 9 ( mod 10‬‬
‫‪‬‬
‫‪‬‬
‫)‪x ≡ 2 ( mod 9‬‬
‫‪3‬‬
‫פתרון‬
‫ממשפט השארית הסיני‪ ,‬האוסף שקול ל־‬
‫)‪2‬‬
‫)‪3‬‬
‫)‪2‬‬
‫)‪5‬‬
‫)‪9‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫‪mod‬‬
‫(‪5‬‬
‫(‪5‬‬
‫(‪9‬‬
‫(‪9‬‬
‫(‪2‬‬
‫‪‬‬
‫‪‬‬
‫≡‪x‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫≡ ‪x‬‬
‫≡‪x‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫≡‪x‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫≡ ‪x‬‬
‫את ‪ 9‬לא נפרד כי המחלקים שלו ‪ 3‬ו ‪ 3‬אינם זרים‪.‬‬
‫וכיוון שאלו משוואות עקביות‪ ,‬האוסף שקול ל־‬
‫‪‬‬
‫‪‬‬
‫)‪x ≡ 1 ( mod 2‬‬
‫)‪x ≡ 2 ( mod 9‬‬
‫‪‬‬
‫‪‬‬
‫)‪x ≡ 4 ( mod 5‬‬
‫)לקחנו את החזקות הגבוהות ביותר ־ לכן ‪ 9‬ולא ‪ 3‬־ והקטנו את הפתרונות לפתרונות הקטנים ביותר(‪.‬‬
‫כעת נפתור לפי האלגוריתם במשפט השאריות הסיני‪ ,‬ונקבל )‪.x ≡ 29 ( mod 90‬‬
‫עוד על )‪ab ( mod n‬‬
‫המשפט הקטן של פרמה‬
‫יהי ‪ p‬ראשוני ו־ ‪ a‬זר ל־ ‪ .p‬אז )‪.ap−1 ≡ 1 ( mod p‬‬
‫דוגמה‬
‫חשב את )‪ .220 ( mod 17‬מהמשפט‪ 216 ≡ 1 ( mod 17) ,‬ולכן )‪.220 ≡ 24 ≡ 16 ≡ −1 ( mod 17‬‬
‫דוגמה‬
‫הראה כי ‪ 298 + 398‬מתחלק ב־ ‪.13‬‬
‫פתרון‬
‫מהמשפט )‪ .212 ≡ 312 ≡ 1 ( mod 13‬כיוון ש ‪ 98 = 12 · 8 + 2‬אז‬
‫)‪32 ≡ 22 + 32 ≡ 4 + 9 ≡ 0 ( mod 13‬‬
‫‪.‬‬
‫‪4‬‬
‫‪8‬‬
‫‪22 + 312‬‬
‫‪8‬‬
‫‪298 + 398 ≡ 212‬‬
‫משפט אוילר )הכללה של המשפט הקודם(‬
‫יהי ‪ n‬טבעי‪ .‬יהי ‪ a‬זר ל ‪ .n‬אז‬
‫)‪aφ(n) ≡ 1 ( mod n‬‬
‫כאשר‬
‫= |}‪φ(n) = |{1 ≤ k ≤ n | gcd(k, n) = 1‬‬
‫‬
‫‬
‫‬
‫‬
‫‪1‬‬
‫‪1‬‬
‫‪el‬‬
‫‪e1‬‬
‫‪[n = p1 ...pl ] = n 1 −‬‬
‫‪· ... · n 1 −‬‬
‫‪p1‬‬
‫‪pl‬‬
‫הוכחה‬
‫הערה‪ :‬אם ‪ a‬הפיך מודולו ‪ n‬ו ‪ b‬הפיך מודולו ‪ n‬אז ‪ ab‬הפיך מודלו ‪.n‬‬
‫הערה‪ :‬אם )‪ ab ≡ ac ( mod n‬אז )‪.b ≡ c ( mod n‬‬
‫טענה‪ :‬נבחין שהפעולה של הכפלה ב־ ‪ a‬מודולו ‪ n‬פועלת באופן חח"ע ועל על ‪) Z∗n‬קבוצת האיברים‬
‫ההפיכים מודולו ‪.(n‬‬
‫כעת‪ ,‬יהיו )‪ g1 , ..., gφ(n‬נציגים למחלקות ההפיכים מודולו ‪) n‬אפשר לחשוב עליהם כעל כל המספרים‬
‫ההפיכים מ־‪ 0‬עד ‪ .(n − 1‬נשים לב ש־‬
‫∗ ‬
‫)‪aφ(n) · g1 · ... · gφ(n) ≡ (ag1 ) (ag2 ) ... agφ(n) ≡ g1 · ... · gφ(n) ( mod n‬‬
‫כאשר ∗ נובע מההערה השנייה‪.‬‬
‫ולכן )‪.aφ(n) ≡ 1 ( mod n‬‬
‫מסקנה‬
‫בתנאי המשפט הקודם ‪ aφ(n)−1‬הוא הפכי של ‪ a‬מודולו ‪.n‬‬
‫דוגמאות‬
‫‪.1‬‬
‫מצא הפכי ל־ ‪ 5‬מודולו ‪.18‬‬
‫‪5‬‬
‫פתרון‬
‫‬
‫‬
‫‪1‬‬
‫‪1−‬‬
‫‪=6‬‬
‫‪3‬‬
‫‬
‫‪1‬‬
‫‪= 18 1 −‬‬
‫‪2‬‬
‫‬
‫‪2‬‬
‫‪φ(18) = φ 2 · 3‬‬
‫לכן נקבל הפכי ל־ ‪ 5‬מ־‬
‫)‪≡ 5 · 252 ≡ 5 · 72 ≡ 35 · 7 ≡ −7 ( mod 18‬‬
‫‪2‬‬
‫‪55 ≡ 5 · 52‬‬
‫‪.2‬‬
‫הראה כי ‪ 7100 − 3100‬מתחלק ב ‪.1000‬‬
‫פתרון‬
‫אפשר לנסות להפעיל את משפט אוילר ישירות‪.‬‬
‫‬
‫‬
‫‬
‫‬
‫‪1‬‬
‫‪1‬‬
‫‪3‬‬
‫‪3‬‬
‫‪φ(1000) = φ 2 · 5 = 1000 1 −‬‬
‫‪1−‬‬
‫‪= 400‬‬
‫‪2‬‬
‫‪5‬‬
‫לכן‪ ,‬לא ברור מכאן איך לפשט את ‪ 7100‬ו ‪.3100‬‬
‫במקום זאת‪ ,‬נתחיל עם משפט השאריות הסיני‪:‬‬
‫)‪7100 − 3100 ≡ 0 ( mod 1000‬‬
‫אמ"מ‬
‫) ‪≡ 0 ( mod 23‬‬
‫) ‪≡ 0 ( mod 53‬‬
‫(‬
‫‪7100 − 3100‬‬
‫‪7100 − 3100‬‬
‫כעת נפעיל את משפט אוילר ונקבל‪:‬‬
‫‬
‫‬
‫‪1‬‬
‫‪=4‬‬
‫‪φ(8) = 8 1 −‬‬
‫‪2‬‬
‫‬
‫‬
‫‪1‬‬
‫‪φ(125) = 125 1 −‬‬
‫‪= 100‬‬
‫‪5‬‬
‫לכן )‪ 7100 ≡ 1 ≡ 3100 ( mod 8‬וגם )‪7100 ≡ 1 ≡ 3100 ( mod 125‬‬
‫‪6‬‬
‫‪.3‬‬
‫נניח כי ‪ n = rs‬כאשר ‪ r‬ו־ ‪ s‬זרים‪ ,‬ו ‪.r, s > 2‬‬
‫יהי ‪ a‬זר ל־ ‪ .n‬אז )שיפור של משפט אוילר למקרה זה(‪:‬‬
‫‪1‬‬
‫)‪a 2 φ(n) ≡ 1 ( mod n‬‬
‫‪ p ,p|n‬ראשוני‪ ,‬אז ‪ p ≥ 3‬ולכן אי זוגי‪ ,‬וכעת ב )‪ φ(n‬יופיע‬
‫קל לראות שבמקרה זה )‪ φ(n‬זוגי‪ ,‬כי‬
‫ קיים ‬
‫‪1‬‬
‫‪e‬‬
‫‪e‬‬
‫הגורם ‪ ,p − 1‬שכן )‪.φ (p ) = p 1 − p = pe−1 (p − 1‬‬
‫‪7‬‬