חזור לתיקייה: 02340141 - קומבינטוריקה למדעי המחשב

7 - עצים

חיפוש בתיקיה
Ctrl K
לחץ כאן או הקש Ctrl K כדי לחפש בכל התיקיה
  • כללי
  • סופרים עצים
  • עצים מכוונים
  • עץ פורש
  • מטריצת השכנויות ומטריצת ה-in-degree
  • עץ פורש בגרף לא מכוון

7 - עצים

02340141

קומבינטוריקה למדעי המחשב

רשימות הרצאה לקריאה בשבת

עצים

הופק מתוך תקיית התואר של שקד

uni-folder.vercel.app

הגדרה 1 (גרף חסר מעגלים)

גרף ללא מעגלים פשוטים נקרא גרף חסר מעגלים.

הגדרה 2 (עץ)

גרף נקרא עץ אם הוא גרף קשיר וחסר מעגלים.

משפט

עבור גרף GGG ללא לולאות עצמיות התנאים הבאים שקולים:

  1. GGG הוא עץ (קשיר וחסר מעגלים)
  2. GGG חסר מעגלים, אך הוספת קשת אליו תיצור בו מעגל פשוט
  3. בין כל שני צמתים ב-GGG יש מסלול פשוט יחיד.
  4. GGG קשיר, אך הסרת כל קשת ממנו תפגום בקשירות.
מסקנה

  • בעץ מספר מינימלי של קשתות שייתכן בגרף קשיר.
  • בעץ מספר מקסימלי של קשתות שייתכן בגרף חסר מעגלים.

הוכחה:
:(1)  ⟹  (2):(1)\implies(2):(1)⟹(2) נתון כי GGG הוא קשיר וחסר מעגלים ונדרש להוכיח שהוספת קשת תיצור מעגל פשוט.
יהיו u,v∈Vu,v \in Vu,v∈V. הגרף קשיר ולכן קיים מסלול פשוט מ-uuu ל-vvv.
הוספת קשת eee שלא קיימת במעגל תצור מעגל פשוט.
:(2)  ⟹  (3):(2)\implies(3):(2)⟹(3) נתון כי GGG הוא חסר מעגלים והוספת קשת תצור מעגל פשוט ונדרש להוכיח כי בין כל שני צמתים יש מסלול פשוט יחיד.
יהיו u,v∈Vu,v \in Vu,v∈V. נוסיף קשת בין u,vu,vu,v. לכן, נוצר מעגל פשוט. נסיר את הקשת שהוספנו ונקבל מסלול פשוט מ-uuu ל-vvv.
נניח בשלילה שקיימים שני מסלולים פשוטים שונים:

P:ue1v1e2v2e3…eℓ−1vℓ−1eℓvP′:ue1′v1′e2′v2′e3′…em−1′vm−1′em′vP:u\edge{e_{1}}v_{1}\edge{e_{2}}v_{2}\edge{e_{3}}\dots \edge{e_{\ell-1}}v_{\ell-1}\edge{e_{\ell}}v \qquad \qquad P':u\edge{e_{1}'}v_{1}'\edge{e_{2}'}v_{2}'\edge{e_{3}'}\dots \edge{e_{m-1}'}v_{m-1}'\edge{e_{m}'}vP:ue1​​v1​e2​​v2​e3​​…eℓ−1​​vℓ−1​eℓ​​vP′:ue1′​​v1′​e2′​​v2′​e3′​​…em−1′​​vm−1′​em′​​v

אם PPP הוא המשך של P′P'P′ אז נוצר לנו פה מעגל פשוט בסתירה לכך ש-GGG חסר מעגלים.
אם יש פיצולים, אזי קיימים j,r,sj,r,sj,r,s כך ש:

v0=v0′,v1=v1′,v2=v2′,…,vj=vj′v_{0}=v_{0}',v_{1}=v_{1}',v_{2}=v_{2}',\dots,v_{j}=v_{j}'v0​=v0′​,v1​=v1′​,v2​=v2′​,…,vj​=vj′​ vr=vs′v_{r}=v_{s}'vr​=vs′​

והצמתים vj,vj+1,…,vr−1,vrv_{j},v_{j+1},\dots,v_{r-1},v_{r}vj​,vj+1​,…,vr−1​,vr​ הינם שונים מ-vj+1′,vj+2′,…,vs−1′v_{j+1}',v_{j+2}',\dots,v_{s-1}'vj+1′​,vj+2′​,…,vs−1′​.
קיבלנו מעגל פשוט:

vj=vj′,vj+1′vj+2′,…,vs−1′,vs′=vrvr−1,vr−2,…,vj+1,vjv_{j}=v_{j}',v_{j+1}'v_{j+2}',\dots,v_{s-1}',v_{s}'=v_{r}v_{r-1},v_{r-2},\dots,v_{j+1},v_{j}vj​=vj′​,vj+1′​vj+2′​,…,vs−1′​,vs′​=vr​vr−1​,vr−2​,…,vj+1​,vj​

בסתירה לכך שלא קיימים מעגלים. לכן, המסלול הפשוט יחיד!
:(3)  ⟹  (4):(3)\implies(4):(3)⟹(4) נתון כי בין כל שני צמתים ב-GGG יש מסלול פשוט יחיד ונדרש להוכיח כי GGG קשיר וכי הסרת כל קשת ממנו תפגום בקשירות.
בין כל שני צמתים יש מסלול פשוט ולכן, לפי הגדרה, GGG קשיר.
נניח בשלילה כי קיימת קשת שהסרתה מהגרף אינה פוגמת בקשירות. אזי, יש יותר ממסלול פשוט אחד בין uuu ל-vvv בסתירה לכך שהמסלול הפשוט יחיד.
לכן, הסרת כל קשת מ-GGG תפגום בקשירות.
:(4)  ⟹  (1):(4)\implies (1):(4)⟹(1) נתון כי GGG קשיר, והסרת כל קשת ממנו תפגום בקשירות ונדרש להוכיח כי GGG הוא עץ(קשיר וחסר מעגלים).
נתון כי GGG קשיר ולכן, נדרש להוכיח כי GGG חסר מעגלים.
נניח בשלילה כי יש מעגל פשוט. נוריד את אחת הקשתות ונקבל גרף G′G'G′.
יהיו w,w′∈Vw,w' \in Vw,w′∈V. הגרף קשיר ולכן קיים מסלול PPP בין www ל-w′w'w′ ב-GGG.
אם PPP אינו כולל את הקשת שהורדנו, אז הוא גם מסלול ב-G′G'G′. אם PPP כולל את הקשת שהורדנו, נחליפה במסלול אחר ונקבל מסלול ב-G′G'G′.
לכן, לפי הגדרה, הגרף קשיר וזוהי סתירה לכך שהסרת כל קשת ממנו תפגום בקשירות.
לכן, GGG הינו עץ!
∎

הגדרה 3 (תת גרף)

תת גרף של גרף G=(V,E)G=(V,E)G=(V,E) הוא גרף G′=(V′,E′)G'=(V',E')G′=(V′,E′) כך ש-E′⊆E,V′⊆VE'\subseteq E,V'\subseteq VE′⊆E,V′⊆V.

הגדרה 4 (תת גרף מושרה)

תת גרף של גרף G=(V,E)G=(V,E)G=(V,E) נקרא מושרה ע"י תת קבוצת צמתים V′⊆VV' \subseteq VV′⊆V אם גרף G′=(V′,E′)G'=(V',E')G′=(V′,E′) כאשר E′E'E′ היא קבוצת כל הקשתות ב-EEE ששני קצוותיהן ב-V′V'V′.

כלומר, אנו לוקחים את כל הקשתות שבאות עם הצמתים שלקנו מהגרף כדי שהוא יהיה מושרה.

הגדרה 5 (צומת נגיש)

צומת uuu נקרא נגיש מצומת vvv אם בגרף GGG קיים מסלול בין vvv ל-uuu.

משפט

נגישות הוא יחס שקילות. כלומר,

  • רפלקסיביות: כל צומת נגיש מעצמו.
  • סימטריות: אם uuu נגיש מ-vvv אזי vvv נגיש מ-uuu.
  • טרנזיטיביות: אם uuu נגיש מ-vvv ו-vvv נגיש מ-www אזי uuu נגיש מ-www.

יחס הנגישות מחלק את קבוצת צמתי הגרף למחלקות קשירות, כך ששני צמתים נמצאים באותה מחלקה   ⟺  \iff⟺ הם נגישים זה מזה.

הגדרה 6 (רכיב קשיר של גרף)

תת גרף המושרה ע"י מחלקת השקילות נקרא רכיב קשיר של גרף.

הערה

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

הגדרה 7 (יער)

גרף חסר מעגלים נקרא יער.

טענה

כל רכיב קשיר של יער הוא עץ.

הגדרה 8 (עלה)

עלה בעץ הוא צומת בעץ שדרגתו 1.

הגדרה 9 (צומת פנימי בעץ)

צומת בעץ שדרגתו גדולה מ-111 יקרא צומת פנימי בעץ.

טענה

ביער עם קשת אחת לפחות, יש לפחות שני עלים.

משפט

יהי גרף G=(V,E)G=(V,E)G=(V,E). אזי, הטענות הבאות שקולות:

  1. GGG הוא עץ (קשיר וחסר מעגלים)
  2. GGG חסר מעגלים ו-∣E∣=∣V∣−1|E|=|V|-1∣E∣=∣V∣−1.
  3. GGG קשיר ו-∣E∣=∣V∣−1|E|=|V|-1∣E∣=∣V∣−1.

הוכחה:
:(1)  ⟹  (2):(1)\implies(2):(1)⟹(2) נתון כי GGG הוא עץ וצ"ל ש-GGG חסר מעגלים ומתקיים ∣E∣=∣V∣−1|E|=|V|-1∣E∣=∣V∣−1.
נתון כי GGG הוא עץ ולכן הוא חסר מעגלים.
נוכיח באינדוקציה כי ∣E∣=∣V∣−1|E|=|V|-1∣E∣=∣V∣−1.
בסיס: ∣V∣=n=1|V|=n=1∣V∣=n=1 ואז ∣E∣=0=1−1|E|=0=1-1∣E∣=0=1−1.
צעד: נניח כי עבור ∣V∣=n|V|=n∣V∣=n מתקיים ∣E∣=n−1|E|=n-1∣E∣=n−1 ונוכיח כי עבור ∣V∣=n+1|V|=n+1∣V∣=n+1 מתקיים ∣E∣=n|E|=n∣E∣=n.
יש לפחות קשת אחת ולכן יש לפחות עלה אחד. נסיר אותו ואת הקשת אליה הוא מחובר.
נקבל עץ T′=(V′,E′)T'=(V',E')T′=(V′,E′) עם nnn צמתים. לפי הנחת האינדוקציה נקבל:

∣E∣=∣E′∣+1=∣V′∣−1+1=∣V′∣=∣V∣−1|E|=|E'|+1=|V'|-1+1=|V'|=|V|-1∣E∣=∣E′∣+1=∣V′∣−1+1=∣V′∣=∣V∣−1

כנדרש.
:(2)  ⟹  (3):(2)\implies(3):(2)⟹(3) נתון כי GGG הוא חסר מעגלים ו-∣E∣=∣V∣−1|E|=|V|-1∣E∣=∣V∣−1 וצ"ל כי GGG קשיר ובנוסף ∣E∣=∣V∣−1|E|=|V|-1∣E∣=∣V∣−1.
GGG חסר מעגלים ולכן הוא יער. לפי המסקנה שתגיע לאחר ההוכחה, ∣E∣=∣V∣−(מספר רכיבי הקשירות)|E|=|V|-(\R{\text{מספר רכיבי הקשירות}})∣E∣=∣V∣−(מספר רכיבי הקשירות).
נתון כי ∣E∣=∣V∣−1|E|=|V|-1∣E∣=∣V∣−1 ולכן מספר הרכיבים הקשירים הוא 111 ולכן GGG קשיר.
:(3)  ⟹  (1):(3)\implies (1):(3)⟹(1) זהה להוכחת המסקנה השנייה שתגיע לאחר ההוכחה.
∎

מסקנה

ביער G=(V,E)G=(V,E)G=(V,E) מתקיים:

∣E∣=∣V∣−(מספר הרכיבים הקשירים)|E|=|V|-(\R{\text{מספר הרכיבים הקשירים}})∣E∣=∣V∣−(מספר הרכיבים הקשירים)

ובפרט ∣E∣≤∣V∣−1|E|\leq |V|-1∣E∣≤∣V∣−1 ושוויון מתקיים G  ⟺  G\iffG⟺ הוא עץ.

הוכחה:
כל רכיב קשיר Gi=(Vi,Ei)G_{i}=(V_{i},E_{i})Gi​=(Vi​,Ei​) הוא עץ.

∣E1∣=∣V1∣−1,∣E2∣=∣V2∣−1,∣E3∣=∣V3∣−1,…|E_{1}|=|V_{1}|-1,\quad |E_{2}|=|V_{2}|-1, \quad |E_{3}|=|V_{3}|-1, \quad \dots∣E1​∣=∣V1​∣−1,∣E2​∣=∣V2​∣−1,∣E3​∣=∣V3​∣−1,… ∣E∣=∣V∣−(מספר הרכיבים הקשירים)|E|=|V|-(\R{\text{מספר הרכיבים הקשירים}})∣E∣=∣V∣−(מספר הרכיבים הקשירים)

∎

מסקנה

בגרף קשיר G=(V,E)G=(V,E)G=(V,E) מתקיים:

∣E∣≥∣V∣−1|E|\geq |V|-1∣E∣≥∣V∣−1

ושוויון מתקיים G  ⟺  G\iffG⟺ הוא עץ.

הוכחה:
אם GGG קשיר והוא אינו עץ, נסיר קשתות כל עוד הקשירות אינה נפגמת.
לכן, ניתן להסיר קשת אחת לפחות בלי לפגום בקשירות.
הגרף האחרון שנקבל יהיה עץ G′=(V,E′)G'=(V,E')G′=(V,E′) ולכן:

∣E∣>∣E′∣=∣V∣−1|E|>|E'|=|V|-1∣E∣>∣E′∣=∣V∣−1

∎

סופרים עצים

נניח ויש לנו עץ בעל nnn צמתים שונים.
נסמן ב-τn\tau_{n}τn​ את מספר העצים על קבוצת הצמתים Σ={1,2,3,…,n}\Sigma=\left\{ 1,2,3,\dots,n \right\}Σ={1,2,3,…,n}.

דוגמה

עבור עץ עם 444 צמתים שונים, נוכל לסדר את העץ בשני דרכים: שרוך ושמש
עבור השמש אנו קובעים צומת מרכזי ואז כל השאר נקבעים לפיו ולכן יש 444 אפשרויות.
עבור השרוך, אנו יכולים לסדר בכל הדרכים אך סדר הפוך זהה לסדר הישר ולכן 4!2=12\frac{4!}{2}=1224!​=12 אפשרויות.
לכן, נקבל τ4=16\tau_{4}=16τ4​=16.

דוגמה

n12345τn11316125τn120314253\begin{array}{|c|ccccc|} \hline n & 1 & 2 & 3 & 4 & 5 \\ \hline \tau_{n} & 1 & 1 & 3 & 16 & 125 \\ \tau_{n} & 1 & 2^0 & 3^1 & 4^2 & 5^3 \\ \hline \end{array}nτn​τn​​111​2120​3331​41642​512553​​
משפט (קיילי)

מספר העצים על nnn צמתים שונים הינו τn=nn−2\tau_{n}=n^{n-2}τn​=nn−2.

הוכחה:
נגדיר באופן רקורסיבי התאמה ϕ\phiϕ בין קבוצת העצים על קבוצת הצמתים Σ\SigmaΣ בגודל nnn לבין קבוצת המילים Σn−2\Sigma^{n-2}Σn−2 ונוכיח כי היא חח"ע ועל.
נניח סדר על האיברים של Σ\SigmaΣ. למשל 1<2<⋯<n1<2<\dots<n1<2<⋯<n.
אם העץ TTT מכיל שני צמתים, אזי ϕ(T)\phi(T)ϕ(T) היא המילה הריקה. אחרת:

  • יהי vvv עלה מינימלי ב-TTT.
  • תהי veuv\edge{e}uve​u הקשת היחידה ב-TTT המחוברת אל vvv.
  • יהי T′T'T′ העץ על Σ∖{v}\Sigma \setminus \left\{ v \right\}Σ∖{v} המתקבל מהסרת vvv ו-eee מ-TTT.
  • נגדיר ϕ(T)=uϕ(T′)\phi(T)=u\phi(T')ϕ(T)=uϕ(T′).

תחילה נראה כי לכל עץ TTT על קבוצת צמתים Σ\SigmaΣ בגודל nnn, תמונת ההתאמה ϕ(T)\phi(T)ϕ(T) היא מילה ב-Σn−2\Sigma^{n-2}Σn−2 באמצעות אינדוקציה:
בסיס: עבור n=2n=2n=2 מתקיים כי ϕ(veu)\phi(v\edge{e}u)ϕ(ve​u) היא המילה הריקה שאורכה 000.
צעד: נניח נכונות עבור n−1≥2n-1\geq 2n−1≥2 ונוכיח עבור n≥3n\geq 3n≥3.

ϕ(T)=uϕ(T′)\phi(T)=u\phi(T')ϕ(T)=uϕ(T′)

כאשר u∈Σu \in\Sigmau∈Σ ו-ϕ(T′)∈Σn−3\phi (T')\in\Sigma^{n-3}ϕ(T′)∈Σn−3 ולכן ϕ∈Σn−2\phi \in\Sigma^{n-2}ϕ∈Σn−2.
לכן, לכל עץ TTT מתקיים ϕ(T)∈Σn−2\phi(T)\in\Sigma^{n-2}ϕ(T)∈Σn−2.

נראה כעת כי הצומת vvv הוא עלה ב-v  ⟺  Tv\iff Tv⟺T אינו מופיע ב-ϕ(T)\phi(T)ϕ(T):
⟸: יהיו T=T0,T1,…,Tn−2T=T_{0},T_{1},\dots,T_{n-2}T=T0​,T1​,…,Tn−2​ העצים המתקבלים במהלך החישוב ϕ(T)\phi(T)ϕ(T).
הסרת צומת +++ קשת, אינה מגדילה את דרגות שאר הצמתים ולכן, אם vvv עלה ב-TTT אזי הוא עלה ב-TiT_{i}Ti​ או אינו מופיע כלל ב-TiT_{i}Ti​. שכנו של עלה vvv יכול להיות עלה רק בעץ האחרון Tn−2T_{n-2}Tn−2​.
לכן, vvv לא יופיע ב-ϕ(T)\phi(T)ϕ(T).
⟹: אם vvv אינו עלה ב-TTT, אזי דרגתו 2≤2\leq2≤.
בשלב מסויים בחישוב ϕ(T)\phi(T)ϕ(T) דרגתו תרד מ-222 ל-111. בשלב זה מסירים שכן שלו ולכן vvv יופיע ב-ϕ(T)\phi(T)ϕ(T).

לכן, הצומת vvv הוא עלה ב-v  ⟺  Tv\iff Tv⟺T אינו מופיע ב-ϕ(T)\phi(T)ϕ(T).

נגדיר באופן רקורסיבי התאמה θ\thetaθ בין קבוצת המילים Σn−2\Sigma^{n-2}Σn−2 כאשר ∣Σ∣=n|\Sigma|=n∣Σ∣=n לבין קבוצת העלים על קבוצת הצמתים Σ\SigmaΣ ונוכיח כי θ(s)=ϕ−1(s)\theta(s)=\phi^{-1}(s)θ(s)=ϕ−1(s).
עבור מילה s=s1s2…sn−2s=s_{1}s_{2}\dots s_{n-2}s=s1​s2​…sn−2​ מעל אלפבית Σ\SigmaΣ בגודל n≥2n\geq 2n≥2:
אם Σ={u,v}\Sigma=\left\{ u,v \right\}Σ={u,v} ו-sss המילה הריקה, אזי העץ θ(s)\theta(s)θ(s) הוא הקשת uevu\edge{e}vue​v.
אחרת, עבור: ∣Σ∣≥3|\Sigma|\geq 3∣Σ∣≥3 נגדיר σ\sigmaσ מינימלי ב-Σ\SigmaΣ שאינו מופיע במילה sss.
T~=θ(s2s3…sn−2)\tilde{T}=\theta(s_{2}s_{3}\dots s_{n-2})T~=θ(s2​s3​…sn−2​) גרף על קבוצת הצמתים Σ∖{σ}\Sigma \setminus \left\{ \sigma \right\}Σ∖{σ} ו-θ(s)\theta(s)θ(s) הוא הגרף Σ\SigmaΣ המתקבל מהוספת הקשת σes1\sigma \edge{e}s_{1}σe​s1​ אל T~\tilde{T}T~.

נראה באינדוקציה כי עבור כל s∈Σn−2s \in\Sigma^{n-2}s∈Σn−2, התמונה θ(s)\theta(s)θ(s) היא עץ על קבוצת הצמתים Σ\SigmaΣ.
בסיס: עבור n=2n=2n=2 המילה sss היא המילה הריקה מעל Σ={u,v}\Sigma=\left\{ u,v \right\}Σ={u,v} ו-θ(s)=uev\theta(s)=u\edge{e}vθ(s)=ue​v הוא עץ על Σ\SigmaΣ.
צעד: sss מילה באורך n−2n-2n−2 ולכן קיים σ∈Σ\sigma \in\Sigmaσ∈Σ מינימלי, אשר אינו מופיע ב-sss. מהנחת האינדוקציה T~\tilde{T}T~ הוא עץ על Σ∖{σ}\Sigma \setminus \left\{ \sigma \right\}Σ∖{σ} ולכן θ(s1s2s3…sn−2)\theta(s_{1}s_{2}s_{3}\dots s_{n-2})θ(s1​s2​s3​…sn−2​) הוא עץ על Σ\SigmaΣ.
לכן, לכל מילה sss מתקיים θ(s)\theta(s)θ(s) הוא עץ.

נראה כעת כי לכל עץ TTT על קבוצה של שני צמתים לפחות מתקיים θ(ϕ(T))=T\theta(\phi(T))=Tθ(ϕ(T))=T. כלומר, T⟼ϕ(T)T \longmapsto \phi(T)T⟼ϕ(T) היא התאמה חח"ע בתחום שהוא קבוצת העצים על Σ\SigmaΣ.
בסיס: עבור n=2n=2n=2 קיימים עץ אחד על Σ={u,v}\Sigma=\left\{ u,v \right\}Σ={u,v} ומילה ריקה אחת על Σ\SigmaΣ.
צעד: בהינתן עץ TTT נסמן ϕ(T)≡s=s1s2…sn−2=s1s′\phi(T)\equiv s=s_{1}s_{2}\dots s_{n-2}=s_{1}s'ϕ(T)≡s=s1​s2​…sn−2​=s1​s′ ואז ϕ(T′)≡s′\phi(T')\equiv s'ϕ(T′)≡s′ כאשר u≡s1u\equiv s_{1}u≡s1​.
בחישוב θ(s)\theta(s)θ(s) מתקיים σ≡v\sigma\equiv vσ≡v כי vvv עלה מינימלי ב-TTT ולכן אינו מופיע ב-sss.

θ(ϕ(T))=θ(uϕ(T′))=θ(s′)∪{σes1}=θ(ϕ(T′))∪{veu}=↓הנחת האינדוקציהT′∪{veu}=T\theta(\phi(T))=\theta(u\phi(T'))=\theta(s')\cup \left\{ \sigma \edge{e}s_{1} \right\}=\theta(\phi(T'))\cup \left\{ v\edge{e}u \right\}\underset{\begin{matrix} \downarrow \\ \R{\text{הנחת האינדוקציה}} \end{matrix}}{=}T'\cup \left\{ v\edge{e}u \right\}=Tθ(ϕ(T))=θ(uϕ(T′))=θ(s′)∪{σe​s1​}=θ(ϕ(T′))∪{ve​u}↓הנחת האינדוקציה​=​T′∪{ve​u}=T

לכן, T→ϕ(T)T \rightarrow \phi(T)T→ϕ(T) היא התאמה חח"ע בתחום שהוא קבוצת העצים על Σ\SigmaΣ.

כעת נראה באינדוקציה כי לכל מילה s∈Σn−2s \in\Sigma^{n-2}s∈Σn−2 כאשר ∣Σ∣=n|\Sigma|=n∣Σ∣=n מתקיים ϕ(θ(s))=s\phi(\theta(s))=sϕ(θ(s))=s. כלומר, T⟼ϕ(T)T \longmapsto\phi(T)T⟼ϕ(T) היא התאמה על הטווח Σn−2\Sigma^{n-2}Σn−2.
בסיס: עבור n=2n=2n=2 קיימים מילה ריקה אחת ועץ אחד.
צעד: בהינתן מילה s=s1s2…sn−2=s1s~s=s_{1}s_{2}\dots s_{n-2}=s_{1}\tilde{s}s=s1​s2​…sn−2​=s1​s~ נסמן T≡θ(s)=T~∪{σes1}T\equiv\theta(s)=\tilde{T}\cup \left\{ \sigma \edge{e}s_{1} \right\}T≡θ(s)=T~∪{σe​s1​} כאשר T~=θ(s~)\tilde{T}=\theta(\tilde{s})T~=θ(s~).
σ\sigmaσ הוא עלה ב-TTT ולכן, שאר העלים של TTT הם עלים של T~\tilde{T}T~ ו-s1s_{1}s1​ אינו עלה ב-TTT.
מהנחת האינדוקציה ϕ(T~)=s~\phi(\tilde{T})=\tilde{s}ϕ(T~)=s~ ולכן, העלים של T~\tilde{T}T~ אינם מופיעם ב-s~\tilde{s}s~.
לכן, σ\sigmaσ הוא עלה מינימלי ב-TTT ולכן:

ϕ(θ(s))=ϕ(T~∪{σes1})=s1ϕ(T~)=s1s~=s\phi(\theta(s))=\phi(\tilde{T}\cup \left\{ \sigma \edge{e}s_{1} \right\})=s_{1}\phi(\tilde{T})=s_{1}\tilde{s}=sϕ(θ(s))=ϕ(T~∪{σe​s1​})=s1​ϕ(T~)=s1​s~=s

לכן, T→ϕ(T)T \rightarrow \phi(T)T→ϕ(T) היא התאמה על הטווח Σn−2\Sigma^{n-2}Σn−2.

לכן, מכיוון שקיימת העתקה חח"ע ועל בין קבוצת העצים על קבוצת הצמתים Σ\SigmaΣ בגודל nnn לבין קבוצת המילים Σn−2\Sigma^{n-2}Σn−2 אזי מתקיים τn=nn−2\tau_{n}=n^{n-2}τn​=nn−2.
∎

למה

הדרגה של vvv ב-TTT גדולה ב-111 ממספר המופעים של vvv ב-ϕ(T)\phi(T)ϕ(T).

הוכחה:
אם vvv עלה הלמה נובעת מההוכחה שראינו.
אם vvv אינו עלה אזי בכל הסרת שכן של vvv בעת חישוב ϕ(T)\phi(T)ϕ(T) אנו מוסיפים את vvv אל ϕ(T)\phi(T)ϕ(T) ודרגתו של vvv קטנה ב-111.
זאת עד אשר דרגתו מגיעה ל-111 ואז vvv הופך לעלה.
∎

עצים מכוונים

הגדרה 10 (שורש)

צומת vvv בגרף מכוון נקרא שורש אם יש מסלול מכוון מ-vvv לכל צומת בגרף.

הגדרה 11 (עץ מכוון)

עץ מכוון הוא גרף מכוון שיש לו שורש וגרף התשתית שלו הוא עץ (קשיר וחסר מעגלים)

​עוד עצים בקומבי - 1.png
מכיוון שקיום שורש גורר שגרף התשתית הינו קשיר, ניתן לנסח הגדרה שקולה:

משפט (הגדרה שקולה)

עץ מכוון הוא גרף מכוון שיש לו שורש וגרף התשתית שלו חסר מעגלים.

הוכחה: ברור.

משפט

יהי גרף מכוון GGG. אזי, הטענות הבאות שקולות:

  1. GGG הוא עץ מכוון
  2. ל-GGG יש שורש rrr עם din(r)=0d_{in}(r)=0din​(r)=0 ועבור כל צומת uuu אחר din(u)=1d_{in}(u)=1din​(u)=1.

הוכחה:
:(1)  ⟹  (2):(1)\implies (2):(1)⟹(2) נתון כי GGG הוא עץ מכוון ונדרש להוכיח כי ל-GGG יש שורש עם din(r)=0d_{in}(r)=0din​(r)=0 ועבור כל צומת uuu אחר din(u)=1d_{in}(u)=1din​(u)=1.
נניח בשלילה כי din(r)>0d_{in}(r)>0din​(r)>0, כלומר, קיימת קשת v→erv \xrightarrow{e}rve​r. כיוון ש-rrr שורש, קיים מסלול מכוון PPP מ-rrr ל-vvv.
קיבלנו את המעגל המכוון PePePe ב-GGG.
לכן, גם קיים מעגל פשוט ב-GGG ולכןף קיים מעגל פשוט בגרף התשתיות בסתירה לכך שגרף התשתית של GGG חסר מעגלים.
נניח בשלילה כי din(u)≠1d_{in}(u)\neq 1din​(u)=1 ונחלק למקרים:

  • אם din(u)=0d_{in}(u)=0din​(u)=0 לא ייתכן מסלול מ-rrr אל uuu בסתירה לכך שב-GGG יש שורש.
  • עבור din(u)≥2d_{in}(u)\geq 2din​(u)≥2 ואז קיימות קשתות u1→e1uu_{1}\xrightarrow{e_{1}}uu1​e1​​u ו-u2→e2uu_{2}\xrightarrow{e_{2}}uu2​e2​​u.
    קיים מסלול מכוון P1P_{1}P1​ מ-rrr אל u1u_{1}u1​ ומסלול מכוון P2P_{2}P2​ מ-rrr אל u2u_{2}u2​. ⟸ קיבלנו שני מסלולים שונים ב-GGG מ-rrr אל uuu.
    אם מישהו מהמסלולים אינו פשוט אז הוא מכיל מעגל פשוט ולכן גם גרף התשתית יכיל אז מעגל פשוט בסתירה לכך שלא קיימים מעגלים פשוטים.
    אחרת, בגרף התשתית קיימים שני מסלולים פשוטים שונים מ-rrr אל uuu בסתירה לכך שגרף התשתית הוא עץ.

:(2)  ⟹  (1):(2)\implies(1):(2)⟹(1) נתון כי ל-GGG יש שורש rrr עם din(r)=0d_{in}(r)=0din​(r)=0 ועבור כל צומת uuu אחר din(u)=1d_{in}(u)=1din​(u)=1 וצ"ל כי GGG הוא עץ מכוון.
נניח בשלילה כי יש מעגל פשוט בגרף התשתית:

v01v1e2v2e3⋯eℓ−1vℓ−1eℓv0v_{0}\edge{1}v_{1}\edge{e_{2}}v_{2}\edge{e_{3}}\cdots\edge{e_{\ell-1}}v_{\ell-1}\edge{e_{\ell}}v_{0}v0​1​v1​e2​​v2​e3​​⋯eℓ−1​​vℓ−1​eℓ​​v0​

אם ב-GGG כיוון הקשת הראשונה הוא v0→e1v1v_{0}\xrightarrow{e_{1}}v_{1}v0​e1​​v1​ אזי din(v2)=1d_{in}(v_{2})=1din​(v2​)=1 וגם din(v1)=1d_{in}(v_{1})=1din​(v1​)=1 ולכן, קיים ב-GGG המעגל המכוון v0→e1v1→e2⋯→eℓ−1vℓ−1→eℓv0v_{0}\xrightarrow{e_{1}}v_{1}\xrightarrow{e_{2}}\cdots\xrightarrow{e_{\ell-1}}v_{\ell-1}\xrightarrow{e_{\ell}}v_{0}v0​e1​​v1​e2​​⋯eℓ−1​​vℓ−1​eℓ​​v0​ אחרת קיים מעגל בכיוון ההפוך.
מכך ש-din(r)=0d_{in}(r)=0din​(r)=0 נובע כי rrr אינו על המעגל, אך מהיותו שורש, קיים מסלול PPP מ-rrr אל המעגל.
הצומת הראשון viv_{i}vi​ של המעגל על PPP מקיים din(vi)≥2d_{in}(v_{i})\geq 2din​(vi​)≥2 בסתירה לכך שלכל צומת u≠ru\neq ru=r מתקיים din(u)=1d_{in}(u)=1din​(u)=1.
∎

משפט

יהי GGG גרף מכוון וסופי. אזי, הטענות הבאות שקולות:

  1. GGG הוא עץ מכוון.
  2. גרף התשתית של GGG חסר מעגלים, יש ב-GGG צומת vvv עם din(v)=0d_{in}(v)=0din​(v)=0 ועבור כל צומת uuu אחר din(u)=1d_{in}(u)=1din​(u)=1.

הוכחה:
הכיוון (1)  ⟹  (2)(1)\implies(2)(1)⟹(2) מיידי.
:(2)  ⟹  (1):(2)\implies(1):(2)⟹(1) יהי u≠vu\neq vu=v צומת. מכך שדרגת הכניסה של כל צומת השונה מ-vvv היא 1 נקבל כי din(u)=1d_{in}(u)=1din​(u)=1.
נלך מ-uuu "אחורה" (נגד כיוון הקשתות) כל עוד קיימת קשת נכנסת לצומת. נראה כי התהליך סופי והוא מסתיים בהכרח ב-vvv.
לולא היה מסתיים, כי אז מסופיות הגרף היו קיימים i≠ji\neq ji=j כך ש-ui=uju_{i}=u_{j}ui​=uj​ אך אז בגרף התשתית היה מעגל פשוט בסתירה לכך שגרף התשתית של GGG חסר מעגלים.
לכן התהליך מסתיים, וצומת הסיום חייב להיות vvv כי רק לו יש דרגת כניסה 000.
מכאן שיש מסלול מ-vvv אל כל צומת ב-GGG ולכן vvv הוא שורש ב-GGG.
∎

עץ פורש

הגדרה 12 (עץ פורש)

עץ HHH הוא פורש של גרף(מכוון או לא מכוון) GGG אם HHH הוא:

  1. תת גרף של GGG.
  2. עץ.
  3. מכיל את כל צמתי GGG.
משפט

לכל גרף לא מכוון קשיר קיים עץ פורש.

הוכחה:
יהי G=(V,E)G=(V,E)G=(V,E).
נוכיח באמצעות אלגוריתם: כל עוד קיים בגרף מעגל, נמחק קשת אחת מהמעגל.

  1. סיום התהליך: התהליך חייב להסתיים, כי הגרף סופי, ולכן מספר הקשתות סופי.
    בכל צעד מורידים קשת אחת ולכן נעצור לאחר ∣E∣|E|∣E∣ צעדים לכל היותר.
  2. הפלט בסוף התהליך: נוכיח כי הגרף המתקבל קשיר וחסר מעגלים ולכן הוא עץ לא מכוון לפי הגדרה.
    חסר מעגלים: מהגדרת התהליך, בגרף המתקבל בסיומו אין מעגלים.
    קשיר: לאורך כל צעדי התהליך השמורה הבאה מתקיימת: הגרף קשיר. זאת מפאת היות התהליך איטרטיבי.
    נוכיח זאת באמצעות אינדוקציה:
    בסיס: נתון כי הגרף ההתחלתי הינו קשיר.
    צעד: נניח כי כל הצעדים עד הצעד kkk השאירו את הגרף קשיר.
    בצעד ה-k+1k+1k+1 אנו מורידים קשת ממעגל והורדת קשת ממגעל אינה פוגעת בקשירות: נניח כי מסלול בין שני צמתים בגרף עובר בקשת uvu\edge{}vu​v אותה הסרנו, נוכל להלחיף את הקשת בתת המסלול v…uv \edge{}\dots \edge{}uv​…​u שנמצא על המעגל מצידו השני. לכן, אם לפני הסרת הקשת היה מסלול בין כל זוג צמתים בגרף, הדבר מתקיים גם לאחר הסרתה.
    ∎
משפט

לכל גרף מכוון עם שורש rrr יש עץ פורש עם שורש rrr.

רעיון ההוכחה: נגדיר לכל צומת vvv את מרחקו dist(v)dist(v)dist(v) מהשורש rrr. כלומר, dist(v)dist(v)dist(v) הוא אורך המסלול הקצר ביותר מ-rrr אל vvv.
לכל צומת v≠rv\neq rv=r נבחר קשת u→evu \xrightarrow{e}vue​v המקיימת dist(u)=dist(v)−1dist(u)=dist(v)-1dist(u)=dist(v)−1 ואותה נצרף לעת הפורש HHH.

  • מדוע קיימת קשת כזו לכל v≠rv\neq rv=r?
  • מדוע rrr הוא שורש גם בגרף HHH?
  • מדוע HHH חסר מעגלים?
הגדרה 13 (סדר טופולוגי בעץ)

בהינתן עץ מכוון G=(V,E)G=(V,E)G=(V,E) על קבוצת הצמתים V={1,2,…,n}V=\left\{ 1,2,\dots,n \right\}V={1,2,…,n}, נאמר שהצמתים הם בסדר טופולוגי עולה אם לכל קשת u→  e  vu\arrowedge{e}vue​v מתקיים u<vu<vu<v.

משפט

בכל עץ מכוון ניתן למספר את הצמתים כך שיהיו בסדר טופולוגי.

הוכחה: תרגיל באינדוקציה :)

מטריצת השכנויות ומטריצת ה-in−degreein-degreein−degree

הגדרה 14 (מטריצת השכנויות)

יהי G=(V,E)G=(V,E)G=(V,E) גרף מכוון.
מטריצת השכנויות היא מטריצה AAA מסדר ∣V∣×∣V∣|V|\times |V|∣V∣×∣V∣ כאשר AuvA_{uv}Auv​ הוא מספר הקשתות מצומת uuu אל צומת vvv.

דוגמה

עבור הגרף:
​קומבי קומבי קומבי קומבי - הרצאה אחרונה.svg
תהיה המטריצה:

A=(011102101)A=\begin{pmatrix} 0 & 1 & 1 \\ 1 & 0 & 2 \\ 1 & 0 & 1 \end{pmatrix}A=​011​100​121​​
הערה

אם הגרף אינו מכוון, מטריצת השכנויות תהיה סימטרית.

הערה

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

הגדרה 15 (מטריצת ה-in−degreein-degreein−degree)

יהי G=(V,E)G=(V,E)G=(V,E) גרף מכוון.
מטריצת ה-in-degree היא מטריצה אלכסונית Δ\DeltaΔ מסדר ∣V∣×∣V∣|V|\times |V|∣V∣×∣V∣ שאיברי האלכסון הם דרגות הכניסה של הצמתים Δuu=din(u)\Delta_{uu}=d_{in}(u)Δuu​=din​(u).

דוגמה

עבור הגרף מהדוגמה הקודמת:

Δ=(200010004)\Delta=\begin{pmatrix} 2 & 0 & 0 \\ 0 & 1 & 0 \\ 0 & 0 & 4 \end{pmatrix}Δ=​200​010​004​​
הגדרה 16 (מטריצת הלפלסיאן)

יהי G=(V,E)G=(V,E)G=(V,E) גרך מכוון.
מטריצת ה-in-degree Laplacian היא המטריצה L=Δ−AL=\Delta-AL=Δ−A.

Luv={din(u)−Auu,u=v−Auvu≠vL_{uv}=\begin{cases}d_{in}(u)-A_{uu}, & u=v \\ -A_{uv} & u\neq v\end{cases}Luv​={din​(u)−Auu​,−Auv​​u=vu=v​
דוגמה

עבור אותו הגרף ממקודם:

L=(2−1−1−11−2−103)L=\begin{pmatrix} 2 & -1 & -1 \\ -1 & 1 & -2 \\ -1 & 0 & 3 \end{pmatrix}L=​2−1−1​−110​−1−23​​
הערה

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

הגדרה 17 (מינורים)

נסמן ב-L(r)L^{(r)}L(r) את תת המטריצה המתקבלת מהסרת השורה והעמודה ה-rrr-יות מ-LLL.
המינורים של LLL הן הדטרמיננטות של תת המטריצות L(r)L^{(r)}L(r).

דוגמה

עם אותה מטריצה ממקודם נקבל:

L(1)=(1−203)L(2)=(2−1−13)L(3)=(2−1−11)L^{(1)}=\begin{pmatrix} 1 & -2 \\ 0 & 3 \end{pmatrix} \qquad L^{(2)}=\begin{pmatrix} 2 & -1 \\ -1 & 3 \end{pmatrix} \qquad L^{(3)}=\begin{pmatrix} 2 & -1 \\ -1 & 1 \end{pmatrix}L(1)=(10​−23​)L(2)=(2−1​−13​)L(3)=(2−1​−11​) ∣L(1)∣=3∣L(2)∣=5∣L(3)∣=1|L^{(1)}|=3 \qquad |L^{(2)}|=5 \qquad |L^{(3)}|=1∣L(1)∣=3∣L(2)∣=5∣L(3)∣=1
משפט (קירכהוף)

מספר העצים הפורשים עם שורש rrr בגרף מכוון GGG הינו det⁡(L(r))\det(L^{(r)})det(L(r)).

על מנת להוכיח את המשפט נדרש להוכיח כמה למות.

למה

עבור עץ מכוון עם שורש rrr מתקיים det⁡(L(r))=1\det(L^{(r)})=1det(L(r))=1.

הוכחה:
בעץ אין מעגלים עצמיים ולכן:

Luu=Δuu=din(u)L_{uu}=\Delta_{uu}=d_{in}(u)Luu​=Δuu​=din​(u)

GGG הוא עץ מכוון ולכן, לפי משפט, ל-GGG יש שורש rrr בו מתקיים din(r)=0d_{in}(r)=0din​(r)=0 ולכל צומת uuu אחרת din(u)=1d_{in}(u)=1din​(u)=1 ולכן, Luu=1L_{uu}=1Luu​=1 עבור u≠ru\neq ru=r.
מכיוון ש-din(r)=0d_{in}(r)=0din​(r)=0 אזי עמודה rrr ב-AAA היא עמודת אפסים.
כל עמודה u≠ru\neq ru=r ב-AAA מכילה איבר אחד שונה מ-000 מחוץ לאלכסון ואיבר זה שווה ל-111 ולכן, עמודה rrr ב-LLL היא עמודת אפסים וכל עמודה u≠ru\neq ru=r ב-LLL מכילה איבר אחד שונה מ-000 מחוץ לאלכסון ואיבר זה שווה ל-111.
החלפת שמות הצמתים u↔u′u \leftrightarrow u'u↔u′ גורמת להחלפת שורות u↔u′u \leftrightarrow u'u↔u′ וכן עמודות u↔u′u\leftrightarrow u'u↔u′ ב-LLL ולכן ערך הדטרמיננטה אינו משתנה.
לכן, ניתן להניח כי צמתי הגרף הם בסדר טופולוגי עולה שכן לכל קשת u→  e  vu\arrowedge{e}vue​v מתקיים u<vu<vu<v.
המטריצה L(r)L^{(r)}L(r) המתקבלת היא משולשת עליונה בה כל איברי האלכסון שווים ל-111. לפי משפט, הדטרמיננה של מטריצה משולשת הוא מכפלת איברי האלכסון שלה ולכן ∣L(r)∣=1|L^{(r)}|=1∣L(r)∣=1.
∎

מסקנה

משפט קירכהוף מתקיים עבור עץ מכוון עם שורש rrr וצומת rrr.

למה

יהי GGG גרף מכוון המקיים עבור צומת rrr בו את שני התנאים:

din(u)=1  לכל צומת u אחר∧din(r)=0d_{in}(u)=1 \;\R{\text{לכל צומת u אחר}} \land d_{in}(r)=0din​(u)=1לכל צומת u אחר∧din​(r)=0

אם GGG איננו עץ מכוון, אזי det⁡(L(r))=0\det(L^{(r)})=0det(L(r))=0.

הוכחה:
אם יש מעגל עצמי בצומת u≠ru\neq ru=r אזי עמודה uuu ב-LLL היא עמודת אפסים ולכן ∣L(r)∣=0|L^{(r)}|=0∣L(r)∣=0.
נניח מכאן ואילך כי אין מעגלים עצמיים.

כיוון ש-GGG איננו עץ מכוון, לפי משפט, GGG אינו חסר מעגלים ולכן גרף התשתיות מכיל מעגל פשוט.

v0e1v1e2v2e3⋯eℓ−1vℓ−1eℓv0v_{0}\edge{e_{1}}v_{1}\edge{e_{2}}v_{2}\edge{e_{3}}\cdots \edge{e_{\ell-1}}v_{\ell-1}\edge{e_{\ell}}v_{0}v0​e1​​v1​e2​​v2​e3​​⋯eℓ−1​​vℓ−1​eℓ​​v0​

אם ב-GGG כיוון הקשת הראשונה הוא v0→  e1  v1v_{0}\arrowedge{e_{1}}v_{1}v0​e1​​v1​ אזי:

din(v1)=1  ⟹  v1→  e2  v2∧din(v2)=1  ⟹  v2→  e1  v3d_{in}(v_{1})=1\implies v_{1}\arrowedge{e_{2}}v_{2} \land d_{in}(v_{2})=1\implies v_{2}\arrowedge{e_{1}}v_{3}din​(v1​)=1⟹v1​e2​​v2​∧din​(v2​)=1⟹v2​e1​​v3​

ולכן קיים ב-GGG המעגל המכוון:

v0→  e1  v1→  e2  v2→  e3  ⋯→  eℓ−1  vℓ−1→  eℓ  v0v_{0}\arrowedge{e_{1}}v_{1}\arrowedge{e_{2}}v_{2}\arrowedge{e_{3}}\cdots \arrowedge{e_{\ell-1}}v_{\ell-1}\arrowedge{e_{\ell}}v_{0}v0​e1​​v1​e2​​v2​e3​​⋯eℓ−1​​vℓ−1​eℓ​​v0​

אחרת, קיים מעגל בכיוון ההפוך.
din(r)=0d_{in}(r)=0din​(r)=0 ולכן rrr אינו על המעגל.
עבור כל צומת אחר uuu מתקיים din(u)=1d_{in}(u)=1din​(u)=1 ולכן אין קשתות נכנסות אל המעגל.

נשנה את שמות הצמתים vi↔i+1v_{i}\leftrightarrow i+1vi​↔i+1. סכום ℓ\ellℓ העמודות הראשונות ב-LLL הוא 000. כלומר, עמודות אלו ת"ל והן ת"ל גם ב-L(r)L^{(r)}L(r).
לכן, ∣L(r)∣=0|L^{(r)}|=0∣L(r)∣=0.
∎

הוכחה למשפט קירכהוף:
נוכיח באינדוקציה על מספר הקשתות על מספר הקשתות ∣E∣|E|∣E∣ עבור מספר צמתים ∣V∣|V|∣V∣ נתון.
בסיס: ∣E∣≤∣V∣−1|E|\leq |V|-1∣E∣≤∣V∣−1.
לפי משפט, ∑v∈Vdin(v)=∣E∣\sum_{v \in V}d_{in}(v)=|E|∑v∈V​din​(v)=∣E∣ ולכן מתקיים אחד התנאים הבאים:

  • קיים ב-GGG צומת אחד לפחות v≠rv \neq rv=r כך ש-din(v)=0d_{in}(v)=0din​(v)=0.
    במקרה זה, vvv אינו נגיש מ-rrr ולכן אין עצים פורשים ששורשם rrr.
    עמודה vvv ב-LLL הינה עמודת אפסים ולכן det⁡(L(r))=0\det(L^{(r)})=0det(L(r))=0.
  • din(r)=0d_{in}(r)=0din​(r)=0 ועבור כל צומת uuu אחר din(u)=1d_{in}(u)=1din​(u)=1.
    נחלק למקרים:
    • אם rrr הוא שורש, אזי, לפי משפט, GGG הוא עץ מכוון עם שורש rrr וככזה יש ב-GGG עץ פורש אחד.
      לכן, לפי למה ממקודם, det⁡(L(r))=1\det(L^{(r)})=1det(L(r))=1.
    • אם rrr איננו שורש ב-GGG, בפרט אין עצים פורשים ששורשם rrr ולכן, לפי משפט, GGG איננו עץ מכוון ולכן, לפי למה ממקום, det⁡(L(r))=0\det(L^{(r)})=0det(L(r))=0.

צעד: יהי ∣E∣≥∣V∣|E|\geq |V|∣E∣≥∣V∣ ונניח נכונות המשפט עבור כל ∣E′∣<∣E∣|E'|< |E|∣E′∣<∣E∣.
נניח כי ב-GGG אין לולאות עצמיות, כיוון שעץ פורש לעולם לא יכיל אותם ו-LLL אינו תלוי בהם.
לפי משפט, ∑v∈Vdin(v)=∣E∣\sum_{v \in V}d_{in}(v)=|E|∑v∈V​din​(v)=∣E∣ ולכן מתקיים אחד התנאים הבאים:

  • din(r)>0d_{in}(r)>0din​(r)>0, כלומר, קיימת קשת אחת לפחות eee הנכנסת אל rrr.
    אף עץ פורש עם שורש rrr לא יכיל את הקשת eee.
    יהי G~=(V,E~)\tilde{G}=(V,\tilde{E})G~=(V,E~) תת-הגרף של GGG המתקבל מהסרת הקשת eee.
    מספר העצים הפורשים עם שורש rrr זהה ב-GGG וב-G~\tilde{G}G~.
    ∣E~∣<∣E∣|\tilde{E}|<|E|∣E~∣<∣E∣ ולכן חלה על G~\tilde{G}G~ הנחת האינדוקציה.
    המטריצות L~,L\tilde{L},LL~,L שונות רק בעמודה rrr ולכן L~(r)=L(r)\tilde{L}^{(r)}=L^{(r)}L~(r)=L(r).
    det⁡(L(r))=det⁡(L~(r))=↓הנחת האינדוקציהמספר העצים הפורשיםr  עם שורש  G~  של=מספר העצים הפורשיםr  עם שורש  G  של\det(L^{(r)})=\det(\tilde{L}^{(r)})\underset{\begin{matrix} \downarrow \\ \R{\text{הנחת האינדוקציה}} \end{matrix}}{=}\boxed{\begin{matrix} \R{\text{מספר העצים הפורשים}} \\ r\;\R{\text{עם שורש}}\; \tilde{G}\;\R{\text{של}} \end{matrix}}=\boxed{\begin{matrix} \R{\text{מספר העצים הפורשים}} \\ r\;\R{\text{עם שורש}}\; {G}\;\R{\text{של}} \end{matrix}}det(L(r))=det(L~(r))↓הנחת האינדוקציה​=​מספר העצים הפורשיםrעם שורשG~של​​=מספר העצים הפורשיםrעם שורשGשל​​
  • קיים v≠rv\neq rv=r כך ש-din(v)>1d_{in}(v)>1din​(v)>1.
    נבחר קשת מסוימת eee נכנסת אל vvv ונגדיר גרפים G0G_{0}G0​ ו-G1G_{1}G1​.
    נסמן ב-N1,N0,NN_{1},N_{0},NN1​,N0​,N את מספר העצים המכוונים הפורשים של הגרפים G1,G0,GG_{1},G_{0},GG1​,G0​,G עם שורש rrr.
    ניתן לחלק את קבוצת העצים הפורשים של GGG עם שורש rrr לשתי תת קבוצות זרות:
    • הקשת eee איננה בעץ הפורש.
    • הקשת eee שייכת לעץ הפורש, ואז העץ הפורש אינו מכיל אף קשת אחרת הנכנסת אל vvv.
      לכן מתקיים det⁡(L(r))=drt(L0(r))+det⁡(L1(r))\det(L^{(r)})=drt(L_{0}^{(r)})+\det(L_{1}^{(r)})det(L(r))=drt(L0(r)​)+det(L1(r)​) ולכן, מהנחת האינדוקציה:
      det⁡(L(r))=det⁡(L0(r))+det⁡(L1(r1))=N0+N1=N\det(L^{(r)})=\det(L_{0}^{(r)})+\det(L_{1}^{(r_{1})})=N_{0}+N_{1}=Ndet(L(r))=det(L0(r)​)+det(L1(r1​)​)=N0​+N1​=N

ולכן, מספר העצים הפורשים עם שורש rrr בגרף מכוון GGG הינו det⁡(L(r))\det(L^{(r)})det(L(r)).
∎

עץ פורש בגרף לא מכוון

מטריצת השכנויות מוגדרת זהה לממקודם רק שפה היא בהכרח תהיה סימטרית שכן יש רק ddd ולא din,doutd_{in},d_{out}din​,dout​.

הגדרה 18 (מטריצת ה-degreedegreedegree)

יהי G=(V,E)G=(V,E)G=(V,E) גרף מכוון.
מטריצת ה-degree היא מטריצה אלכסונית Δ\DeltaΔ מסדר ∣V∣×∣V∣|V|\times |V|∣V∣×∣V∣ שאיברי האלכסון הם דרגות הכניסה של הצמתים Δuu=d(u)\Delta_{uu}=d(u)Δuu​=d(u).

הגדרה 19 (מטריצת הלפלסיאן)

יהי G=(V,E)G=(V,E)G=(V,E) גרך מכוון.
מטריצת ה-in-degree Laplacian היא המטריצה L=Δ−AL=\Delta-AL=Δ−A.

Luv={d(u)−Auu,u=v−Auvu≠vL_{uv}=\begin{cases}d(u)-A_{uu}, & u=v \\ -A_{uv} & u\neq v\end{cases}Luv​={d(u)−Auu​,−Auv​​u=vu=v​
משפט (קירכהוף לגרף לא מכוון)

מספר העצים הפורשים בגרף לא מכוון G=(V,E)G=(V,E)G=(V,E) הינו det⁡(L(r))\det(L^{(r)})det(L(r)) לכל r∈Vr \in Vr∈V.

הוכחה:
נבנה גרף מכוון G⃗=(V,E⃗)\vec{G}=(V,\vec{E})G=(V,E) ע"י החלפת כל קשת ב-GGG לזוג קשתות אנטי-מקבילות.
מתקיים כי A⃗=A,Δ⃗=Δ,L⃗=L\vec{A}=A,\vec{\Delta}=\Delta,\vec{L}=LA=A,Δ=Δ,L=L ולכן לכל r∈Vr \in Vr∈V מתקיים:

det⁡(L⃗(r))=det⁡(L(r))\det(\vec{L}^{(r)})=\det(L^{(r)})det(L(r))=det(L(r))

עבור כל עץ פורש H⃗\vec{H}H של G⃗\vec{G}G עם שורש rrr, גרף התשתיות שלו הוא עץ פורש HHH של GGG.
ההתאמה H⃗→H\vec{H}\to HH→H היא הפיכה, כלומר, חח"ע ועל (תרגיל) ולכן, לפי משפט קירהכוף מתקיים כי מספר העצים הפורשים ב-G⃗\vec{G}G המתחילים ב-rrr הינו det⁡(L(r))\det(L^{(r)})det(L(r)).
לכן, מספר העצים הפורשים בגרף לא מכוון G=(V,E)G=(V,E)G=(V,E) הינו det⁡(L(r))\det(L^{(r)})det(L(r)) לכל r∈Vr \in Vr∈V.
∎

הגדרה 20 (גרף מלא)

גרף לא מכוון פשוט שבו כל שני צמתים שונים מחוברים יקרא גרף מלא ונסמנו KnK_{n}Kn​.

הערה

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