Number Theory and Algebra Advisor …………… Dr. Shpilka Amir Presented by …… Cohen Gil..………

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

מבוא למדעי המחשב לתעשייה וניהול
עיבוד תמונות ואותות בעזרת מחשב
מתמטיקה בדידה תרגול 3.
רקורסיות נושאי השיעור פתרון משוואות רקורסיביות שיטת ההצבה
חשבון דיפרנציאלי ואינטגרלי א' (חדו"א)
מסדי נתונים תשס " ג 1 תכנון סכמות (Design Theory) מסדי נתונים.
משטר דינמי המשך – © Dima Elenbogen :55 חידה שכדאי לעבור עליה: 2011/ho/WCFiles/%D7%97%D7%99%D7%93%D7%94%20%D7%A2%D7%9D%20%D7%91%D7%95%D7%A0%D7%95%D7%A1.doc.
Inverse kinematics (Craig ch.4) ב"ה. Pieper’s solution נתבונן ברובוט עם 6 מפרקי סיבוב כאשר שלושת הצירים של המפרקים האחרונים נחתכים. נקודת החיתוך נתונה.
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
תרגול 5 רקורסיות. רקורסיה קריאה של פונקציה לעצמה –באופן ישיר או באופן עקיף היתרון : תכנות של דברים מסובכים נעשה ברור ונוח יותר, מכיוון שזו למעשה צורת.
שאלות חזרה לבחינה. שאלה דיסקים אופטיים מסוג WORM (write-once-read-many) משמשים חברות לצורך איחסון כמויות גדולות של מידע באופן קבוע ומבלי שניתן לשנותו.
אוטומט מחסנית הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 11.
אינטרפולציה רועי יצחק.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
היום נדבר אל נושא אחד בתורת הגרפים. ובהמשך נשתמש בכלים אלו לפתרון כמה בעיות גאומטריות ובפרט להוכחת Szemeredi Trotter theorem.
Robust Characterization of Polynomials 1 Robust Characterization of polynomials “IT DOES NOT MAKE SENCE!” מרצים : אורי גרסטן יניב עזריה Ronitt Rubinfeld.
בהסתברות לפחות למצא בעיה במודל PAC עבור בהסתברות ε הפונקציה f טועה מודל ONLINE 1. אחרי כל טעות הפונקציה משתפרת 2. מספר הטעיות קטן.
סמינר במדעי המחשב 3 עודד פרץ משפט הנורמליזציה החזקה.
מסדי נתונים תשס " ג 1 תכנון סכמות – אלגוריתם פירוק לתבניות בצורת BCNF מסדי נתונים.
Point-Line incidences via Cuttings By Tatiana Kriviliov.
עיבוד תמונות ואותות במחשב אלכסנדר ברנגולץ דואר אלקטרוני : שיטות קידוד שיטות קידוד אורך מלת קוד ואנטרופיה אורך מלת קוד ואנטרופיה קידוד.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
Formal Specifications for Complex Systems (236368) Tutorial #6 appendix Statecharts vs. Raphsody 7 (theory vs. practice)
תורת הקבוצות חלק ב'. קבוצה בת מניה הגדרה: קבוצה אינסופית X היא ניתנת למניה אם יש התאמה חד-חד ערכית בין X לבין .
תכנות תרגול 6 שבוע : תרגיל שורש של מספר מחושב לפי הסדרה הבאה : root 0 = 1 root n = root n-1 + a / root n-1 2 כאשר האיבר ה n של הסדרה הוא קירוב.
1 חישוב ואופטימיזציה של שאילתות חלק 2 Query Evaluation and Optimization Part 2.
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site : T.A. :Emilia Katz.
תחשיב הפסוקים חלק ג'. צורות נורמליות א. DF – Disjunctive Form – סכום של מכפלות. דוגמא: (P  ~Q  R)  (R  P)  (R  ~Q  ~P) הגדרה: נוסחה השקולה לנוסחה.
מודל ONLINE לומדמורה 1. כל ניתן לחישוב בזמן פולינומיאלי 2. אחרי מספר פולינומיאלי של טעיות ( ) הלומד לא טועה ז"א שווה ל- Littlestone 1988.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
ערכים עצמיים בשיטות נומריות. משוואה אופינית X מציין וקטור עצמי מציינת ערך עצמי תואם לוקטור.
Kalman Filter תומר באום Based on ch. 8 in “Principles of robot motion” By Choset et al. ב"הב"ה.
הפקולטה למדעי המחשב אוטומטים ושפות פורמליות (236353)
Ray 7 דוגמא אלגוריתם 1.קבל דוגמאות 2. פלט f a עבור הדוגמה a המינימלית החיובית ?
תחשיב הפסוקים חלק ד'. תורת ההיסק של תחשיב הפסוקים.
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
אלכסנדר ברנגולץ דואר אלקטרוני: אלכסנדר ברנגולץ דואר אלקטרוני: פעולות מורפולוגיות.
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
משטר דינמי – © Dima Elenbogen :14. הגדרת cd ו -pd cd - הזמן שעובר בין הרגע שראשון אותות הכניסה יוצא מתחום לוגי עד אשר אות המוצא יוצא מתחום.
מערכים עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר עד היום כדי לייצג 20 סטודנטים נאלצנו להגדיר int grade1, grade2, …, grade20; int grade1, grade2, …, grade20;
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א מודל הלמידה מדוגמאות Learning.
עקרון ההכלה וההדחה.
יחס סדר חלקי.
תחשיב היחסים (הפרדיקטים)
מבוא למדעי המחשב, סמסטר א ', תשע " א תרגול מס ' 1 נושאים  הכרת הקורס  פסאודו - קוד / אלגוריתם 1.
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א.
מתמטיקה בדידה תרגול 2.
1 מבוא למדעי המחשב סיבוכיות. 2 סיבוכיות - מוטיבציה סידרת פיבונאצ'י: long fibonacci (int n) { if (n == 1 || n == 2) return 1; else return (fibonacci(n-1)
Points on a perimeter (Convex Hull) קורס – מבוא לעבוד מקבילי מבצעים – אריאל פנדלר יאיר ברעם.
מבנה מחשבים תרגול מספר 3. טענה על עצים משפט: בעץ שדרגת כל קודקודיו חסומה ב-3, מספר העלים ≤ מספר הקודקודים הפנימיים + 2. הוכחה: באינדוקציה על n, מספר הקודקודים.
Lecture 13 Maximal Accurate Forests From Distance Matrix.
(C) סיון טל גילוי מידע וזיהוי תבניות תרגול מס. 9 גילוי מידע וזיהוי תבניות תרגול מס. 9 דחיסת נתונים מהו קידוד תכונות של קידודים אי - שוויון קרפט.
11 Introduction to Programming in C - Fall 2010 – Erez Sharvit, Amir Menczel 1 Introduction to Programming in C תרגול
1 גילוי מידע וזיהוי תבניות תרגול מס. 3 התפלגות נורמלית רב - מימדית Kullback-Leibler Divergence - משפט קמירות - נגזרת שנייה משפט Log sum inequality משפט.
- אמיר רובינשטיין מיונים - Sorting משפט : חסם תחתון על מיון ( המבוסס על השוואות בלבד ) של n מפתחות הינו Ω(nlogn) במקרה הגרוע ובממוצע. ניתן לפעמים.
1 מבוא למדעי המחשב רקורסיה. 2 רקורסיה היא שיטה לפתרון בעיות המבוססת על העיקרון העומד ביסוד אינדוקציה מתמטית: אם ידועה הדרך לפתור בעיה עבור המקרים הבסיסיים.
פיתוח מערכות מידע Class diagrams Aggregation, Composition and Generalization.
Data Structures Hanoch Levi and Uri Zwick March 2011 Lecture 3 Dynamic Sets / Dictionaries Binary Search Trees.
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site:
. Sequence Alignment Tutorial #3 © Ydo Wexler & Dan Geiger.
Tirgul 12 Trees 1.
Formal Specifications for Complex Systems (236368) Tutorial #1
מבוא למדעי המחשב סיבוכיות.
SQL בסיסי – הגדרה אינדוקטיבית
תיאוריית תכנון סכמות למסדי נתונים יחסיים חלק 4
בעיות נוספות ב-NPC.
תרגול 11 NP complete.
NG Interpolation: Divided Differences
Presentation transcript:

Number Theory and Algebra Advisor …………… Dr. Shpilka Amir Presented by …… Cohen Gil..………

Number Theory and Algebra Preliminaries Groups and Fields Quadratic Residues The RSA Cryptosystem Polynomial Roots and Factors Primality Testing

Number Theory and Algebra Preliminaries Groups and Fields Quadratic Residues The RSA Cryptosystem Polynomial Roots and Factors Primality Testing

Quadratic Residues

הגדרה שארית נקראת שארית ריבועית אם יש כך ש - הערה קל להראות כי עבור, כאשר p ראשוני ו -k>0, לכל שארית ריבועית יש בדיוק שני שורשים שונים.

למה יהא p ראשוני אי - זוגי, ויהא יוצר כלשהו. אזי הוא שארית ריבועית אם " ם k זוגי. הוכחה ברור כי אם k זוגי, אזי הוא שארית ריבועית. נניח כעת כי, ונניח בשלילה כי יש x כך ש -.

הוכחה - המשך נזכור כי g יוצר, וממילא יש m כך ש -. לכן ובמונחים של החבורה החיבורית נקבל מכיוון ש - אנו מקבלים ש -

הוכחה - המשך קיבלנו כי מספר זוגי מחלק מספר אי - זוגי. סתירה. האם קיים קריטריון להיות איבר שארית ריבועית, אשר אינו נעזר ביוצר g? כאן אוילר נכנס לתמונה.

משפט – קריטריון אוילר עבור p ראשוני, איבר הוא שארית ריבועית אם " ם הוכחה נניח ש -a הוא שארית ריבועית. יהא השורש של a כאשר g יוצר כלשהו של. ברור כי לכן...

הוכחה - המשך נניח כעת ש -a אינו שארית ריבועית. מהלמה הקודמת נסיק כי a הוא חזקה אי - זוגית של יוצר g. נניח אז משפט פרמה

הוכחה - המשך מכיוון שהסדר של g הוא p-1 נובע ש - הבחנה לכל יוצר g, מתקיים וזאת כי ממשפט פרמה

הבחנה - המשך אך לא ייתכן ש - שהרי הסדר של g הוא p-1. מכיוון ש הוא שורש של 1 שאינו 1, ו - (-1) הוא שורש של 1, ומכיוון שהערנו קודם כי עבור לכל שארית ריבועית יש שני שורשים. מההבחנה רק טבעי להגדיר...

הגדרה – סימן לז ' נדר לכל p ראשוני ו - נגדיר או באופן שקול

האם מספר הוא שארית ריבועית – היבט חישובי מהדיון לעיל, ניתן להציע אלגוריתם אשר בהינתן a מכריע האם a הוא שארית ריבועית ( כאשר ברקע ידוע p). כל שיש לעשות הוא לחשב את סימן לז ' נדר על ידי חישוב

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

מציאת שארית לא - ריבועית עם זאת, גם מבלי להסתמך על ERH ניתן להציע אלגוריתם אקראי ( לאס - ווגאס או מונטה - קרלו ) המוצא שארית לא - ריבועית, וזאת בהתבסס על ההבחנה הבאה. טענה בדיוק חצי מאיברי הינם שארית ריבועית.

הוכחה ראשית, וממילא,

הוכחה מצד שני, אם ניקח אז אם מתקיים ולכן בהכרח בסתירה לכך ש -

הוצאת שורש - האלגוריתם QuadRes הסיבה שאנו מעונינים במציאת מספר שאינו שארית ריבועית היא שמספר כזה משמש את האלגוריתם QuadRes המוציא שורש של שארית ריבועית נתונה. מציאת אותו מספר המהווה שארית שאינה ריבועית, היא החלק האקראי היחיד ב -QuadRes. אם ERH נכונה, אז קיים אלגוריתם דטרמיניסטי להוצאת שורש.

הוצאת שורש - האלגוריתם QuadRes הקלט לאלגוריתם מורכב מזוג מספרים : מספר ראשוני אי - זוגי p הקובע את השדה. שארית ריבועית a מהשדה שאת השורש שלו אנו רוצים לחשב. בנוסף, האלגוריתם מניח שיש בידו איבר b בשדה שאינו שארית ריבועית.

הוצאת שורש - האלגוריתם QuadRes הרעיון העומד מאחורי האלגוריתם הוא למצוא חזקה אי - זוגית של a כך ש - מכאן, הכפלה ב -a תיתן לנו וממילא הם השורשים, כנדרש.

הוצאת שורש - האלגוריתם QuadRes מכיוון ש -p ראשוני אי - זוגי, השארית שלו בחלוקה ל -4 היא 1 או 3. המקרה הראשון בו נטפל, זהו המקרה הפשוט, הוא המקרה בו השארית היא 3. יהי k כך ש -. נבחין כי מכיוון ש -a הוא שארית ריבועית, אנו יודעים ש -

הוצאת שורש - האלגוריתם QuadRes אבל הוא מספר זוגי, ולכן הוא שורש. נעבור למקרה בו שארית p בחלוקה ל -4 היא 1.

הוצאת שורש - האלגוריתם QuadRes גם כאן נפריד למקרים – לפי שארית החלוקה של p ב -8. המקרה הראשון הוא הפעם זהו מספר אי - זוגי, ולכן לא נוכל להיעזר באותה השיטה כמו במקרה הקודם.

הוצאת שורש - האלגוריתם QuadRes אנו יודעים ש - ולכן הוא שורש ריבועי של 1. אם אז סיימנו. אחרת מתקיים זה הזמן להוציא את b מהשרוול.

הוצאת שורש - האלגוריתם QuadRes אנו יודעים ש -b אינה שארית ריבועית, ולכן ביחד עם נקבל ש - וסיימנו -

הוצאת שורש - האלגוריתם QuadRes המקרה האחרון הוא במקרה זה נסמן חישוב r,R ניתן להיעשות בזמן פולינומיאלי.

הוצאת שורש - האלגוריתם QuadRes נכתוב את סימן לז ' נדר של a במונחי r,R היינו רוצים שהמעריך יהיה אי - זוגי. מצד שני, תחת ההצגה של A עם r,R אנו יודעים להוציא שורש מ -A, ומשורש A וכו '. למה שלא נוכל להוציא שורשים עד שהגורם הזוגי במעריך ייעלם ?

הוצאת שורש - האלגוריתם QuadRes הסיבה היא שאנו רוצים לשמור על ובמהלך הוצאת שורשים אין ערובה לאינווריאנטה הזו. ראשית נבחין כי אם אז סיימנו. נניח לכן שזה לא המצב, לכן קיים גדול ביותר כך ש - אבל קונגרואנטי ל -1.

הוצאת שורש - האלגוריתם QuadRes נביט במכפלה כאשר זהו אותו טריק שהשתמשנו בו קודם – מכפלה זו קונגרואנטית ל - 1. השתמשנו ב -B בכדי לתקן את ה -(-1) שקיבלנו מהוצאה של שורש של A. הרעיון הוא להמשיך עם התהליך הנ " ל עבור

הוצאת שורש - האלגוריתם QuadRes אנו נמשיך עד אשר לא תישאר חזקה זוגית במעריך של a. הדבר אפשרי כי ל -b תמיד יהיה גורם זוגי גדול יותר במעריך מאשר ל -a. התהליך יסתיים כאשר החזקה של a תהיה בדיוק R. עם כל הכפלה בגורם התיקון אנו מפחיתים מהחזקה של a לפחות 1, ולכן מספר הצעדים חסום ע " י

הוצאת שורש - האלגוריתם QuadRes בסיום התהליך נקבל מספר כאשר z הוא סכום החזקות של b עם ההפחות שהתבצעו – סכום של מספרים זוגיים.

הוצאת שורש - האלגוריתם QuadRes - דוגמה ניקח p=17=8k+1 עבור k=2. נרצה למצוא את השורש של השארית הריבועית a=13 תוך שימוש בשארית הלא ריבועית b=3. מתקיים R=r=1.

הוצאת שורש - האלגוריתם QuadRes - דוגמה ניקח p=17=8k+1 עבור k=2. נרצה למצוא את השורש של השארית הריבועית a=13 תוך שימוש בשארית הלא ריבועית b=3. מתקיים R=r=1.

הוצאת שורש - האלגוריתם QuadRes - דוגמה ניקח p=17=8k+1 עבור k=2. נרצה למצוא את השורש של השארית הריבועית a=13 תוך שימוש בשארית הלא ריבועית b=3. מתקיים R=r=1.

הוצאת שורש - האלגוריתם QuadRes - דוגמה ניקח p=17=8k+1 עבור k=2. נרצה למצוא את השורש של השארית הריבועית a=13 תוך שימוש בשארית הלא ריבועית b=3. מתקיים R=r=1.

הוצאת שורש - האלגוריתם QuadRes - דוגמה ניקח p=17=8k+1 עבור k=2. נרצה למצוא את השורש של השארית הריבועית a=13 תוך שימוש בשארית הלא ריבועית b=3. מתקיים R=r=1.

הוצאת שורש - האלגוריתם QuadRes - דוגמה ניקח p=17=8k+1 עבור k=2. נרצה למצוא את השורש של השארית הריבועית a=13 תוך שימוש בשארית הלא ריבועית b=3. מתקיים R=r=1.

הוצאת שורש - האלגוריתם QuadRes - דוגמה ניקח p=17=8k+1 עבור k=2. נרצה למצוא את השורש של השארית הריבועית a=13 תוך שימוש בשארית הלא ריבועית b=3. מתקיים R=r=1.

הוצאת שורש קשה לפחות כמו פירוק לגורמים - משפט נניח וקיים אלגוריתם ( אולי אקראי ) עם זמן ריצה פולינומיאלי המוציא שורש של כל מספר מודולו n. אז קיים אלגוריתם אקראי בעל זמן ריצה פולינומיאלי המפרק את n לגורמיו הראשוניים.

נניח ו - כך ש - אז למה

אם n זוגי, אז נוכל למצוא את מספר המופעים של 2 בפירוק שלו, וממילא נוכל להניח מעכשיו ש -n אי - זוגי. האלגוריתם ייפרק את n לחזקות של מספרים ראשוניים תוך שימוש ב - כקופסא שחורה. הוכחת המשפט

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

מכיוון ש -n אינו חזקה של ראשוני, מספר השורשים של a מודולו n הוא, כאשר t>1 הוא מספר הגורמים הראשוניים השונים בפירוק של n לגורמים ראשוניים. מכיוון ש -b נבחר באקראי, הידע היחידי של על b הוא ש - ולכן ההסתברות ש - היא הוכחת המשפט

אם לא התמזל מזלנו, ויצא ש - נחזור שוב על התהליך עם b חדש שייבחר באופן בלתי תלוי ב -b הקודם. מכאן לכאן, מצאנו x כך ש - אבל. מהלמה נובע ש -. נסמן. וזהו מחלק לא טריוויאלי של n. מכאן נוכל להיעזר ברקורסיה עבור הוכחת המשפט

Primality Testing

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

הגדרה נגדיר את השפות PRIMALITY ו -COMPOSITENESS

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

מיקומה של בעיית הפירוק בהיררכיה החישובית אנו לא יודעים האם COMPOSITENESS היא בעיה NP- שלמה, אבל סביר יותר להניח שאין זה המצב, וממילא קושייה של COMPOSITENESS עומדת בין P ל -NP- שלמות ( כמו בעיית האיזומורפיזם בין גרפים ). NP P Complete COMPOSITENESS GI I’m probably between P and NP-Complete

מיקומה של בעיית הפירוק בהיררכיה החישובית אנו נראה כי סביר ש -COMPOSITENESS אינה NP- שלמה על ידי כך שנראה כי מכאן ינבע שגם אם COMPOSITENESS היא NP- שלמה נקבל ואין זה סביר.

משפט מספיק שנראה כי לכל מספר ראשוני n, קיימת הוכחה הניתנת לווידוא בזמן פולינומיאלי. מסקנה הוכחה

הוכחה - המשך נעזר בלמה הבאה למה מספר n הוא ראשוני אם " ם יש ב - איבר מסדר n-1. הוכחת הלמה ברור כי אם n ראשוני אז ל - יש יוצר, וממילא יש איבר מסדר n-1.

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

המשך ההוכחה מהלמה נובע שהוכחה להיות מספר n ראשוני היא איבר כך ש -g מסדר n-1 ( כלומר יוצר ). כל שההוכחה צריכה להראות הוא שלכל מחלק לא טריוויאלי m של n-1

המשך ההוכחה יותר מכך, מספיק שההוכחה תראה זאת רק עבור m- ים מהצורה כאשר ה - הם הגורמים הראשוניים המופיעים בפירוק של n. אפשר להראות כי לכל k ולכן הכרחי לחסוך ב -m- ים.

המשך ההוכחה יותר מכך, מספיק שההוכחה תראה זאת רק עבור m- ים מהצורה כאשר ה - הם הגורמים הראשוניים המופיעים בפירוק של n. בהינתן הפירוק של -1 n לגורמים ראשוניים, קל לוודא את ההוכחה לעיל.

המשך ההוכחה ההוכחה, לכן, צריכה גם לכלול את הפירוק של n-1 לגורמים ראשוניים. נדגיש – חשוב שההוכחה תמצא את הפירוק לגורמים ראשוניים ולא להשאיר גורמים שאינם ראשוניים בפירוק. את הבדיקה לכך שההוכחה חוקית במובן הזה שכל גורם של n הוא ראשוני, ניתן לעשות ברקורסיה.

המשך ההוכחה - חשבונות מכיוון שמספר הגורמים הראשוניים של n הוא ומכיוון שהצגה של כל גורם ראשוני כזה עולה נובע שזמן הריצה הכולל של ווידוא ההוכחה הוא עבור כל אחד מהגורמים מריצים בצורה רקורסיבית את הווידוא לכל אחד מהגורמים מחשבים את הדרגה

המשך ההוכחה - חשבונות חישוב פשוט ( הערכות גסות ) מראה כי

תרומת משפט פרמה ניזכר במשפט הקטן של פרמה המצהיר כי אם n ראשוני, אז לכל מתקיים אם הקונגרואנציה האחרונה מתקיימת, אנו נאמר כי a מקיים את מבחן פרמה עבור n. עבור n ראשוני, כל מקיים את מבחן פרמה.

תרומת משפט פרמה אם משפט פרמה היה מתקיים גם בכיוון ההפוך, כלומר – לכל n פריק קיים a שלא מקיים את מבחן פרמה, אז היה בידינו האלגוריתם האקראי הבא : בהינתן n, נבחר באקראי ונוודא ש - שהרי אחרת n פריק. אם אכן נקווה שבהסתברות גבוהה, a ייכשל במבחן פרמה עבור n.

תרומת משפט פרמה בכדי שאלגוריתם כזה ייחשב לאלגוריתם טוב אנו נרצה שעבור n פריק, הרבה a- ים ייכשלו במבחן פרמה. החדשות הרעות הן שיש מספרים אשר מתחזים לראשוניים במובן הבא הגדרה – מספר קרמייקל מספר קרמייקל הוא מספר פריק אשר עבורו לכל

מספרי קרמייקל מספר קרמייקל הקטן ביותר הוא 561. מספר קרמייקל נוסף הוא קיומם של מספרי קרמייקל אינו מחייב אותנו לזנוח את השימוש במשפט הקטן של פרמה לטובת בעיית ההכרעה המתאימה ל - PRIMALITY. אם מספרם של מספרי קרמייקל סופי - הם לא יהוו בעיה עקרונית.

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

למה יהא n מספר פריק שאינו קרמייקל, אזי הוכחה מכיוון ש -n אינו ראשוני ואינו קרמייקל, מתקיים קל לוודא ש - מהווה חבורה ולכן היא תת חבורה ( ממש ) של וממילא. מכיוון ש - נובע ש -

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

החדשות הרעות החדשות הרעות הן שלאחרונה הוכח כי יש אינסוף מספרי קרמייקל, ולכן מתחזים אלו מהווים בעיה עקרונית לשימוש במשפט פרמה עבור בדיקת ראשוניות. ליתר דיוק, W.R. (Red) Alford, Andrew Granville ו -Carl Pomerance הראו ב שעבור n גדול מספיק, יש לפחות מספרי קרמייקל בין 1 ל -n.

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

הגדרה – סימן יעקובי יהא n מספר אי - זוגי בעל הפירוק לגורמים ראשוניים אז לכל a זר ל -n נגדיר את סימן יעקובי להיות

סימן יעקובי - הערות ערכו של סימן יעקובי הוא תמיד 1 או (-1). אנו מרשים לעצמנו להשתמש באותו הסימון עבור סימן יעקובי ועבור סימן לג ' נדר, שהרי סימן יעקובי מצומצם על הראשוניים מזדהה עם סימן לג ' נדר. אנו משתמשים בסימן לג ' נדר בכדי להגדיר את סימן יעקובי.

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

סימן יעקובי - זהויות לכל a,b הזרים ל -n אם אז אם a,n זרים אז

סימן יעקובי - זהויות

סימן יעקובי כתחליף למבחן פרמה נרצה להחליף את מבחן פרמה, אשר נופל על מספרי קרמייקל, במבחן אחר המבוסס על סימן יעקובי. הגדרה לכל n אי - זוגי, נגדיר

למה לכל n פריק הערה נשים לב שהגרסה המקבילה של הלמה הזו עבור מבחן פרמה לא הייתה תקפה לכל n פריק, אלא לכל n פריק שאיננו מספר קרמייקל.

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

הוכחה נבחר יוצר g של ונסמן ב -a את האיבר ב - המקיים קיומו של a כזה מובטח ממשפט השאריות הסיני. נבחין כי עבור כל מתקיים

הוכחה נחלק את ההוכחה למקרים. כמקרה ראשון נניח ש - במקרה זה נוכל לכתוב כאשר ו -. נבחין כי שהרי n אינו ראשוני. כעת,

הוכחה נחלק את ההוכחה למקרים. כמקרה ראשון נניח ש - במקרה זה נוכל לכתוב כאשר ו -. נבחין כי שהרי n אינו ראשוני. כעת,

הוכחה נחלק את ההוכחה למקרים. כמקרה ראשון נניח ש - במקרה זה נוכל לכתוב כאשר ו -. נבחין כי שהרי n אינו ראשוני. כעת,

הוכחה נחלק את ההוכחה למקרים. כמקרה ראשון נניח ש - במקרה זה נוכל לכתוב כאשר ו -. נבחין כי שהרי n אינו ראשוני. כעת,

הוכחה מכיוון שסימן לג ' נדר וסימן יעקובי מזדהים על הראשוניים, ומכיוון שיוצר אינו שארית ריבועית, נקבל מהנחת השלילה ולכן ומכיוון ש - מתקיים גם

הוכחה וזו סתירה לכך שבחרנו a כך ש -. המקרה השני הוא בו. מהנחת השלילה ולכן וממילא מכיוון ש -

הוכחה ומכיוון ש - נקבל נזכור כי g יוצר של ולכן הסדר של g הוא וממילא אבל מכיוון ש - נובע ש -

הוכחה אך, ואין מספר ראשוני המחלק גם את n וגם את n-1. סתירה. הערה ניתן להראות שלמספרי קרמייקל אין גורם ראשוני החוזר יותר מפעם אחת, ולכן המקרה הראשון בהוכחת הלמה ( המקרה הקשה יותר ) בעצם טיפל במתחזים אלו.

אלגוריתם RP עבור COMPOSITENESS נציע אלגוריתם RP הדומה ברוחו לאלגוריתם שיכל להצליח אילולא היה מספרם של מספרי קרמייקל אינסופי. האלגוריתם מקבל מספר אי - זוגי ומוציא כפלט COMPOSITE רק אם המספר פריק. עם זאת האלגוריתם עלול להחזיר PRIME גם אם המספר פריק. על כן יש להתייחס לפלט COMPOSITE כאל פריק בוודאות ואל PRIME כאל ראשוני בסבירות גבוהה.

אלגוריתם Primality1 של Solovay ו -Strassen קלט : מספר אי - זוגי n. פלט : PRIME או COMPOSITE בחר באקראי מספר מ - אם החזר COMPOSITE. אם החזר PRIME. החזר COMPOSITE.

אלגוריתם Primality1 של Solovay ו -Strassen האלגוריתם אינו טועה כאשר הוא מחזיר COMPOSITE שהרי במקרה זה הוא מצא כך ש - או, וכל אחד ממקרים אלו אפשרי רק במקרה בו n פריק. מצד שני, מהלמה מכיוון שהאלגוריתם טועה רק כאשר n פריק וה -a הנבחר יושב ב -, נובע שהאלגוריתם טועה עם הפלט PRIME בהסתברות שאינה עולה על חצי.

ההיבט החישובי מבחינה חישובית, קיומו של האלגוריתם Primality1 מבטיח ש - וממילא תוצאה מורכבת מאוד של Adleman ו -Huang מבטיחה שגם