משפט דיריכלה על סדרות חשבוניות

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

אם כן, נתחיל בלהסביר על מה בכלל מדובר. מספר ראשוני, כזכור, הוא מספר שמתחלק רק בעצמו וב-1, והמספרים הראשוניים מעניינים שכן במובן מסויים הם “אבני הבניין” של כל יתר המספרים (כל מספר ניתן לכתיבה באופן יחיד כמכפלת ראשוניים). ניתן להוכיח שיש אינסוף ראשוניים, אבל האם ניתן להגיד משהו מעניין על ההתפלגות שלהם?

דוגמה לשאלה פשוטה שאפשר לשאול היא “האם יש אינסוף ראשוניים שמשאירים שארית 0 כשמחלקים אותם ב-4?” והתשובה כמובן שלילית, שכן אם השארית היא 0, אז המספר מתחלק ב-4 וודאי שאינו ראשוני. בדומה, שאלה כמו “האם יש אינסוף ראשוניים שמשאירים שארית 2 כשמחלקים אותם ב-4?” היא טיפשית, שכן מספר שמקיים תכונה זו מתחלק בודאות ב-2, ולכן יש רק ראשוני אחד בעל תכונה זו - 2 עצמו. באופן דומה, אין טעם לשאול שאלה בסגנון “האם יש אינסוף ראשוניים שמשאירים שארית \( b \) כשמחלקים אותם ב-\( a \)?” כאשר יש ל-\( a,b \) מחלק משותף גדול מ-1, שכן המחלק המשותף הזה יחלק כל מספר שמשאיר שארית \( b \) כשמחלקים אותו ב-\( a \). אם כן, משויתרנו על המקרה הטריוויאלי הזה, נותר לנו לשאול את עצמנו “האם יש אינסוף ראשוניים שמשאירים שארית \( b \) כשמחלקים אותם ב-\( a \), אם ל-\( a,b \) אין מחלק משותף?” והתשובה המדהימה של דיריכלה היא “כן!”. ולא סתם כן - אלא גם שההתפלגות של הראשוניים היא אחידה - במובן מסויים. אם קובעים את \( a \), אז “כמות” הראשוניים שמשאירים שארית \( b \) בחלוקה ב-\( a \), כאשר \( b \) הוא מספר שזר ל-\( a \) וקטן ממנו, היא זהה.

את התיאור לעיל של חלוקה אפשר לנסח גם בלשון של סדרות חשבוניות. נתבונן בסדרה החשבונית שהאיבר הכללי שלה הוא \( an+b \). הטענה היא שבסדרה הזו, אם \( a,b \) זרים (ללא מחלק משותף גדול מ-1), יש אינסוף ראשוניים.

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

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

בתור התחלה, בואו ניזכר במה שאוילר “הראה” (כאמור, מה שאני מראה כאן הוא ניסוח מדוייק יותר של מה שאוילר עשה). ראשית, הגדרנו פונקציה \( \zeta\left(s\right)=\sum_{n=1}^{\infty}\frac{1}{n^{s}} \) עבור ערכים ממשיים \( s>1 \) (זהו הבסיס לפונקצית הזטה המפורסמת של רימן). כעת, הראינו שיש לטור הזה גם הצגה “כפלית”, שבה באורח פלא הכפל הוא על פני כל המספרים הראשוניים: \( \zeta\left(s\right)=\prod_{p}\frac{1}{1-p^{-s}} \). ההצגה הזו נותנת כפל על פני כל הראשוניים, אבל קל גם לקבל ממנה סכום על פני כל הראשוניים: הצורה הסטנדרטית להפיכת מכפלה לסכום היא הפעלת לוגריתם עליה (זהו אחד משימושיו המקוריים של הלוגריתם: הוא איפשר לבצע פעולות כפל על מספרים גדולים באמצעות פעולות חיבור - זהו הרעיון הבסיסי שמאחורי סרגלי החישוב מנוחתם עדן). ובכן, אחרי שמפעילים לוגריתם ועושים כמה להטוטים (שהבולט בהם הוא שימוש בזהות הקסומה \( -\ln\left(1-x\right)=\sum_{n=1}^{\infty}\frac{x^{n}}{n} \) שתקפה עבור \( \left|x\right|<1 \)) מקבלים כי \( \ln\zeta\left(s\right)=\sum_{p}\frac{1}{p^{s}}+O\left(1\right) \). הסימון \( O\left(1\right) \) כאן מציין גודל שאולי משתנה כאשר \( s \) משתנה, אבל חסום על ידי קבוע (לסקרנים: הקבוע הוא \( 2\zeta\left(2\right) \)).

כעת, כאשר משאיפים את \( s \) ל-1, הרי ש-\( \zeta\left(s\right) \) שואף לאינסוף (כי כפי שאמרתי בפוסט הקודם, הטור \( \sum_{n=1}^{\infty}\frac{1}{n} \) מתבדר לאינסוף), ולכן גם \( \ln\zeta\left(s\right) \) שואף לאינסוף, ולכן הטור \( \sum_{p}\frac{1}{p^{s}} \) שואף לאינסוף כש-\( s \) שואף ל-1, כלומר \( \sum_{p}\frac{1}{p} \) מתבדר. זוהי ההרחבה המידיית הראשונה של הוכחת אוילר, והיא כבר הייתה ידועה בימי דיריכלה. שימו לב שהתוצאה הזו אינה סתמית כלל ועיקר - היא לא רק מראה שיש אינסוף ראשוניים (כי אם היה מספר סופי, הטור לא היה יכול להתבדר) אלא גם נותנת הערכה מיידית לפיזור שלהם. מכיוון ש-\( \sum_{n=1}^{\infty}\frac{1}{n^{s}} \) מתכנס לכל \( s>1 \), מה שמעיד על כך שיש “חורים יחסית גדולים” בין האיברים אותם סוכמים בטור, המסקנה היא שהפיזור של הראשוניים בין המספרים גדול יותר מאשר הפיזור של המספרים מהצורה \( n^{s} \). למשל, אם ניקח \( s=2 \), נוכל לומר במדוייק שהפיזור של הראשוניים בין המספרים גדול יותר מאשר הפיזור של המספרים שהם ריבוע - כלומר, אם נעבור מספר מספר ונצעק “בום” כשנראה ראשוני, זה יקרה לעתים יותר קרובות מאשר אם נצעק כשנראה ריבוע. קיימת הערכה טובה בהרבה לפיזור הזה של הראשוניים - היא נקראת “משפט המספרים הראשוניים” ומהווה את התוצאה הקלאסית המרכזית של תורת המספרים האנליטית. לא אכנס לכך כעת.

מה שדיריכלה ניסה לעשות הוא לבנות משוואה דומה ל-\( \ln\zeta\left(s\right)=\sum_{p}\frac{1}{p^{s}}+O\left(1\right) \), כך שבאגף ימין הסכימה תהיה רק על הראשוניים \( p\equiv a\left(q\right) \) עבור \( q,a \) כלשהם שזרים זה לזה, וכך שהפונקציה שבאגף שמאל עדיין תשאף לאינסוף כש-\( s \) שואף ל-1. האתגר הראשון, אם כן, הוא למצוא פונקציות אנליטיות שמבטאות בצורה כלשהי את המושג של “להיות שקול ל-\( a \) מודולו \( q \)”. הפונקציות שדיריכלה השתמש בהן נקראות קרקטרים. מבלי להיכנס לתורה הכללית (שניתן לסכמה, למי שמכיר, כך: קרקטר דיריכלה הוא ההרחבה הטבעית ל-\( \mathbb{Z} \)של הומומורפיזם מ-\( \mathbb{Z}_{q}^{*} \) אל \( \mathbb{C} \)), דיריכלה מסתכל על פונקציות \( \chi:\mathbb{Z}\to\mathbb{C} \), כלומר שמקבלות מספר שלם ומחזירות מספר מרוכב, כך שמתקיימות התכונות הבאות:

  1. \( \chi\left(x\right)=\chi\left(x+q\right) \) לכל \( x\in\mathbb{Z} \) (עבור ה-\( q \) הספציפי שלנו).
  2. \( \chi\left(xy\right)=\chi\left(x\right)\chi\left(y\right) \) לכל \( x,y\in\mathbb{Z} \) - לתכונה הזו קוראים "כפליות".
  3. \( \chi\left(x\right)\ne0 \) אם ורק אם \( x \) זר ל-\( q \).

התכונות הללו אינן שרירותיות, כמובן; אם נחזור לתיאור שנתתי בסוגריים, 1 ו-3 נובעים מכך ש-\( \chi \) הוא הרחבה של משהו שהוגדר במקור על \( \mathbb{Z}_{q}^{*} \) - אוסף המספרים השלמים הזרים ל-\( q \) - ו-2 נובע מכך שאותו “משהו” הוא הומומורפיזם. כאמור, מי שאינו מכיר את המושגים הללו, לא נורא.

קרקטרים הם יצורים מעניינים וחשובים לכשעצמם, ויש להם תכונות מועילות רבות. למשל, קל לראות מהר מאוד (תוך שימוש בכפליות \( \chi \) ובכך ש-\( \mathbb{Z}_{q}^{*} \) היא חבורה) כי לכל \( x \) שזר ל-\( q \), בהכרח \( \chi\left(x\right) \) יהיה אחד משורשי היחידה מסדר \( q \) - מספר מרוכב שכשהוא מועלה בחזקת \( q \), מתקבל 1. מכאן שלמרות ש-\( \chi \) הוגדר כפונקציה למספרים המרוכבים כולם, למעשה יש מספר קטן מאוד יחסית של ערכים שהוא יכול לקבל. לא אציג את כל הניתוח שאפשר לעשות לאוסף הקרקטרים (שעיקרו במסקנה היפה הבאה: אוסף כל הקרקטרים של חבורה אבלית סופית \( G \) הוא בעצמו חבורה, שאיזומורפית ל-\( G \)) ואדלג למסקנה שנשתמש בה: \( \sum_{\chi}\chi\left(x\right)\overline{\chi\left(y\right)}=\phi\left(q\right)\delta\left(x,y\right) \).

מה הולך כאן? ובכן, מבצעים סכום של איברים מהצורה \( \chi\left(x\right)\overline{\chi\left(y\right)} \) (קו עליון מסמן כאן את הצמוד המרוכב), כאשר \( x,y \) שניהם קבועים, ומה שמשתנה הוא הקרקטר - הסכום הוא על כל הקרקטרים האפשריים מודולו \( q \). התוצאה? אחד משניים. אם \( x\equiv y\left(q\right) \) (\( x \) שקול ל-\( y \) מודולו \( q \)), אז היא \( \phi\left(q\right) \) - פונקצית אוילר, שמתארת כמה מספרים קטנים מ-\( q \) וזרים לו קיימים; אחרת, אם \( x\not\equiv y\left(q\right) \), התוצאה היא 0. זה מה ש-\( \delta\left(x,y\right) \) מסמן - הוא 1 אם \( x\equiv y\left(q\right) \) ואחרת הוא 0 (לדבר כזה קוראים “הדלתא של קרונקר” והוא סימון מקוצר סטנדרטי למדי במתמטיקה. אל תדאגו - קרונקר עשה עוד דברים בחיים).

אם כן, זה הצעד הראשון בכיוון של מה שדיריכלה צריך - סכום של פונקציות שמסוגל “לזהות” מתי שני מספרים הם שקולים מודולו \( q \). הצעד השני הוא לשלב את הקרקטרים הללו בהוכחה המקורית של אוילר. כלומר, לבנות פונקציות שמשלבות את הטוב שבשני העולמות - גם מכילות קרקטרים במובן מסויים, וגם מכילות את פונקצית הזטה של רימן במובן מסויים. השילוב הזה נקרא “פונקציות ה-\( L \) של דיריכלה”. פונקצית \( L \) היא פונקציה במשתנה יחיד \( s \), שמוגדרת באמצעות קרקטר דיריכלה כלשהו \( \chi \). ההגדרה של הפונקציה היא \( L_{\chi}\left(s\right)=\sum_{n=1}^{\infty}\frac{\chi\left(n\right)}{n^{s}} \). לצורך ההשוואה, פונקצית הזטה של רימן היא \( \zeta\left(s\right)=\sum_{n=1}^{\infty}\frac{1}{n^{s}} \); כלומר, ההבדל היחיד בינה ובין פונקצית \( L \) של דיריכלה הוא שבמונה לא חייב להיות 1, אלא באופן כללי יש את התוצאה של הפעלת \( \chi \) על הערכים השונים שעליהם רץ \( n \) (וזה, כזכור, יכול להיות שורשי יחידה או 0).

הצעד הראשון בהוכחה המקורית של אוילר הוא מעבר להצגה כפלית של הפונקציה, וזה גם מה שדיריכלה עושה - לא קשה לראות שמתקיים \( L_{\chi}\left(s\right)=\prod_{p}\left(1-\frac{\chi\left(p\right)}{p^{s}}\right)^{-1} \), מאותם שיקולים שפעלו על פונקצית הזטה של רימן, ותוך שימוש חזק בכפליות של \( \chi \). הצעד הבא, כפי שהראיתי בפוסט הזה, הוא לקיחת לוגריתם של שני הצדדים. כאן העלילה מסתבכת - באופן כללי, \( L_{\chi}\left(s\right) \) אינה פונקציה ממשית כי חלק משורשי היחידה שמופיעים בסכום שמגדיר אותה הם מרוכבים. כלומר, זוהי פונקציה מרוכבת, ולפונקציות שכאלו הוצאת לוגריתמים מלווה בסיבוך נוסף. אני הולך לדלג בקלילות מעל החלק הזה (שאינו מיידי) אל התוצאה הסופית - אפשר להראות, במובן מאוד מדוייק וקונקרטי, ש-\( \ln L_{\chi}\left(s\right)=\sum_{p}\frac{\chi\left(p\right)}{p^{s}}+O\left(1\right) \) (הסכום הוא על כל הראשוניים \( p \) שאינם מחלקים את \( q \) - זכרו ש-\( q \) אינו בהכרח ראשוני).

גם התוצאה הזו מאוד מזכירה את מה שכבר ראינו עם פונקצית הזטה - ההבדל היחיד (פרט להוכחה הקשה יותר) הוא בכך ש-\( \chi\left(p\right) \) הצליח להסתנן פנימה. כעת דיריכלה מתחיל לבצע להטוטים במטרה להשתמש בזהות \( \sum_{\chi}\chi\left(x\right)\overline{\chi\left(y\right)}=\phi\left(q\right)\delta\left(x,y\right) \) שראינו קודם - ראשית, הוא מכפיל את שני האגפים של המשוואה ב-\( \overline{\chi\left(a\right)} \) (\( a \) הוא המספר הקבוע שאנו רוצים להראות שיש אינסוף ראשוניים השקולים לו מודולו \( q \)) ומקבל את המשוואה \( \ln L_{\chi}\left(s\right)\overline{\chi\left(a\right)}=\sum_{p}\frac{\chi\left(p\right)\overline{\chi\left(a\right)}}{p^{s}}+O\left(1\right) \). אם כן, התקרבנו לתבנית של \( \chi\left(x\right)\overline{\chi\left(y\right)} \) שרצינו. מה חסר? סכימה על כל ה-\( \chi \). על כן, דיריכלה עובר לשלב הבא: את המשוואה \( \ln L_{\chi}\left(s\right)\overline{\chi\left(a\right)}=\sum_{p}\frac{\chi\left(p\right)\overline{\chi\left(a\right)}}{p^{s}}+O\left(1\right) \) הוא קיבל לכל קרקטר \( \chi \) מודולו \( q \), ולכן אפשר לבצע סכום של כל המשוואות הללו (יש רק מספר סופי של קרקטרים כך שאין כאן שום בעייתיות), ולקבל:

\( \sum_{\chi}\ln L_{\chi}\left(s\right)\overline{\chi\left(a\right)} = \sum_{p}\sum_{\chi}\frac{\chi\left(p\right)\overline{\chi\left(a\right)}}{p^{s}}+O\left(1\right) \)

וכאן השגנו בדיוק את מה שרצינו - סכום על כל הקרקטרים, שלא ייעלם רק כאשר \( p \) שקול ל-\( a \) מודולו \( q \). פורמלית, מקבלים:

\( \sum_{\chi}\ln L_{\chi}\left(s\right)\overline{\chi\left(a\right)} = \sum_{p\equiv a\left(q\right)}\frac{\phi\left(q\right)}{p^{s}}+O\left(1\right) \)

אם כן, באגף ימין יש סכום כלשהו שנלקח על הראשוניים השקולים ל-\( a \) מודולו \( q \); באגף שמאל יש איזו פונקציה מפלצתית. אם נראה שכאשר \( s \) שואף ל-1, המפלצת באגף שמאל שואפת לאינסוף, סיימנו; גם המפלצת באגף ימין חייבת לשאוף לאינסוף, ומכאן שיש אינסוף ראשוניים השקולים ל-\( a \) מודולו \( q \) (למעשה, אפשר לדעת יותר - ה-\( \phi\left(q\right) \) גורר, בסופו של דבר, שהפרופורציה שלהם מכלל הראשוניים היא בדיוק \( \frac{1}{\phi\left(q\right)} \), ומכיוון שיש בדיוק \( \phi\left(q\right) \) מספרים \( a \) שזרים ל-\( q \) וקטנים ממנו, נובע מכך שבכל סדרה חשבונית \( a+nq \) יש “בערך אותה כמות ראשוניים”, אבל לא אכנס לזה).

כאן בדיוק נכנס הניתוח האנליטי של פונקציות ה-\( L \) לתמונה. לא קשה להראות (נסו! זה מסתמך על מה שידוע על פונקצית הזטה של רימן) שאם \( \chi \) הוא הקרקטר הטריוויאלי \( \chi_{0} \), זה שנותן 1 לכל ערך שזר ל-\( q \) ו-0 ליתר, אז \( \ln L_{\chi_{0}}\left(s\right) \) שואף לאינסוף כאשר \( s \) שואף ל-1. אם כן, האם סיימנו? לא מיידית; הבעיה היא שאת \( \ln L_{\chi_{0}}\left(s\right) \) מחברים עם עוד הרבה פונקציות \( L \) אחרות; אולי אחרת מהן מתנהגת בדיוק כמו \( L_{\chi_{0}}\left(s\right) \), רק עם סימן הפוך, ולכן היא מבטלת אותה? לכן צריך להראות ש-\( \ln L_{\chi}\left(s\right) \) נשאר חסום כאשר \( s \) שואף ל-1, וזאת לכל \( \chi \) שאיננו טריוויאלי. אולי במפתיע, אבל זהו החלק המורכב ביותר של הוכחת המשפט. לא רק שהניתוח של פונקציות ה-\( L \) הוא טכני למדי, הוא גם מתפצל - ההוכחה שונה לגמרי עבור קרקטר \( \chi \) שיכול לתת ערכים מרוכבים, וקרקטר \( \chi \) שנותן רק ערכים ממשיים (אולי במפתיע, המקרה הראשון הוא דווקא הקל יותר). אולי בעתיד אכתוב פוסט טכני שמתאר את ההוכחה, אך לעת עתה הפוסט הזה טכני דיו.

אם כן, זוהי הוכחת משפט דיריכלה, מודולו פרטים טכניים רבים (שחלקם יפים מאוד לכשעצמם). אני מקווה שגם אם חלק מהפרטים לא ברורים, התמונה הגדולה ברורה, ובפרט איך הגענו מלהראות שיש אינסוף ראשוניים השקולים ל-\( a \) מודולו \( q \), לטענה לכאורה לא קשורה כמו “הפונקציה הזו והזו נותרת חסומה כש-\( s \) שואף ל-1”. אני סבור שאחרי תקופת התרגלות כלשהי, כמעט כל העוסקים במתמטיקה יראו את היופי הרב שבהוכחה הזו.


נהניתם? התעניינתם? אם תרצו, אתם מוזמנים לתת טיפ:

Buy Me a Coffee at ko-fi.com