Tato stránka obsahuje moje poznámky z přednášky Martina Kouteckého z akademického roku 2020/2021 (MFF UK). Pokud by byla někde chyba/nejasnost, nebo byste rádi něco přidali, tak stránku můžete upravit pull requestem (případně mi dejte vědět na mail).
pro dolní mez postupujeme podobně, ale je potřeba indukční krok dokazovat pro
n→n+1, místo n−1→n.
Věta (Stirlingova formule):n!≅2πn(en)n
Odhady binomických koeficientů
(👀): pro malé k<<n…(kn)=(n−k)!k!n!=k!n⋅(n−1)⋅…⋅(n−k+1)≤nk
Věta (hodně meh odhad):n+12n≤(⌊n/2⌋n)≤2n
Důkaz:
součet všech čísel v řádku je 2n, tak jistě to největší nebude větší
největší sčítanec je rovněž alespoň tak velký jako průměrný
Věta (nice odhad):2m22m≤(m2m)≤2m22m
Důkaz: Nejprve jedno kouzlo:
P=2⋅4⋅6⋅…⋅2m1⋅3⋅5⋅…⋅(2m−1)=2⋅4⋅6⋅…⋅2m1⋅3⋅5⋅…⋅(2m−1)2⋅4⋅6⋅…⋅2m2⋅4⋅6⋅…⋅2m=22m(m!)2(2m)!=22m(m2m)
Chceme tedy:
2m1≤P≤2m1
Pak ještě druhé kouzlo:
(1−221)…(1−(2m)21)=(2⋅21⋅3)(4⋅43⋅5)…((2m)2(2m−1)(2m+1))=P2(2m+1)<1//soucˇin veˇcıˊ<1
Máme tedy:
P2P<2m+11<2m1<2m1
Druhá strana analogicky (uvažujeme (1−321)(1−521)…=(322⋅4)(524⋅6)…=2(2m)P21).
2. přednáška
Náhodné procházky
Definice (náhodná procházka): Náhodný proces, v každém kroku se panáček začínající v bodu 0 posune ze své aktuální pozice doprava nebo doleva.
kde bude po n krocích?
limn→∞… že se po n krocích vrátil (někdy v průběhu) do počátku?
limn→∞…E[#naˊvratu˚ do pocˇaˊtku]?
dokážeme, že jde k nekonečnu
Zadefinujeme si náhodnou veličinu X=IS2+IS4+…+IS2n:
IS2n… indikátor, že nastal jev „po 2n krocích jsem v počátku“
E[X]=E[#naˊvratu˚ do pocˇaˊtku].
Pr[po 2n krocıˊch jsem v pocˇaˊtku]=(n2n)/22n.
nahoře jsou možnosti vyrovnaných počtů kroků doprava/doleva
dole jsou všechny scénáře pro 2n kroků
22n(n2n)≥22n2n22n=2n1
E[X]=E[i=1∑∞IS2i]=i=1∑∞E[IS2i]=i=1∑∞Pr[IS2i]≥i=1∑∞2i1//linearita strˇednıˊ hodnoty//strˇednıˊ hodnota indikaˊtoru je pravdeˇpodobnost//pouzˇitıˊ odhadu vyˊsˇe; diverguje
zajímavost: ve 2D to také platí, ale ve 3D už ne (konverguje k nějakému konstantnímu číslu)!
Generující funkce
Definice (mocninná řada): je nekonečná řada tvaru a(x)=a0+a1x1+a2x2+…, kde a0,a1…∈R.
Příklad:a0=a1=…=1↦1+x+x2+…
pro ∣x∣<1 řada konverguje k 1−x1, můžeme tedy říct, že (1,1,…)≈1−x1
Tvrzení:(a0,a1,a2,…) reálná čísla. Předpoklad: pro nějaké K t. ž. ∣an∣≤Kn. Poté řada a(x) pro každé x∈(−K1,K1) konverguje (dává smysl). Funkce a(x) je navíc jednoznačně určena hodnotami na okolí 0.
Definice (vytvořující/generující funkce): nechť (a0,a1,…) je posloupnost reálných čísel. Vytvořující funkce této posloupnosti je mocninná řada a(x)=∑i=0∞aixi.
operace
řada
úprava
součet
a0+b0,a1+b1,a2+b2,…
a(x)+b(x)
násobek
αa0,αa1,αa2,…
αa(x)
posun doprava
0,a0,a1,…
xa(x)
posun doleva
a1,a2,a3,…
xa(x)−a0
substituce αx
α0a0,α1a1,α2a2,…
a(αx)
substituce xn
a0,0,…n−1,0,a1,0,…n−1,0,a2,…
a(xn)
derivace
a1,2a2,3a3,…
a′(x)
integrování
0,a1,a2/2,a3/3,…
∫0xa(t)dt
konvoluce
an=∑k=0nak⋅bn−k
a(x)⋅b(x)
Zde je několik příkladů řad a výrazů, kterým odpovídají (hodí se v důkazech): n=0∑∞xnn=0∑∞(ax)nn=0∑∞(x2)nn=0∑∞(−1)nxn=(1,1,1,1,…)=(a0,a1,a2,a3,…)=(1,0,1,0,…)=(1,−1,1,−1…)=1−x1=1−ax1=1−x21=1+x1
Zobecněná binomická věta
Chceme binomickou větu zobecnit i pro reálné exponenty. K tomu potřebujeme definici kombinačního čísla, která se s reálnými kamarádí. Uděláme následující:
r∈R,k∈N(kr)=k!r⋅(r−1)⋅(r−2)⋅…⋅(r−k+1)
pro r∈N se shoduje s tím, co už známe
pro r∈R opět máme klesající součin k prvků, ale hodnoty jsou reálné
Věta (ZBV):nechť x,y,r∈R a ∣x∣>∣y∣ (kvůli konvergenci). Pak ZBV je následující výraz: (x+y)r=k=0∑∞(kr)xr−kyk
Příklad:
pro y=1 (a prohozením x a y) dostáváme (1+x)r=((0r),(1r),(2r),…)
speciálně pro r=21 dostáváme 1+x=1+21x−81x2+161x3+…
Příklad: V krabici je 30 červených, 40 žlutých a 50 zelených míčků. Kolika způsoby lze vybrat 70?
(1+x+…+x30)(1+x+…+x40)(1+x+…+x50)==1−x1−x311−x1−x411−x1−x51//posuneme o 31 mıˊst a odecˇteme=(1−x)31(1−x31)(1−x41)(1−x51)=((22)+(23)x+(24)x2+…)(1−x31)(1−x41)(1−x51)=1+…+[(272)−(272−31)−(272−41)−(272−51)]x70+…=1061
Kde poslední rovnost platí, protože:
z posledních 3 závorek si vybereme 1 a z první závorky koeficient u 70
ze druhé x31 a z první koeficient u 72−31
analogicky pro 41 a 51 ze třetí a čtvrté
3. přednáška
Fibonacciho čísla
Definice:F0=0,F1=1,Fn=Fn−1+Fn−2,∀n≥2
Fibonacciho mocninnou řadou rozumíme F(x)=F0+F1x+F2x2+F3x3+…
Funkce/pozice
0
1
2
3
4
xF(x)
0
F0
F1
F2
F3
x2F(x)
0
0
F0
F1
F2
x
0
1
0
0
0
⇓
⇓
⇓
⇓
⇓
F(x)
F0
F1
F2
F3
F4
Z funkcí výše vidíme, že F(x)=x+xF(x)+x2F(x). Algebraickou úpravou dostáváme:
F(x)=1−x−x2x=(1−21+5x)(1−21−5x)x//algebra=1−21+5x51−1−21−5x51//parciaˊlnıˊ zlomky =51(1−21+5x1−1−21−5x1)//tvary 1−ax±1
Pro daný koeficient vytvořující funkce tedy máme:
Fn=51(21+5)n−jde k 0(21−5)n=⌊51(21+5)n⌋
Catalanova čísla
bn= počet binárních zakořeněných stromů na n vrcholech
bn=∑k=0n−1bk⋅bn−k−1, rekurzíme se na obě části
∗: divergencí myslíme v rámci toho tvrzení o slušně vychovaných vytvořujících funkcí: funkce 2x1+1−4x na okolí 0 konverguje zleva a zprava k jiným hodnotám
Konečné projektivní roviny
První axiom zajišťuje netrivialitu. Není těžké si rozmyslet, že lze nahradit
axiomem “Existují alespoň 2 různé přímky, z nichž každá má alespoň 3 body”.
Bez některé z těchto podmínek by definici vyhovovala např. libovolně velká
množina bodů s právě jednou přímkou, která by všechny body spojovala. Případně
by k tomuto schématu šel přidat ještě jeden bod, který by s každým dalším byl
spojen dvoubodovou přímkou.
Definice (KPR): Nechť X je konečná množina, P systém podmnožin množiny X. (X,P) je KPR pokud:
Existuje C⊆X,∣C∣=4 t. ž. ∀P∈P:∣P∩C∣≤2
„každá přímka obsahuje ≤2 body z C“
∀P,Q∈P,P=Q:∃!x∈X t. ž. P∩Q={x}
„každé dvě přímky se protínají právě v 1 bodě“
∀x,y∈X,x=y∃!P∈P t. ž. x,y∈P
„každé dva body určují právě 1 přímku“
x∈X je bod
P∈P je přímka
Příklad (Fanova rovina):
Počet bodů a přímek
Tvrzení: „v KPR mají všechny přímky stejný počet bodů“
Pomocné tvrzení:∀P,P′∈P∃z∈X, které neleží ani na jedné z nich.
Dokáže se přes to přes rozbor příkladů toho, jak vedou přímky přes C:
pokud nevedou přes všechny body z C, pak máme vyhráno
pokud vedou, tak existují dvě další přímky P1 a P2 vedoucí kolmo na naše přímky, jejich průnik je hledaný bod; původní přímky jím vést nemohou, protože pak by dvě přímky sdílely 2 body, což nelze
P1=P, protože pak by P
obsahovala alespoň 3 body z C. Podobně ostatní
nerovnosti.
4. přednáška
Důkaz původního tvrzení: pro přímky P, P′ a bod z (který nesdílí) budeme dělat bijekci tak, že budu tvořit přímky z bodu z na body z P, které budou rovněž protínat body z P′.
Definice (řád KPR): řádem (X,P) je n=∣P∣−1 pro jakoukoliv P∈P.
Tvrzení:nechť (X,P) je KPR řádu n. Pak:
každým bodem prochází n+1 přímek
∣X∣=n2+n+1
∣P∣=n2+n+1
Důkaz: {:.rightFloatBox}
Explicitní důkaz (3): Pro každý bod započítejme všechny přímky jím
procházející. Dostaneme tak (n2+n+1)(n+1) přímek. Ale
každou jsme započítali (n+1)-krát – jednou pro každý z
jejích bodů.
triviálně z definice.
viz. níže.
vychází z duality (viz. další kapitola).
Vezměme libovolné x∈X. Pak ∃P∈P:x∈P, protože vezmeme-li body a,b,c∈C, pak přímky ab a ac nemohou mít další společný bod než a (došlo by ke sporu s některým z axiomů).
Poté stačí uvážit následující obrázek a spočítat body/přímky. Další bod už neexistuje, protože kdyby existoval, tak by jím musela procházet přímka z x a ta by rovněž někde protínala P (a nesplňovala tak axiomy).
Bodů na obrázku je 1x+P0…Pn(n+1)nbody Pi, bez x=n2+n+1.
Dualita KPR
Definice (incidenční graf): nechť (X,S) je množinový systém (S⊆2X). Jeho incidenční graf je bipartitní graf (V=X∪S,E={(x,s)∈X×S∣x∈s})
Definice (duál grafu):(Y,T) je duál (X,S) pokud Y=S a T={{s∈S∣x∈s}∣x∈X}
(👀): incidenční graf (Y,T) je incidenční graf (X,S) s prohozením stran
Příklad (duál Fanovy roviny):
Věta:duál KPR je KPR.
„každá přímka obsahuje ≤2 body z C“
„každé dvě přímky se protínají právě v 1 bodě“
„každé dva body určují právě 1 přímku“
Důkaz: ověření axiomů v duálním světě:
∃C čtveřice přímek t. ž. ∀x∈X leží na nanejvýš 2 přímkách z C
stejné jako „žádné 3 přímky z C nemají společný bod“
zvolím C={ab,cd,ad,bc}, což funguje (zkusit si rozkreslit)
∀x,y∈X,x=y:∃!P∈P t. ž. jimi prochází právě 1 přímka
stejné jako původní axiom o přímkách
analogicky viz. ^
Důsledek:(X,P) je řádu n⟹∣P∣=n2+n+1
duál (Y,T) je duál (X,P), ten je stejného řádu a proto je i velikost ∣P∣=n2+n+1
Konstrukce KPR
Pro KPR řádu pk, p prvočíslo vezmu algebraické těleso K řádu n (příklad K=Z3).
T=K3∖(0,0,0)
na T zavedu ekvivalenci (x,y,t)∈T je ekvivalentní s (λx,λy,λt),∀λ∈K∖0
body X jsou ekvivalenční třídy nad T
reprezentanti: poslední nenulová složka je 1
trojice tvaru (x,y,1),(x,1,0),(1,0,0)
můžu si to dovolit, na reprezentanta převedu prostým pronásobením
počet je n2+n+1, což sedí
přímky P: pro každou (a,b,c)∈T definujeme přímku Pa,b,c jako množinu bodů (x,y,t) splňující ax+by+ct=0
∀(a,b,c)∈T,∀λ fixuji (x,y,t)∈T:ax+by+ct=0⟺λax+λby+λct=0⟹ přímky Pa,b,c=Pλa,λb,λc⟹∣P∣=∣X∣ a mohu si opět zvolit reprezentanty
„každá přímka obsahuje ≤2 body z C“
„každé dvě přímky se protínají právě v 1 bodě“
„každé dva body určují právě 1 přímku“
Ověření axiomů:
C={(1,0,0),(0,1,0),(0,0,1),(1,1,1)}
jsou po třech lineárně nezávislé, proto (1) platí
dvojice přímek (a1,b1,c1) a (a2,b2,c2) určují jeden bod:
jsou lineárně nezávislé a dimenze jádra následující matice je tedy 1 a určují jeden bod (až na α-násobek, což je definice bodů)
(a1a2b1b2c1c2)xyt=0
analogické, protože role (x,y,t) a (a,b,c) je identická
5. přednáška
Latinské čtverce
Definice (latinský čtverec): řádu n je tabulka n×n vyplněná čísly [n], kde v žádném řádku či sloupci se symboly neopakují.
(👀):A je LČ ⟹ po následujících operacích je stále:
permutace symbolů
permutace sloupců/řádků
Definice (ortogonalita): LČ A,B jsou ortogonální, pokud pro každou dvojici symbolů a,b∈[n] existují indexy i,j∈[n] t. ž. (A)i,j=a,(B)i,j=b.
když přeložím čtverce přes sebe, najdu políčko (i,j) obsahující dvojici (a,b)
(👀): počet dvojic symbolů n2= počtu políček
zobrazení je bijekce
∀(a,b) se objeví v OLČ právě jednou
(👀):A,B jsou NOLČ ⟹ pokud dělám operace z předchozího pozorování v obou čtvercích, tak ortogonalitu zachovávám, jinak nutně ne
Příklad: dvou navzájem ortogonálních latinských čtverců stupně n:
12342143341243211342243131244213
Lemma:pro daný řád n může existovat nejvýše n−1 NOLČ.
Důkaz: mějme maximální rodinu NOLČ L1,…,Lm a permutujme symboly tak, aby každý první řádek byl 1,2,3,…,n; uvažme symbol na pozici (2,1):
není 1, ta je na pozici (1,1)
není nějaké k∈{2,…,n} ve dvou čtvercích zároveň
Čtverců je dohromady tedy nejvýše n−1.
Pro libovolné dvě pozice (které se liší v řádku a sloupci) existuje čtverec, který na nich má stejné hodnoty.
Tvrzení:pokud L1,…,Ln−1 jsou NOLČ, potom ∀k,k′,k=k′,∀l,l′,l=l′∃i:(Li)k,l=(Li)k′,l′
Důkaz: zpermutujeme symboly tak, aby ∀i(Li)k,l=1:
n−1(1)?(1)?…(1)?
Ve sloupci s otazníkem nemůže symbol 1 být:
v řádku s (1)
ve dvou čtvercích na stejném místě
Mám tedy n−1 možností a musím přijít na n−1 různých řešení. Jedno z nich tedy vyjde na ?.
II,IV→ čtverec je latinský, na řádku se symbol někde vyskytuje
III,IV→ obdobně ^
IV,IV→
různé čtverce: přesně definice ortogonality (existuje dvojice souřadnic pro dvojici symbolů)
stejné čtverce: li
mezi:
r,s,li→I
r,mk,l→II
s,mk,l→III
li,mk,l→IV, symbol (Li)k,l určuje, o kterou přímku z li jde
mk,l,mk′,l′→
stejný řádek: II
stejný sloupec: III
jinak: IV a existuje, vycházíme z minulého pozorování
Důkaz (konstrukce ⇐):
dána KPR (X,P), hledáme L1,…,Ln−1
zvolíme libovolně přímku I={r,s,l1,…,ln−1}
∃n přímek protínající r – typ II a opět oindexuji body
analogicky ^, typ III, průsečíky jsou mk,l
pro bod li oindexuj přímky Q1,…,Qn; čtverec Li má 1 na indexech Q1, 2 na Q2, …
Jsou NOLČ, protože:
průsečíky IV s II,III jsou jednoznačné ⟹ čtverce jsou latinské
jednoznačnost průniku dvou přímek typu IV – dvě různé přímky typu IV odpovídající dvěma různým čtvercům dávají souřadnici, kde se má dvojice symbolů nachází ⟹ ortogonalita
6. přednáška
Počítání dvěma způsoby
Tvrzení:počet podmnožin X=(kX)=(k∣X∣)
Důkaz: nechť máme bublinu s tečkami, každá reprezentuje uspořádanou k-tici prvků z X.
počet teček =n(n−1)(n−2)…(n−k+1)=(n−k)!n! (vyberu 1. prvek, 2. prvek,…)
v každé buňce k-tic (ekvivalenční třídě přes příslušnou relaci) se stejnými prvky je k! prvků, počet buňek je to, co chceme (neuspořádaná k-tice)
(n−k)!n!(kX)=(kX)⋅k!=(n−k)!k!n!=(kn)
Věta (Spernerova):nechť (P,⊆) je částečné uspořádání, kde P je množinový systém. Nechť M je největší antiřetězec (∀M1,M2∈M,M1=M2:M1⊈M2∧M2⊈M1). Pak ∣M∣≤(⌈2n⌉n), kde n=∣X∣.
Tvrzení (pomocné):∑M∈M∣M∣!(n−∣M∣)!≤n!. Přes dvojí počítání počtu permutací na X:
počet permutací =n! (očividné)
počet permutací ≥∑M∈M∣M∣!(n−∣M∣)!, protože:
pro každé M dostanu jinou množinu permutaci
M určuje množinu permutací takovou, že nejprve permutuji M, potom X∖M:
udělal jsem o tomhle důkazu krátké video, pokud máte rádi grafičtější důkazy
pozor, počítám i izomorfní kostry!
Důkaz: počítání (T,r,cˇ), kde:
T je strom na n vrcholech
r kořen (hrany vedou do kořene, ne z něho)
cˇ očíslování hran (nějaké), cˇ:E↦[n−1]
#(T,r,cˇ)=κ(n)⋅n⋅(n−1)!
T je to, co hledáme
r volíme libovolně z n vrcholů
cˇ je prostě random očíslovaní na n−1 hranách
představa: přidávám hrany, až nakonec dojdu k (T,r,cˇ) a jsem v k-tém kroce:
(👀): nesmím vést hranu uvnitř komponenty (cykly)
(👀): musím vést hranu pouze z kořene dané komponenty (jeden vrchol by měl 2 rodiče)
zvolím, kam šipka povede… n způsobů
zvolím komponentu, ze které povede… n−k−1
máme n−k komponent a 1 je blokovaná
#(T,r,cˇ)κ(n)⋅n⋅(n−1)!κ(n)=k=0∏n−2pocˇet sˇipek je n−1n(n−k−1)=nn−1(n−1)!=nn−1(n−1)!=nn−2
7. přednáška
Toky
Definice (síť): je čtveřice (G,z,s,c), kde:
G je orientovaný graf, z,s∈V(G)
c:E↦R≥0
omezení shora kapacitami
Kirchhoff
Definice (tok): v síti je f:E↦R≥0, t. ž.:
∀e∈E(G) platí 0≤f(e)≤c(e)
∀v∈V(G),v∈{z,s} platí ∑f(x,v)=∑f(v,y)
To, co teče ven ze zdroje.
Definice (velikost toku):w(f)=∑f(z,x)−∑f(x,z)
Věta:existuje maximální tok.
Definice (pseudo): Nástin je takový, že množina toků je kompaktní a obsahuje tedy i maximum (nevznikne nám tam nějaká divnost).
Definice (řez): v síti je množina hran R⊆E(G) taková, že v grafu (V,E∖R) neexistuje cesta ze zdroje do stoku.
kapacita řezu je c(R)=∑e∈Rc(e), analogicky tok
S(A,B)={(x,y)∈E∣x∈A,y∈B}
neobsahuje hrany z B do A!
je to elementární řez (vezmu dvě množiny vrcholů a všechny hrany mezi nimi)
každý v inkluzi minimální (R∖e není řez) řez je elementární
max flow, min cut
Věta (max flow, min cut):pro každou síť je maximální tok roven minimálnímu řezu.
Lemma:pro každou A⊆V t. ž. z∈A,s∈A a pro libovolný tok f platí: w(f)=f(A,V∖A)−f(V∖A,A)
Důkaz:w(f)=u∈A∑(u,x)∈E∑f(u,x)−(x,u)∈E∑f(x,u)//pouze definice=u∈A,v∈A∑f(u,v)−u∈A,v∈A∑f(v,u)//hrany ∈ A prˇispeˇjıˊ jednou + a jednou −=f(A,V∖A)−f(V∖A,A)
Důsledek:w(f)≤c(R), protože
w(f)=f(A,V∖A)−f(V∖A,A)≤f(A,V∖A)≤c(A,V∖A)≤c(R)
Definice (nasycená cesta): je (neorientovaná) cesta, pokud ∃e na cestě t. ž. buďto:
vede po směru a f(e)=c(e)
vede proti směru a f(e)=0
Definice (nasycený tok): je tok takový, že každá (neorientovaná) cesta ze z do s je nasycená.
Tvrzení:f je maximální ⟺f je nasycený.
Důkaz (maximální je nasycený):
sporem, předpokládáme maximální f, který není nasycený, tedy existuje nenasycená cesta P
ε1=min{c(e)−f(e)∣e∈P po smeˇru }
ε2=min{f(e)∣e∈P proti smeˇru }
εP=min{ε1,ε2}>0, protože P není nasycená
sestrojme tok f′ tak, že:
f′(e)=f(e)+εP pro e∈P po směru
f′(e)=f(e)−εP pro e∈P proti směru
f′(e)=f(e) pro e∈/Pw(f′)=∑f′(z,x)−f′(x,z)=w(f)+εP
f nebyl maximální, spor
Důkaz (nasycený je maximální):
uvážíme množinu vrcholů, do kterých se lze dostat ze z po nenasycené cestě – A={v∈V∣∃nenasycenaˊ cesta }
s∈/A (jinak f není nasycený)
∀e∈S(A,V∖A) platí f(e)=c(e)
∀e∈S(V∖A,A) platí f(e)=0 (jinak bychom nenasycenou cestu mohli prodloužit
Tvrzení:pokud jsou kapacity racionální, pak algoritmus doběhne. Pokud jsou přirozené, dá celočíselný tok.
racionální: pronásobení LCM a důkaz pro přirozené
přirozené: každé vylepšení cesty bude celočíselné a udělá to konečněkrát
(👀): Celočíselný tok lze rozdělit na celočíselný součet cest a cyklů.
Důkaz: Plyne z běhu F-F algoritmu. Tok je součtem zlepšujících cest a cyklů.
8. přednáška
Aplikace toků v sítích
Párování v bipartitním grafu
Věta (Königova):v bipartitním grafu je velikost maximálního párování rovna velikosti minimalního vrcholového pokrytí.
M⊆E je párování, pokud ∀e,e′∈M,e=e′:e∩e′=∅
U⊆V je vrcholové pokrytí, pokud ∀e∈E∃u∈U:u∈e
Důkaz: přes toky, jako na následujícím obrázku na síti kapacit 1:
R je minimální z−s řez
C je minimální vrcholové pokrytí
f je maximální tok (hrany v původním grafu jsou maximální párování)
L,P= levá a pravá část grafu (bez zdroje a stoku)
Z toku získávám minimální z−s řez R. Ten upravíme na minimální řez R′ tak, aby neobsahoval hrany původního grafu. To jde, protože hranu původního grafu mohu vyměnit za tu ze zdroje/stoku, protože ta je jediný způsob, jak se dostat do hrany z původního vrcholu.
Tento řez určuje velikost minimálního vrcholového pokrytí (pokud by tomu tak nebylo, tak nemáme minimální řez).
Nyní chceme ukázat, že velikost R′ je rovná velikosti nějakého vrcholového pokrytí, a že velikost min. pokrytí je rovna velikosti nějakému řezu, což k důkazu věty stačí.
Najdeme vrcholové pokrytí stejně veliké jako R′:
W={u∈L∣(z,u)∈R′}∪{v∈P∣(v,s)∈R′}
je vrcholové pokrytí, v původním grafu by jinak existovala z−s cesta a nejednalo se o řez
Nyní pro W minimální vrcholové pokrytí najdeme řez R:
R={(z,u)∣u∈W∩L}∪{(u,s)∣u∈W∩P}
je řez (pro spor by existovala cesta, kterou by W nepokryl)
Systém reprezentantů
Definice:
množinový systém na množině X jsou množiny Mi,i∈I t. ž. Mi⊆X
systém různých reprezentantů (SRR) je funkce f:I↦X splňující:
∀i∈I:f(i)∈Mi (z každé množiny volí reprezentanta)
f je prostá (stejného reprezentanta nikdy nevolí dvakrát)
Analogicky pro grafy: bipartitní graf G=(L∪P,E) má párování pokrývající P pokud ∀P′⊆P:⋃v∈P′N(v)≥∣P′∣. N je sousedství (to, co vrcholy zprava na levé straně „vidí“).
Věta (Hallova):SRR ∃⟺∀J⊆I:⋃i∈JMi≥∣J∣.
Důkaz (SSR ⇒ Hall): zvolím libovolnou J⊆I. Pak platí, že ∀j∈J∃pj∈Mj,pj=f(j), tak že prvky pj jsou navzájem různé (f je prostá). V tom případě ale
∣J∣=∣{pj∣j∈J}∣≤j∈J⋃Mj
Důkaz (SSR ⇐ Hall): opět najdu v grafu (celočíselný, jednotková síť) maximální tok. Najdu minimální řez z hran pouze ze zdroje/do stoku, ∣R∣=∣R′∣. Uvážím následující obrázek:
A= vrcholy incidentní s R′ v I
B= vrcholy incidentní s R′ v X
J=I∖A
Chceme najít systém různých reprezentantů. Dokážeme to tak, že ∣R′∣=∣I∣, pak max. tok má velikost ∣I∣ a hrany s tokem 1 mi dají SRR.
(👀): hrany z J vedou pouze do B, protože jinak by existovala z−s cesta a nejednalo by se o řez, tedy ⋃j∈JMj⊆B.
∣R′∣=c(R′)=∣A∣+∣B∣=∣I∣−∣J∣∣A∣+∣B∣≥∣I∣−∣J∣+j∈J⋃Mj≥∣I∣−∣J∣+∣J∣=∣I∣//jednotkoveˊ kapacity//z pozorovaˊnıˊ//z Hallovy podmıˊnky//⟹tok maˊ velikost alesponˇ ∣I∣
Definuji SRR jako f(i)=x∈X, pokud po hraně (i,x) něco teče.
9. přednáška
Důsledek: nechť B=(V1∪V2,E) je bipartitní graf, kde k1=minv∈V1degv,k2=maxv∈V2degvak1≥k2
pak je splněna Hallova podmínka.
Důkaz: Ověřím Hallovu podmínku (pozor, prohozené strany). Máme-li množinu J a každá vidí alespoň k1 hran, pak vidím ≥∣J∣k1 hran. Abych pohltil všechny tyto hrany, tak musí napravo být alespoň k2∣N[j]∣ vrcholů. Musí tedy platit:
∣J∣k1≤#hran≤k2∣N[J]∣
Protože k1≥k2, pak ∣N[j]∣≥∣J∣.
Příklad: doplňování latinských obdélníků:
stupně: každý sloupec má stupeň n−k (počet nepoužitých symbolů)
symboly: každý symbol se vyskytuje v řádku právě jednou, tedy ještě není v n−k sloupcích
Máme tedy (n−k)-regulární graf, pro který ∃ perfektní párování (použití minulého důsledku).
Míra souvislosti neorientovaných grafu
Definice:
hranový řez v grafu G je F⊆E t. ž. G′=(V,E∖F) je nesouvislý.
vrcholový řez v grafu G je A⊆V t. ž. G′=(V∖A,E∩(2V∖A))=G[V∖A] je nesouvislý.
hranová souvislostke(G)=min{∣F∣∣F⊆E je hranovyˊrˇez}
vrcholová souvislostkv(G)={n−1min{∣A∣∣A⊆V je vrcholovyˊrˇez}G≅Knjindy
G je hranově/vrcholově k-souvislý, pokud ke/v(G)≥k
„potřebujeme useknout alespoňk hran/vrcholů na to, aby se graf rozpadl“
(👀): je-li 3-souvislý, pak je i 2-souvislý a 1-souvislý
je kritickyk-souvislý, pokud odstranění libovolného vrcholu sníží stupeň souvislosti
stromy jsou hranově 1-souvislé, vrcholově ne (listy)
Lemma:∀G,∀e∈E platí ke(G)−1≤ke(G−e)≤ke(G)
lemma říká, že se hranová souvislost „chová slušně“
zas tak triviální to není, u vrcholové může (odstraněním vrcholu) vzrůst (list na kružnici)
Tomovo poznámka: V důkazu ke(G)≤kv(G) se tohle lemma nepoužívá (alespoň tak, jak to chápu). Jsem trochu zmatený z toho, proč Martin říkal, že ano.
Důkaz (≤): vezmu minimální řez F⊆E v G, F′=F∖{e} jistě musí být řez v G−e; pak:
ke(G−e)≤∣F′∣≤∣F∣=ke(G)
Důkaz (≥): vezmu minimální řez B v G−eB′=B∪{e} je řezem v G, pak:
ke(G)≤∣B′∣ke(G)−1=∣B∣+1=ke(G−e)+1≤ke(G−e)
Tvrzení:∀G,∀e∈E platí kv(G)−1≤kv(G−e)≤kv(G)
Důkaz: trochu přeformulujeme… pro H=G−e:kv(H+e)≤kv(H)+1:
V H existuje vrcholový řez A⊆V(H),kv(H)=∣A∣. Při odebrání A se H rozpadne na alespoň 2 komponenty. Sledujeme (rozebíráme případy), co se se souvislostí stane, když přidáme do grafu hranu e:
alespoň 1 konec e leží v A:
přidání e nespojí žádné 2 komponenty, A je řezem i pro G=H+e
oba konce leží v 1 komponentě
stejný argument jako (1)
hrana e spojuje 2 komponenty
pokud je počet komponent ≥3, tak je A stále řezem (po spojení jsou stále 2)
pokud není, tak:
BUNO ∣C1∣≥2; nechť e=xy a x leží v C1, pak A∪x je řezem, protože mi v obou komponentách něco zbylo
∣C1∣=∣C2∣=1:
∣V∣=∣A∣+2⟹∣A∣=∣V∣−2=kv(H)
kv(H+e)≤def.∣V∣−1=kv(H)+1
Věta:kv(G)≤ke(G): indukcí podle počtu hran:
pokud ∣E∣<∣V∣−1, pak je G nesouvislý a kv(G)=0=ke(G)
nechť nadále ke(G)>0; vezmu min. hranový řez F⊆E a e∈F; také G′=G−e
na G′ použiju IP, tedy kv(G′)≤ke(G′)
z lemmatu o souvislosti vrcholů (a přičtení jedničky) víme:
kv(G)−1≤kv(G−e)≤IPke(G−e)=ke(G)−1
Kde poslední rovnost platí, protože F′=F∖e je (z definice) řezem G−e.
Věta (Mengerova hranová):ke(G)=t⟺ mezi ∀u,v∃≥t hranově disjunktních cest.
Důkaz (⇐): sporem nechť existuje hranový řez F a ∣F∣<t. G∖F je rozdělený na více komponent. Vezmi u∈C1,v∈C2. Mezi u,v vedlo t hranově disjunktních cest. F nemohl přerušit všechny z nich.
Důkaz (⇒): mějme ke(G)≥t a pro u,v hledám disjunktní cesty. Sestrojím jednotkovou síť, najdu tok z u do v. Pak vidím, že mám tok alespoň t (maximální tok je minimální řez) a začnu odčítat cesty.
Věta (Mengerova vrcholová):kv(G)=t⟺ mezi ∀u,v∃≥t vrcholově disjunktních cest (vyjma u,v).
Důkaz (⇐): stejný jako FF, jen nahraď „hrany“ za „vrcholy“.
Důkaz (⇒): uděláme trik s dělením vrcholů na dva (degin,degout) a v libovolném řezu nahradíme hrany vedoucí do/z vrcholů za hranu spojující vrcholy.
10. přednáška
Lepení uší
Věta:graf je 2-souvislý právě tehdy, když jej lze vytvořit z K3 posloupností:
dělení hran
přidávání hran
Důkaz (⇒):
zvolme G0 libovolně (kružnici mít musí, jinak není 2-souvislý).
předpokládejme, že Gj,j≤i jsou definovány jako výše
pokud Gi=G, tak jsme hotovi
jinak Ei=E, G je souvislý
∃e={v,v′}∈E∖Ei, která se dotýká původního grafu (e∩Vi=∅)
pokud oba vrcholy e patří do Vi, tak ji přidám (Gi+1=Gi+e)
pokud ne: G−v musí stále být souvislý (G je 2-souvislý) – prostě vezmeme nejkratší cestu zpět do nějakého Gj
Důkaz (⇐): stačí vidět, že nikdy nevznikne artikulace, protože uši lepím mezi 2 různé vrcholy.
Samoopravné kódy
Definice (Hammingův kód): vycházíme z Fanovy roviny a o přímkách uvažujeme jako o prvcích Z27
dostáváme z toho dekódovací pravidlo – dekóduj na nejbližší slovo!
Protokol:
vezmi kódovou zprávu
rozděl na 4-bitové bloky
zakóduj přes Hammingův kód
nějak rozumně očísluj kódová slova!
profit?
Výsledek: zpráva je o 7/4 delší, ale pro p šanci otočení bitu získáváme následující:
Pr[jeden blok se spraˊvneˇ rozkoˊduje]Pr[celaˊ zpraˊva se spraˊvneˇ dekoˊduje]=(1−p)7vsˇe ok+7p(1−p)6jeden sˇpatneˇ=(1−p)6(1+6p)=((1−p)6(1+6p))n/4
pro n=100,p=0.01 vyjde 95%, což je nice!
Definice:
Σ… abeceda
s∈Σn… slovo (vstup)
C⊆Σn… kód
c∈C… kódové slovo (naše spešl slova)
∣C∣… velikost kódu (počet kódových slov)
n… délka kódu (kolikaznaková slova máme)
k=log∣C∣… dimenze kódu (bude se hodit později)
pro x,y∈Σn:d(x,y)… počet souřadnic, ve kterých se liší
d=Δ(C)=x,y∈Cmind(x,y)… (min.) vzdálenost C
d=1… nepoznám chybu
d=2… poznám, že došlo k chybě
d=3… umím opravit 1 chybu
Δ(C)≥2t+1 znamená, že „C má schopnost opravit t chyb“
kód s vlastnostmi n,k,d se označuje (n,k,d)− kód
Příklad (kódy):
totální kód C=Σn (nic se nekóduje)
délka =n
velikost =2n⟹k=log∣C∣=n
d=1
⟹(n,n,1)−kód
opakovací kód délky n (n-krát opakujeme 0 nebo 1)
délka =n
velikost =2 (samé nuly/jedničky) ⟹k=1
d=n
⟹(n,1,n)−kód
paritní kód C⊆Σn t. ž. x∈C:∑xi=0 (počet jedniček je sudý)
délka =n
velikost =2n−1⟹k=n−1
d=2, protože změna bitů mění paritu
⟹(n,n−1,2)−kód
Hammingův kód
⟹(7,4,3)−kód
11. přednáška
Jak nejefektivněji můžeme kódovat?
A(n,d)=Cmaxlog∣C∣ pro C binární kódy délky n s min. vzdáleností d
A(n,1)=n (triviální kód)
A(n,2)≥n−1 (paritní kód má ∣C∣=2n−1,d=2)
(👀):∀d≤n,d≥2:A(n,d)≤A(n−1,d−1)
po odstranění bitu vzdálenost slov klesne nejvýše o 1 (pokud se slova v bytu liší); velikost nového kódu ∣C′∣=∣C∣
funguje pouze díky předpokladu – pro d≥2 se žádná slova nesloučí (pro d=1 už ano)
Důsledek (Singletonův odhad):∀d≤n platí A(n,d)≤n−d+1
mohu použít k důkazu druhé nerovnosti u A(n,2)
Tvrzení:pro každé liché d≤n je A(n,d)=A(n+1,d+1)
Důkaz: nechť C je (n,k,d)-kód. Přidáním paritního bitu ke každému slovu vytvořím (n+1,k,d+1)−kód, jelikož slova vzdálená lichým číslem (jmenovitě d) mají různou paritu a proto je od sebe o 1 vzdálím.
Důsledek: nejzajímavější jsou kódy s lichým d (na sudé lze triviálně rozšířit)
Lineární kódy
Definice: kód C nad Z2n je lineární kód, pokud tvoří vektorový podprostor.
∀c,c′∈C:c+c′∈C
∀α∈Z2:αc∈C
(👀): pokud C je dimenze k, pak má 2k prvků, ale k jeho popisu stačí nějaká báze C,∣C∣=k (ostatní dostanu lineárními kombinacemi).
(👀): Hammingův kód H je lineární a generuje ho jeho generujicí maticev1v2v3v41000110001101011010100100001
{v1,…,v4} je báze H
∀c∈H∃α1,…,α4∈Z2 t. ž. c=∑i=14αivi
(👀):∀x,y,z∈C:d(x,y)=d(x+z,y+z)
„posunutí nějakým směrem“
platí pro všechny kódy, ale hodí se jen u lineárních kódů, protože díky tomu, že tvoří VP je součet také kódové slovo
x+z,y+z∈C (lineární kódy)
d(x,y)=d(0,y−x)
Δ(C)=x,y∈Cmind(0,y−x)⟹x∈Cmind(0,x), což je počet nenulových souřadnic
⟨x,y⟩=∑i=1nxi⋅yi (skalární součin, ale jsme v Z2, takže modulíme)
nemusí platit, že x=0⟹⟨x,x⟩=0 (např. pro (1100))
Duální kódy
Definice (duální kód):C je ortogonální doplněk C⊥={x∣⟨x,y⟩=0,∀y∈C}
může být C∩C⊥={0}, ale platí dimC+dimC⊥=n
(👀):C⊥ je opět vektorový podprostor, je to tedy taky kód
má také generující matici M (tzv. paritní/kontrolní)
platí C={x∣Mx=0} (z definice naší „ortogonality“)
stačí ověřit ortogonalitu na bázové vektory
(👀): nechť G je generující matice kódu C
G můžu zgausoeliminovat na G′, která stále generuje C
ke kódování daného slova stačí sečíst příslušné řádky G′, protože se jedná o jediný způsob, jak dostat bity slova
Mějme C lineární kód délky n nad Z24. Bylo odesláno slovo x∈C a přijato slovo x~.
mohly nastat chyby e=x~−x (chybový vektor)
chceme ho objevit, abychom rozluštili x
P je paritní matice kódu C, tzn. C={x∣Px=0}.
Definice (syndrom): slova z je Pz, kde P je paritní matice kódu C.
(👀): kódová slova ≡ slova se syndromem 0 (viz. definice P…)
Předpoklad: chybový vektor e je slovo s nejmenší vahou ve své třídě
třída={e′∣Pe′=Px~=P(x+e)=Px+Pe=Pe} (slova se stejným syndromem)
pro syndrom s∈Z2k je slovo m(s)∈Z2n t. ž. Pm(s)=s a w(m(s)) je minimální tzv. reprezentant
Dekódování:
vezmu s=Px~
najdu reprezentanta m(s)
výsledek dekódování y=x~−m(s)=x~−m(Px~)
(👀):y má mezi kódovými slovy nejmenší vzdálenost od x~
Příklad:
G=v1v2(1010110101)
k=2, máme 4 slova {v1,v2,(0…0),v1+v2}
Δ(C)=3 (počet jedniček vektoru báze)
jedná se o (5,2,3)−kód
P=100110010011001
x~=v1=(11100), Px~=(000)T (nulový syndrom, což je správně)
x~=(00101), Px~=(011)T (nějaký syndrom)
podíváme se do tabulky syndromů (vybruteforcená)
dostaneme ze syndromu reprezentanta m(s)=(00010)
spočítáme x=x~−e=(00111)
protože došlo k chybě v 1 pozici a jedná se o (5,2,3)-kód, x je správné dekódování
pro x~=(01101) dostáváme váhu syndromu 2 a to už neopravíme
Hammingovy kódy
(👀): nechť P je kontrolní matice C. Pak Δ(C)= maximální d t. ž. ∀d−1 sloupců P je lineárně nezávislých.
Důkaz: kódová slova ≡Pc=0. Nechť sloupce P jsou p1,…,pn. Pak
i=1∑ncipi=0
Pro spor nechť ∃x t. ž. ∑xipi=0 (je tedy kódové slovo) a w(x)<d→. To je spor, Δ(C)=d ale tohle slovo má w(x)<d. To musí nutně znamenat, že ∀x:w(x)<d→∑i=1nxipi=0→ každých ≤d−1 sloupců je tedy lineárně nezávislých.
Důsledek: pokud chci d=3, potřebuji co největší matici P t. ž. ∀2 sloupce jsou lineárně nezávislé. To v Z2 znamená, že musí být různé a žádný z nich není nulový.
Jedná se o binární zápisy čísel 1…2r−1. Nechť C je generovaný P a Hr=C⊥ (P je paritní matice Hr). Má délku n=2r−1 a dimHr=n−r=2r−r−1.
n−r funguje, protože mají komplementární dimenze
Z pozorování (nezávislé sloupce) dostáváme, že Δ(Hr)=3.
Věta:pro každé r≥2 je Hr[2r−1,2r−r−1,3]-kód.
12. přednáška
(👀):G=[Ik∣P]⟹M=[−PIn−k]T
Dekódování Hammingova kódu
předpoklad: e má nejvýše 1 jedničku
došlo k ≤1 chybě
M je ve tvaru uvedeném výše (binární zápisy čísel 1…2r−1)
pozorování: syndrom Mx~=Me je yi≡ binární zápis i⟺ došlo k chybě na pozici i
Perfektnost kódu
Pokud pro C platí Δ(C)=2t+1, pak pro libovolné slovo x∈Z2n je nejvýše jedno kódové slovo ve vzdálenosti ≤t od x (pozorování výše). Kódová slova tedy indukují navzájem disjunktní symetrické koule dimenze n se středem x a poloměrem t: B(x,n,t)={z∈Z2n∣d(x,z)≤t}
Jelikož disjunktní koule mohou pokrýt nejvýše všech 2n slov, tak dostáváme následující pozorování na počet kódových slov:
Věta (Hammingův odhad):pro binární kód s Δ(C)≥2t+1 platí ∣C∣≤A(n,d)≤V(n,t)2n
V(n,t)=∑i=0t(in) je objem kombinatorické koule dimenze n o poloměru t
způsoby, jak si vybrat i bitů a flipnout je
Důkaz: mám na 2n prvcích ∣C∣ disjunktních koulí objemu V(n,t)… koule pokrývají ∣C∣⋅V(n,t) prvků, což je ≤2n (méně nebo rovno všem prvkům – nevím, jestli se nepřekrývají) a vydělím.
Definice: kód C je perfektní, pokud pro něj platí Hammingův odhad s rovností.
Příklad (perfektních kódů):
totální (koule o poloměru 1)
opakovací kód liché délky
jednoprvkový kód (koule zaplňuje celý prostor)
Tvrzení:Hammingův kód je perfektní.
Důkaz:Hr=[2r−1,2r−r−1,3]-kód.
3=2t+1⟹t=1,V(n,t)=V(2r−1,1)=2r
poslední rovnost je počet vektorů lišící se v 1 souřadnici, + střed koule
k=dimenze=2r−r−1
∣C∣=2k=22r−r−1
V(n,t)2n=2r22r−1=22r−r−1=∣C∣
Hadamardův kód
duál Hammingova kódu (prohození generující matice s paritní maticí pro Hammingův kód G⟷K dává Hadamardův kód)
x… zpráva délky r
c=(c1,…,c2r−1)
ci=⟨x,yi⟩, kde yi jsou binární zápisy čísla i
Tvrzení:Hadamardův kód je [2r,r,2r−1]-kód.
(👀):⟨x,yi⟩ nenese informaci o x1, pokud první bit y je 0⟹ stačí brát yi,i∈(2r−1,2r−1)
jedná se o rozšířený Hadamardův kód[2r,r+1,2r−1]
Ramseyova teorie
Motivace: party o 6 lidech:
Věta:pro každý graf na ≥6 vrcholech ∃ podrgraf E3 (prázdný graf) nebo K3.
ω(G)≥3 – velikost maximální kliky
α(G)≥3 – velikost maximální nezávislé množiny
Důkaz: vyberu libovolný vrchol u. Podívám se na vrcholy A, se kterými nesousedí, zbytek nechť je B.
∣A∣≥3,A⊇{x,y,z}
všichni mezi sebou mají hranu, pak máme K3
BUNO ∃ nehrana xy, pak {u,x,y} tvoří E3
symetricky
Definice (Ramseyovo číslo)r(k,l)=minn t. ž. ∀G o n vrcholech obsahuje buď Kk nebo El
„Kolik vrcholů musí mít graf, abych tam vždy našel buď Kk nebo El“.
Pár hodnot:
r(1,l)=1
r(k,1)=1
r(2,l)=l
r(k,2)=k
dříve jsme dokázali, že r(3,3)≤6 a z C5 víme, že r(3,3)>5, tedy r(3,3)=6
Definice (symetrické Ramseyovo číslo)r(n)=r(n,n)
Věta (Ramseyova):r(k,l)≤(k−1k+l−2)
(👀): ze symetrie kombinačních čísel máme symetrii v k,l, protože (k−1k+l−2)=(l−1k+l−2)
Důkaz: indukcí podle k+l
pro k=1,l=1 a k=2,l=2 jednoduché (vždy existuje hrana/nehrana)
nechť k,l≥2 a tvrzení platí pro k,l−1 a k−1,l
n1=(k−1k+l−3) a n2=(l−1k+l−3)
Zvolím u∈G libovolně a opět rozdělím graf na nesousedy A a sousedy B vrcholu u. Z principu holubníku je ∣A∣≥n1 nebo ∣B∣≥n2 (jsou-li obě množiny ostře menší, tak jejich součet dá nejvýše n−2, ale sousedů + nesousedů u je právě n−1)
∣A∣≥n1, použijeme IP na A:
ω(G[A])≥k a jsem hotov
α(G[A])≥l−1, pak tato nezávislá množina spolu s u dává nezávislou mnozinu velikosti ≥l
analogicky: ∣B∣≥n2, použijeme IP na B:
ω(G[B])≥k−1, pak tato klika spolu s u dává kliku velikosti ≥k
α(G[B])≥l a jsem hotov
Důsledek:∀k,l∃r(k,l) t. ž. ∀G:ω(G)≥k nebo α(G)≥l.
Věta:k,n∈N t. ž. (kn)21−(2k)<1⟹r(k)>n.
Co jsou čísla zač? Použijeme odhad:
(kn)≤k!nk<2k/2+1nk
(kn)21−(2k)<2k/2+1nk21−k(k−1)/2=(2k/2n)k
Kde poslední rovnost platí, protože:
2k/2+1121−k(k−1)/2=2⋅2k/212k(k−1)/22=2k/2(1+k−1)1=(2k/21)k
Důsledek:∀k≥3:r(k)>2k/2
dosadíme n=2k/2 do předchozího (předchozí je ostrý odhad, takže 1k<1 funguje)
Důkaz: vezmu náhodný graf G t. ž. každá z (2n) hran má pravděpodobnost 1/2, nezávisle na ostatních. Nechť K⊆V,∣K∣=k. AK… jev, že G[K] je klika. Pr[AK]=(21)(2k)=2−(2k). Obdobně BK jev, že vznikla nezávislá množina a CK…AK∪BK…Pr[CK]=2⋅2−(2k)=21−(2k). p… pravděpodobnost, že ∃K⊆V t. ž. nastal jev CK. Je ji těžké určit, protože jevy nejsou nezavislé (množiny se mohou překrývat), nám ale stačí odhad který předpokládá, že jsou jevy nezávislé:
Pr[C]≤K∈V,∣K∣=k∑Pr[CK]=(kn)⋅21−(2k)<1
předposlední rovnost je z definice – všechny možné K-tice
poslední nerovnost je předpoklad věty
máme, že pravděpodobnost, že nějaká K-prvková množina bude tvořit buďto kliku nebo nezávislou množinu velikosti k je <1, tedy pravděpodobnost, že to nenastane je >0, tedy ∃ nějaký z náhodných grafů, který tohle nesplňuje
pokud pravděpodobnost je nenulová, tak musí existovat nějaké množství grafů, které tenhle jev mají (protože jinak by nerovnost nebyla ostrá)
Někomu může použití pravděpodobnosti připadat trochu magické. Umíme i explicitní.
Důkaz (alternativní): Uvažme všechny grafy na n vrcholech. Těch je 2(2n).
Kolik z nich obsahuje kliku nebo nezávislou množinu velikosti alespoň k? Tedy,
kolik z nich je “dobrých”?
Začněme jednodušeji – označme množinu vrcholů V a mějme K⊆V,∣K∣=k.
V kolika grafech tvoří K kliku? Hrany uvnitř K jsou fixované, ostatní můžeme nastavovat libovolně.
Odpověď je tedy 2(2n)−(2k). Případ nezávislé množiny je
symetrický, tudíž v 22(2n)−(2k)=2(2n)−(2k)+1 grafech
bude K klika nebo nezávislá množina.
Nyní zásadní krok: V součtu (kn)2(2n)−(2k)+1 přes všechny takové
množiny K jsme započítali každý dobrý graf (nejspíše vícekrát, ale to nevadí). Každý dobrý
graf totiž obsahuje kliku nebo nezávislou množinu velikosti přesněk.
Tento součet je tedy horní mezí pro počet dobrých grafů.
A jsme hotovi. Předpoklad věty je totiž po přenásobení ekvivalentní nerovnosti:
(kn)2(2n)−(2k)+1<2(2n)
A z té díky našemu odhadu tranzitivně plyne, že počet dobrých grafů je menší než počet všech grafů. Tedy
existuje nedobrý graf na n vrcholech a r(k,k)>n.
13. přednáška
Ramseyovy vícebarevně věty
Chceme zobecnit Ramseyovu větu tak, že vyžadujeme stejnobarevné (pro konstantní počet barev) kliky/nezávislé množiny (pro konečné/nekonečné grafy).
Pokud mám t holubníků a chci, aby existoval holubník s alespoň k prvky, tak na to potřebuji alespoň n≥N=t(k−1)+1 prvků.
Věta (princip holubníku):pro každé t,k∈N∃N t. ž. ∀c:[n]↦[t] platí, že ∀n≥N∃A⊆[n],∣A∣=k, na níž je funkce c konstantní.
Důkaz:N=t(k−1)+1.
Věta (nekonečný princip holubníku):pro každé t∈N a každé c:N↦[t] existuje nekonečná množina A⊆N, pro níž je funkce c konstantní.
z „existuje holubník s hodně holuby“ máme „existuje holubník s nekonečně holuby“
Důkaz: rozdělím N na B1,…,Bt, kde Bi={m∈N∣c(m)=i}. Protože sjednocením je nekonečná množina pak alespoň jedna musí být nekonečná.
Na každém nekonečném úplném grafu existuje nekonečná klika s jednobarevnými hranami.
Věta (nekonečná Ramseyova (vícebarevná)):∀t∈N,∀c:(2N)↦[t]∃ nekonečná množina A⊆N, pro níž je funkce c na hranách (2A) konstantní.
Důkaz: sestrojíme posloupnost nekonečných množin A1=N; pro i=1,2,… opakujeme:
vybereme vi∈Ai
rozdělíme A na Bi1,Bi2…,Bit podle toho, jakou barvu má hrana, která množinu spojuje s vi
jelikož Ai je nekonečná, tak ∃Bij pro nějakou barvu, která je také nekonečná
položme Ai+1=Bij
(👀): posloupnost vrcholů v1,v2,… má vlastnost, že pokud i<j, pak {vi,vj} má barvu bi
to, že vj přežil zanoření se mohlo stát pouze tak, že s vi byl spojen barvou bi
(👀): posloupnost barev b1,b2,b3,… je nekonečná, ale opakuje se tu konečně mnoho hodnot
aplikuji nekonečný holubník ⟹∃j∈[t] opakující-se nekonečněkrát a takové vrcholy tvoří hledanou nekonečnou kliku (viz pozorování výše)
(t počet barev, k velikost kliky)
Stejné jako nekonečná věta, ale omezíme se na konečně velkou kliku a hledáme N, pro které ∀G s počtem vrcholů n≥N bude obsahovat jednobarevnou kliku (opět v rámci hran) velikosti k.
Věta (Ramseyova (vícebarevná)):∀t,k∈N∃N∈N t. ž. ∀c:(2[n])↦[t],∀n≥N existuje množina A⊆[n],∣A∣=k, pro níž je funkce c na hranách (2A) konstantní.
Důkaz: adaptujeme nekonečný na konečný případ – chtěli bychom posloupnost barev b1,…,btk – když do toho praštíme holubníkem, tak máme barvu, která je tam k-krát.
upravíme konstrukci množin Ai (bereme vždy největší)
∣Ai+1∣≥t∣Ai∣−1 (max. je větší/roven průměru)
jde dokázat, že potřebujeme, aby konstrukce běžela alespoň tk kroků: ∣Atk∣≥1,∣Atk−1∣≥t+1,…,∣A1∣≥i=0∑tkti=t−1ttk+1−1
Definice (hypergraf) je zobecněný graf, kde:
hrany jsou libovolné množiny (místo dvojic, jako v normálním grafu)
uniformní hypergraf – hrany jsou p-prvkové množiny
p je arita hran (velikost množin), t,k jsou stejné
Stejné jako nekonečná věta, ale máme hypergraf.
Věta (nekonečná Ramseyova (vícebarevná) pro p-tice):∀p,t∈N a ∀c:(pN)↦[t]∃A⊆N nekonečná t. ž. c je na (pA) konstantní.
Důkaz: indukcí podle p
pro p=1 je to nekonečný holubník, pro p=2 je to Ramseyova nekonečná
IP: věta platí pro p−1
opět konstruuji nekonečnou posloupnost Ai
v kroku i vyberu vi∈Ai, nechť Ai′=Ai∖{vi}
Pomocné obarvení (p−1)-tic – každá má barvu, kterou měla v p-tici s vrcholem vi (abychom využili IP).
z IP pro Ai′ máme, že ∃Bi⊆Ai′, na jejichž (p−1)-ticích je obarvení ci′ konstantní =bi∈[t] a Ai+1=Bi si vezmu do dalšího kroku
(👀): barva p-tice {vi1,…,vip} (vzhledem k vzniklé posloupnosti v1,v2,…), kde i1<i2<i3<ip závisí pouze na barvě prvku vi1 (stejný argument jako u věty výše)
vyberu z barev nějakou opakující-se nekonečněkrát a vrcholy s příslušnými indexy tvoří A
Stejné jako nekonečná věta, ale máme fixní velikost kliky a konečně mnoho vrcholů.
Věta (Ramseyova (vícebarevná) pro p-tice):∀p,t,k∈N∃N∈N t. ž. ∀n≥N,∀c:(p[n])↦[t]∃A⊆[n],∣A∣=k t. ž. c je na (pA) konstantní.
Důkaz: mějme p,k,t z předpokladu. Uvažme ci:(p[n])↦[t]. To je dobré, pokud ∃k-prvková jednobarevná podmnožina, jinak je špatné. Věta tedy tvrdí, že n≥N jsou všechna cdobrá.
Sporem: předpokládejme, že pro nekonečně mnoho n∃špatné obarvení.
(👀): Pokud Sn je množina špatných obarvení a Sn je neprázdné, pak Sn−1 je neprázdné, protože mám-li špatné obarvení p-tic nad n, tak mohu zapomenout na n-tý prvek a tak dostanu špatné obarvení i na n−1.
Strukturu špatných obarvení popíšeme stromem, kde hladiny jsou obarvení Sn; platí:
všechny hladiny jsou neprázdné (předpoklad pro spor)
všechny hladiny jsou konečné (nad Sn může být only so much obarvení)
Lemma (Königovo):nekonečný strom s konečnými stupni má nekonečnou cestu z kořene.
Díky tomuto lemmatu víme, že ∃ nekonečná cesta z S0. Z nekonečné Ramseyovy věty ale víme, že kdyby tomu tak bylo, tak neplatí, protože by existovalo nekonečné obarvení přirozených čísel (podle nekonečné cesty v tomto stromu).
Matěji Kripnerovi za řadu PR opravujících chyby a přidávajících dodatečné informace.
Filipu Peškovi za upozornění na několik překlepů/chyb v důkazech a definicích.
Vojtěchu Kočandrlemu za PR a upozornění na překlepy.
Rekurence pro bn vypadá skoro jako konvoluce sama sebe, takže by se nám líbilo něco jako b(x)=b(x)2. Jenže narozdíl od konvoluce pronásobujeme jen prvních n−1 prvků. Uvažme tedy posloupnost 0,b0,b1,b2,… generovanou funkcí xb(x). Ta je již skoro konvolucí sama sebe – n-tý prvek se v sumě požere s nulou. Jediná nepřesnost je u b0, protože podle definice konvoluce b0=0⋅b0+b0⋅0=0, ale my víme b0=1. Stačí tedy přičíst jedničku posunutou o jedna doprava, čímž dostaneme xb(x)=(xb(x))2+x. Jinými slovy b(x)=xb(x)2+1. ↩