משפט טורן

בתורת הגרפים, משפט טוראן הוא משפט הקובע, בהינתן מספר קבוע של צמתים, את הגרף עם מספר הקשתות המקסימלי שאינו מכיל תת-גרף שלם (קליקה) מגודל נתון. את המשפט הוכיח המתמטיקאי ההונגרי-יהודי פאל טוראן (Turán Pál) בשנת 1941. ביתר פירוט, המשפט קובע כי הגרף עם n צמתים שאינו מכיל קליקה   K t + 1 {\displaystyle \ K_{t+1}} ומספר קשתותיו הוא מקסימלי הוא גרף שמחולק ל-t קבוצות זרות של צמתים מאותו הגודל (עד כמה שהדבר ניתן), ושלכל צומת יש קשת לכל צומת בקבוצה אחרת ולאף צומת בקבוצה שלה. גרף כזה נקרא גרף טורן. הוכחת משפט טוראן נחשבת להולדתה של תורת הגרפים הקיצונית, ענף של תורת הגרפים ושל קומבינטוריקה קיצונית שקרוב לתורת רמזי. הענף חוקר את הגרפים הקטנים והגדולים ביותר שמקיימים תכונות כלשהן. גרף טוראן   T ( n , t ) {\displaystyle \ T(n,t)} הוא גרף עם n צמתים שמחולק ל-t קבוצות זרות של צמתים. מתוכן יש   n  mod  t {\displaystyle \ n{\text{ mod }}t} קבוצות של   ⌈ n t ⌉ {\displaystyle \ \lceil {\tfrac {n}{t}}\rceil } צמתים ובשאר   t − ( n  mod  t ) {\displaystyle \ t-(n{\text{ mod }}t)} הקבוצות יש   ⌊ n t ⌋ {\displaystyle \ \lfloor {\tfrac {n}{t}}\rfloor } צמתים (לפשר הסימונים ראו חשבון מודולרי ופונקציית הערך השלם). כלומר הקבוצות שוות בגודלן ככל הניתן (ההפרשים במספר הצמתים ביניהן הוא לכל היותר 1). במקרה בו t מחלק את n מתקבל המקרה הפשוט ביותר - בכל t הקבוצות יש   n t {\displaystyle \ {\tfrac {n}{t}}} צמתים בדיוק. בגרף טוראן כל שני צמתים מקבוצות שונות מחוברים בקשת, וכל שני צמתים מאותה קבוצה אינם מחוברים בקשת. משפט טוראן קובע כי מבין כל הגרפים עם n צמתים שאינם מכילים קליקה   K t + 1 {\displaystyle \ K_{t+1}} , ל-   T ( n , t ) {\displaystyle \ T(n,t)} יש את מספר הקשתות הגדול ביותר. קל לחשב את מספר הקשתות ב-   T ( n , t ) {\displaystyle \ T(n,t)} . למען הפשטות נעסוק במקרה בו t מחלק את n. בין כל שתי קבוצות יש   n t ⋅ n t = n 2 t 2 {\displaystyle \ {\tfrac {n}{t}}\cdot {\tfrac {n}{t}}={\tfrac {n^{2}}{t^{2}}}} קשתות (לפי עקרון הכפל, כי לכל אחד מבין   n t {\displaystyle \ {\tfrac {n}{t}}} הצמתים בקבוצה הראשונה יש קשת לכל אחד מבין   n t {\displaystyle \ {\tfrac {n}{t}}} הצמתים בקבוצה השנייה). ובסך הכל ישנם   ( t 2 ) = t ( t − 1 ) 2 {\displaystyle \ {\tbinom {t}{2}}={\tfrac {t(t-1)}{2}}} זוגות של קבוצות (ראו מקדם בינומי ומספר משולשי). ואין אף קשת נוספת בגרף. לכן מספר הקשתות הכולל ב-   T ( n , t ) {\displaystyle \ T(n,t)} כאשר t מחלק את n הוא:   t ( t − 1 ) 2 ⋅ n 2 t 2 = ( 1 − 1 t ) n 2 2 {\displaystyle \ {\frac {t(t-1)}{2}}\cdot {\frac {n^{2}}{t^{2}}}=\left(1-{\frac {1}{t}}\right){\frac {n^{2}}{2}}} לכן משפט טוראן קובע שזהו חסם עליון על מספר הקשתות המקסימלי בגרף עם n צמתים שאינו מכיל קליקה   K t + 1 {\displaystyle \ K_{t+1}} (תקף גם כאשר t אינו מחלק את n). לשם השוואה, בהיעדר הגבלה על גודל הקליקה המותרת, הגרף המקסימלי הוא הגרף השלם   K n {\displaystyle \ K_{n}} שלו   ( n 2 ) = n ( n − 1 ) 2 {\displaystyle \ {\tbinom {n}{2}}={\tfrac {n(n-1)}{2}}} קשתות. ידועות הוכחות רבות למשפט טוראן. הספר Proofs from THE BOOK, שמאגד הוכחות יפות, מביא חמש הוכחות שונות למשפט. ההוכחה המקורית של טוראן הראתה שמספר הקשתות של גרף טוראן אכן חוסם את מספר הקשתות האפשרי תחת התנאי הנתון. ההוכחה נעשית באינדוקציה על n לכל t קבוע. נסמן ב-   G n {\displaystyle \ G_{n}} את הגרף עם n צמתים שאינו מכיל קליקה   K t + 1 {\displaystyle \ K_{t+1}} ומספר הקשתות שלו הוא מקסימלי (קיים גרף כזה כי מספר הקשתות חסום על ידי המקרה השלם). אם   n ≤ t {\displaystyle \ n\leq t} אז   G n = K n {\displaystyle \ G_{n}=K_{n}} (כי במקרים אלה הגרף   G n {\displaystyle \ G_{n}} לא יכול להכיל קליקה עם יותר צמתים משיש בגרף עצמו). ומכאן שעבור   n ≤ t {\displaystyle \ n\leq t} מספר הקשתות בגרף   G n {\displaystyle \ G_{n}} מקיים:   n ( n − 1 ) 2 = ( 1 − 1 n ) n 2 2 ≤ ( 1 − 1 t ) n 2 2 {\displaystyle \ {\frac {n(n-1)}{2}}=\left(1-{\frac {1}{n}}\right){\frac {n^{2}}{2}}\leq \left(1-{\frac {1}{t}}\right){\frac {n^{2}}{2}}} ולכן המשפט נכון לכל n כזה (כולל n=1 שהוא בסיס האינדוקציה). עתה נניח כי   n > t {\displaystyle \ n>t} . נשים לב שבמקרים כאלה הגרף   G n {\displaystyle \ G_{n}} חייב להכיל קליקה   K t {\displaystyle \ K_{t}} . אחרת ניתן להוסיף לו קשת מבלי לקבל את קליקה   K t + 1 {\displaystyle \ K_{t+1}} וזאת בסתירה למספר הקשתות המקסימלי של   G n {\displaystyle \ G_{n}} . נחלק את הצמתים של   G n {\displaystyle \ G_{n}} לשתי קבוצות זרות:   G 1 {\displaystyle \ G_{1}} שמכילה את צמתי הקליקה   K t {\displaystyle \ K_{t}} ו-   G 2 {\displaystyle \ G_{2}} שמכילה את שאר הצמתים בגרף. ב-   G 1 {\displaystyle \ G_{1}} יש   t ( t − 1 ) 2 {\displaystyle \ {\tfrac {t(t-1)}{2}}} קשתות. ב-   G 2 {\displaystyle \ G_{2}} יש   n − t {\displaystyle \ n-t} צמתים, ולכן לפי הנחת האינדוקציה יש בה לכל היותר   ( 1 − 1 t ) ( n − t ) 2 2 {\displaystyle \ (1-{\tfrac {1}{t}}){\tfrac {(n-t)^{2}}{2}}} קשתות. בין כל צומת ב-   G 2 {\displaystyle \ G_{2}} לבין קבוצת הצמתים ב-   G 1 {\displaystyle \ G_{1}} יש לכל היותר   t − 1 {\displaystyle \ t-1} קשתות. אחרת הם יוצרים יחדיו קליקה   K t + 1 {\displaystyle \ K_{t+1}} ב-   G n {\displaystyle \ G_{n}} , בניגוד להגדרתו. כלומר בין   G 1 {\displaystyle \ G_{1}} ל-   G 2 {\displaystyle \ G_{2}} יש לכל היותר   ( n − t ) ( t − 1 ) {\displaystyle \ (n-t)(t-1)} קשתות. נחבר את שלושת הביטויים האלגבריים האלה כדי לקבל חסם עליון על מספר הקשתות ב-   G n {\displaystyle \ G_{n}} :   t ( t − 1 ) 2 + ( 1 − 1 t ) ( n − t ) 2 2 + ( n − t ) ( t − 1 ) = ( 1 − 1 t ) n 2 2 {\displaystyle \ {\frac {t(t-1)}{2}}+\left(1-{\frac {1}{t}}\right){\frac {(n-t)^{2}}{2}}+(n-t)(t-1)=\left(1-{\frac {1}{t}}\right){\frac {n^{2}}{2}}} כנדרש. להלן הוכחה ישירה כי גרף   G {\displaystyle \ G} עם n צמתים שאינו מכיל קליקה   K t + 1 {\displaystyle \ K_{t+1}} ומספר הקשתות שלו הוא מקסימלי הוא בהכרח גרף טורן. נוכיח כי היחס "אין קשת בין   u {\displaystyle \ u} ל-   v {\displaystyle \ v} " הוא יחס שקילות בין הצמתים בגרף: רפלקסיביות: לעולם אין קשת בין צומת לעצמו. סימטריות: אם אין קשת בין   u {\displaystyle \ u} ל-   v {\displaystyle \ v} אז אין קשת בין   v {\displaystyle \ v} ל-   u {\displaystyle \ u} . טרנזיטיביות: נניח בשלילה כי היחס אינו טרנזיטיבי. כלומר קיימים צמתים   u , v , w {\displaystyle \ u,v,w} כך שאין קשתות   ( u , v ) {\displaystyle \ (u,v)} ו-   ( v , w ) {\displaystyle \ (v,w)} , אבל ישנה קשת   ( u , w ) {\displaystyle \ (u,w)} . נסמן ב-   d ( v ) {\displaystyle \ d(v)} את הדרגה של   v {\displaystyle \ v} . נפצל לשלושה מקרים:   d ( u ) > d ( v ) {\displaystyle \ d(u)>d(v)} - נמחק את הצומת   v {\displaystyle \ v} מהגרף ונחליפו בצומת   u ′ {\displaystyle \ u'} שהוא העתק של הצומת   u {\displaystyle \ u} (מחובר לאותם צמתים). מצד אחד לא נוצרה קליקה גדולה יותר, כי לכל קליקה ש-   u ′ {\displaystyle \ u'} חבר בה, יש קליקה מגודל זהה ש-   u {\displaystyle \ u} חבר בה, ומצד שני הגדלנו את מספר הקשתות בסתירה למקסימליות של   G {\displaystyle \ G} .   d ( w ) > d ( v ) {\displaystyle \ d(w)>d(v)} - אנלוגי למקרה הקודם.   d ( v ) ≥ d ( u ) , d ( w ) {\displaystyle \ d(v)\geq d(u),d(w)} - נמחק את   u {\displaystyle \ u} ו-   w {\displaystyle \ w} שיחדיו מחוברים אליהם   d ( u ) + d ( w ) − 1 {\displaystyle \ d(u)+d(w)-1} קשתות (פחות אחד, כי הקשת ביניהם נספרת פעמיים). ונחליפם בשני עותקים של   v {\displaystyle \ v} . כמו קודם, לא נוצרות קליקות גדולות יותר. בסך הכל מספר הקשתות גדל ב-   2 d ( v ) − ( d ( u ) + d ( w ) − 1 ) ≥ 1 {\displaystyle \ 2d(v)-(d(u)+d(w)-1)\geq 1} בסתירה למקסימליות של   G {\displaystyle \ G} . הוכחנו כי "אין קשת בין   u {\displaystyle \ u} ל-   v {\displaystyle \ v} " הוא יחס שקילות בין צמתי   G {\displaystyle \ G} . לכן צמתי   G {\displaystyle \ G} מתחלקים למחלקות שקילות, כך שבין כל שני צמתים יש קשת אם ורק אם הם ממחלקות שקילות שונות. מספר מחלקות השקילות קטן מ-   t + 1 {\displaystyle \ t+1} , אחרת נוכל לבחור נציג אחד מכל מחלקת שקילות ונקבל קליקה   K t + 1 {\displaystyle \ K_{t+1}} בניגוד לתנאי. מצד שני,   G {\displaystyle \ G} בהכרח מכיל קליקה   K t {\displaystyle \ K_{t}} , אחרת ניתן להוסיף לו קשת בלי לקבל את   K t + 1 {\displaystyle \ K_{t+1}} וזאת בסתירה למספר הקשתות המקסימלי של   G {\displaystyle \ G} . צמתים שונים בקליקה   K t {\displaystyle \ K_{t}} חייבים להיות ממחלקות שקילות שונות, כי יש ביניהם קשת, ומכאן שיש בדיוק   t {\displaystyle \ t} מחלקות שקילות שונות. עד כה קיבלנו שצמתי   G {\displaystyle \ G} מחולקים ל-   t {\displaystyle \ t} מחלקות זרות, כך שכל צומת מקושר לכל צומת מקבוצה אחרת ולאף צומת מהקבוצה שלו. כדי להוכיח כי   G {\displaystyle \ G} גרף טורן נותר רק להראות שכל המחלקות כמעט באותו הגודל (ההפרש ביניהן הוא לכל היותר 1). נשים לב כי לכל מחלקה   A {\displaystyle \ A} ולכל צומת   v ∈ A {\displaystyle \ v\in A} מתקיים   d ( v ) = n − | A | {\displaystyle \ d(v)=n-|A|} (v מקושר לכל הצמתים שלא ב-A). נניח בשלילה כי ישנה מחלקה   A 1 {\displaystyle \ A_{1}} שיש בה לפחות שני צמתים יותר מבמחלקה אחרת   A 2 {\displaystyle \ A_{2}} . נמחק צומת   v {\displaystyle \ v} מ-   A 1 {\displaystyle \ A_{1}} ונוסיף צומת   v ′ {\displaystyle \ v'} ל-   A 2 {\displaystyle \ A_{2}} . מספר הקשתות שיתווספו ל-   G {\displaystyle \ G} הוא:   d ( v ′ ) − d ( v ) = ( n − ( | A 2 | + 1 ) ) − ( n − | A 1 | ) = | A 1 | − | A 2 | − 1 ≥ 1 {\displaystyle \ d(v')-d(v)=(n-(|A_{2}|+1))-(n-|A_{1}|)=|A_{1}|-|A_{2}|-1\geq 1} , בסתירה למספר הקשתות המקסימלי של   G {\displaystyle \ G} . מכאן ש-   G {\displaystyle \ G} הוא בהכרח גרף טוראן. משפט טוראן למקרה הפרטי t=2 ידוע עוד משנת 1907 ושמו משפט מנטל. המשפט קובע שהגרף המקסימלי מגודל n שאינו מכיל משולשים (קליקה   K 3 {\displaystyle \ K_{3}} ) הוא גרף דו צדדי שבכל צד מופיעים חצי מהצמתים (אם n אי-זוגי, בצד אחד יש אחד יותר). וכל צומת מקושר לכל הצמתים מהצד השני (זהו   T ( n , 2 ) {\displaystyle \ T(n,2)} ). מספר הקשתות במקרה כזה יהיה ⌊ n 2 4 ⌋ {\displaystyle \lfloor {\tfrac {n^{2}}{4}}\rfloor } , בערך חצי ממספר הקשתות האפשריות ללא הגבלת משולשים (המקרה של הגרף השלם). הכללה של משפט מנטל אומרת שכל גרף עם n צמתים ולפחות   n 2 4 {\displaystyle \ {\tfrac {n^{2}}{4}}} קשתות הוא או גרף טוראן   T ( n , 2 ) {\displaystyle \ T(n,2)} , או שהוא מכיל מעגל מכל אורך שהוא עד n (ולא רק משולש). גדי אלכסנדרוביץ', משפט טורן והולדת תורת הגרפים האקסטרמלית, באתר "לא מדויק", 2 בספטמבר 2011