Higher beings, these words are for you alone. Občas tu je něco blbě tak bacha

Spolupachatel skript Hanek Javatý.

Josef “Pepa” Tkadlec💖

Požadavky

Balls

Odhady

[P: chapter 1, MN: chapter 3]

Odhady faktoriálů

Definice: Faktoriál

n!=defn·(n1)·(n2)··2·1

Pozorování

(n0)(n!nn)

Důkaz


Nejdříve dokážeme AG nerovnost, kterou použijeme při důkazu tvrzení níže. Actually that was a lie ale nechám to tady jelikož už sem to vyasciimath oval.

Pozorování

AG nerovnost x,y0

xyx+y2

Důkaz

(xy)20x2xy+y0x+y2xyx+y2xy

Pozorování

(n0)(nn2n!nn)

Důkaz

n!2=(n·1)·((n1)·2)·((n2)·3)··(1·n)

Každý z těchto činitelů cin , ci=i·(ni+1) . To protože na okrajích i=1 nebo i=n je to zjevně n .

V intervalu i{2,n1} je min(i,ni+1)2 a max(i,ni+1)n2

tudíž

n!2nn

n!nn2

Nyní ta těžší nerovnost

Pozorování

n0

e(ne)nn!en(ne)n

Důkaz

Předem se omlouvám, je to convoluted AF. Obrázek je důležitej, vlastně zavíráme ln(n!) mezi dva integrály ln(n!) co má jiný meze.

Spodní odhad. Pojďme se podívat na to, jak se chová funkce ln(n!) .

ln(n!)=i=1nln(i)= modrá část.


ln(n!) tedy odpovídá modré části. Ta je určitě větší než červená, což je integrál lnx od 1 do n .

Červená:

1nln(x)𝑑x=[x·lnxx]1n=nlnnn+1

Můžeme z logaritmu udělat výsledek itegrálu tím hodnotu zmenšit. n!=eln(n!)enlnnn+1=nn·1en·e=e(ne)n

K dokázání horního odhadu nám pomůže zelená část. Je vlastně stejná jako ta modrá, akorát je posunutá doprava. Pokud budeme porovnávat její hodnotu s červenou částí, tak červená bude větší, musíme ji ale také posunout. Integrál bude tedy od 1 do n+1

ln(n!)1n+1ln(x)dx=[xcdotlnxx]1n+1 =(n+1)ln(n+1)n

n!=eln(n!)en+1ln(n+1)n=(n+1)n+1en

Nyní opět evil matematický dosazení aby nám vyšlo to co chceme. Za n dosadíme n1 .

n!=n·(n1)!(dis one)n·(n(n)en1)=en(ne)n

Celkově tedy

e(ne)nn!en(ne)n 🔲

Pozorování

Stirling formula n!(2pin)12(ne)n

Důkaz

Patří do analýzy nebo tak něco

Odhady binomického koeficientu

Definice: Binomický koeficient

([n],[k])=n!k!(nk)!=n·(n1)··(nk+1)k!

Pozorování

(nk)k([n],[k])(enk)k

Důkaz

Spodní odhad

(i{0,,k1})(nikink)

(důkaz roznásobením). Díky tomu

([n],[k])overset(def)(=)i=0k1nikii=0k1nk=(nk)k

Horní odhad

Nechť x=kn . Všimni si že 0x1 protože kn

Budiž vymyšlený výraz:

([n],[0])x0+([n],[1])x1++([n],[n])xn=(1+x)n

Na levé straně vynecháme sčítance za xk

([n],[0])x0+([n],[1])x1++([n],[k])xk(1+x)n

Vydělíme xk

1xk0([n],[0])+1xk1([n],[1])++1xkk([n],[k])(1+x)nxk

Na levé straně je každý koeficient 1 , takže když je vynecháme tak stranu pouze zmenšíme.

([n],[0])+([n],[1])++([n],[k])(1+x)nxk

Všimni si cool feature je že už tam je ten ([n],[k]) který chceme! Expandujeme x=kn .

([n],[0])+([n],[1])++([n],[k])(1+kn)n·(nk)k

(všimni si obrácení zlomku kn kterým dělíme)

využijeme fakt: 1+xex (1+knekn ) pro umlácení pravé strany:

(1+kn)n(ekn)n=ek

tedy dostaneme

([n],[0])+([n],[1])++([n],[k])ek·(nk)k

Vlevo zahodíme Binomické koeficienty které nás nezajímají (zase pouze zmenší)

([n],[k])(enk)k

🔲

Nyní se podívejme co se děje s prostředním binomickým koeficientem, ten by měl být řekněme největší (něco něco pascalův trojúhelník);

Pozorování

22m2m([2m],[m])22m2m

Důkaz

Nejdříve si pořiďme P . P=def1·3·5··(2m1)2·4·6··(2m) Vynásobíme 1 P=1·3·5··(2m1)2·4·6··(2m)·2·4··(2m)2·4··(2m) =(2m)!22m·(m!)2 =122m·([2m],[m]) To nám pomůže, protože v dokazované nerovnosti jsou v čitatelích právě 22m , takže nyní nám stačí dokázat 12mP12m

Horní odhad

Uvažme posloupnost (322)·(3·542)·(5·662)··(2m1)(2m+1)2m2 , ta má ve výsledku v čitateli (skoro) všechna lichá čísla dvakrát a všechna sudá čísla ve jmenovateli dvakrát. Tado posloupnost se tedy rovná P2 až na přebytek. Co zbývá? 1 vlevo a 2m+1 vpravo. =(2m+1)P2 Jelikož každý činitel <1 , tak dostáváme že (2m+1)P2<1 , tedy P212m+1 Zmenšíme jmenovatel, takže zvětšíme pravou stranu. P212m P12m

Spodní odhad je podobný, ale má obrácené čitatele a jmenovatele. Uvažme posloupnost (2·432)·(4·652)·(6·872)··(2m2)(2m)2m12 , Tato posloupnost se chová skoro stejně jako 1P2 , až na přebytek v čitateli. Co přebývá? 2 vlevo a 2m vpravo. Tudíž =12·(2m)·P2 Každý člen je opět <1 , takže 12·(2m)·P2<1 P2>12·2m P>12m 🔲

Příklad: random walk. Kolikrát v průměru se dostaneme po 2m krocích zpátky do počátku, jestliže se v každém kroku rozhodneme jít náhodně doleva/doprava?

Řešení: po 2m krocích existuje ([2m],[m]) procházek které končí v 0. Celkem je tedy pravděpodobnost ([2m],[m])22m že po 2m krocích jsme v nule. Suma přes všechny délky:

m=1()([2m],[m])22mm=1()12sqrtm což diverguje. Po nekonečně krocích tedy můžeme očekávat nekonečně návšťev počátku.

Divergence se může ověřit vytáhnutím 12 ven a omezení harmonickou řadou.

Vytvořující funkce

Motivační příklad, kolika způsoby jde vytáhnout 7 míčků z pytle ve kterém jsou 3 červené, 4 zelené a 5 modrých? Moudrý čtenář ví že je to konvoluce (x+x2+x3)(x++x4)(x++x5) a ptáme se na koeficient x7 .

Definice: Vytvořující funkce (VF)

Nechť je (an)n=0 posloupnost reálných čísel. Vytvořující funkce této posloupnosti je řada a(x)=i=0aixi

Poznámka: Spíše než nekonečná řada je důležitá uzavřená reprezentace vytvořující funkce. Např. řada a(x)=1+x+x2+ je generovaná funkcí 11+x . Pokud je x v intervalu (1,1) , tak řada konverguje a má stejný součet. (Důkaz taylorova řada).

Z toho dostáváme jakousi podmínku pro to, aby posloupnost měla vytvořující funkci. Stačí, aby |an|Kn pro nějaké reálné K a AAn1 . Pak totiž pro x(1K,1K) řada a(x)=i=0()aixi konverguje.

Zajímavé je co se stane, když do VF dosadíme 0. V tu chvíli dostaneme první prvek a0 , protože všechny ostatní se vynulují. Také je zajímavé derivovat VF. Tím se všechny členy posloupnosti posunou o jedna doleva a vydělí se předchozím exponentem. Kombinací těchto dvou faktů dostáváme vzorec pro n -tý člen posloupnosti. Uděláme n -tou derivaci, vydělíme n! a dosadíme 0 .

an=a(n)(0)n!

Definice: Tabulka operací s VF
OperaceŘadaÚprava
Součeta0+b0,a1+b1,a2+b2,a(x)+b(x)
Násobekαa0,αa1,αa2,αa(x)
Posun doprava0,a0,a1,x·a(x)
Posun dolevaa1,a2,a3,a(x)a0x
Substituce αxα0a0,α1a1,α2a2,a(αx)
Substituce xna0,(0,,0)n1,a1,(0,,0)n1,a2,a(xn)
Derivacea1,2a2,3a3,a(x)
Integrování0,a1,a22,a33,0xa(t)𝑑t
Konvolucean=k=0n(ak·bnk)a(x)·b(x)

Ověř si to :)

Teď dlouhej talk o tom jak vyjádřit uzavřeně nějakou hodnotu rekurentně zadané rovnice. Tldr: Zapiš si posloupnost jako řadu, vypiš prvních pár prvků abys tam měl ten člen co máš rekurentně zadanej.

an+2=an+1+2an

a(x)=a0+a1x+x2n=0()an+2xn

Všimni si pár triků, např vytknutí x před sumu. Poté dosaď rekurenci, roztrhni sumu a snaž se nekonečnou sumu nahradit za tvou VF. Neboj se podvádět, musíš přičítat nulté a první členy, zvracej x zpátky do sumy, prostě se snaž dostat tvar n=0(00)anxn . To pak nahraď za a(x) a vyřeš pro a(x) .

Potom dostaneš uzavřený tvar pro tvojí VF. Dostaň ji do tvarů a1x+ to samé několikrát, kde x není nutně x a a je konstanta. Nejspíš budeš řešit parciální zlomky. Pak se podívej do tabulky, vyhaluz posloupnosti co sčítáš a máš vzoreček pro an . Snadné, že? :)

Přikládám svůj úkol protože si to nebudu pamatovat :)/

Zobecněná binomická věta

Definice: Zobecněný binomický koeficient

r,k0

([r],[k])=r(r1)(r2)(rk+1)k!

Prostě normální koeficient :)

Definice: Zobecněná binomická věta

r,x(1,1)

(1+x)r=([r],[0])x0+([r],[1])x1+

Z toho plyne, že pro n,x(1,1)

11xn=([n1],[n1])x0+([n],[n1])x1+([n+1],[n1])x2+= =i=0([n+i1],[n1])xi

Příklad: jak spočítat motivační příklad ale lépe.

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)=

=1x311x1x411x1x511x

Wait, cože? <- tohle bys měl být ty. Jak jsme přišli na to že 1+x++x30 je nějakej random zlomek? Vem vytvořující funkci samých 1 a vynásob jí 1x31 .

11xx311x=11x·(1x31)

Co dostaneš? Normální vytvořující funkci (·1 ), od které ale odečítáš posunutou VF od x31 . To znamená že ti zbyde jen 1+x++x30 .🪄

To ale znamená že máme funkci v uzavřené formě, a díky zobecněné binomické větě víme, že

=(([2],[2])+([3],[3])x+)(1x31)(1x41)(1x51)

A ptáme se na koeficient u x70 , který =

([72],[2])+ za samé 1, ([7231],[2])+ když vybereme x31 atd…

Definice: Zakořeněný binární strom

Strom je buď prázdný, nebo má levý a pravý podstrom, které jsou také binárními stromy (můžou být prázdné)

Budeme počítat kolik jich je, bn= počet různých binárních zakořeněných stromů na n vrcholech.

Lze si rozmyslet že bn=k=0n1bk·bnk1 , protože se rekurzíme na obě části, do každé přiřadíme část vrcholů. Když z toho uděláme VF, tak vychází, že

b(x)=x·b(x)·b(x)+1

+1 aby vycházelo b(0) správně a x je posun. Pak už je to pouze konvoluce. Vyjádříme b(x) 🪄 - normální kvadratická rovnice. Na odmocninu použij zobecněnou binomickou větu (mocníš na 12 ).

b(x)=k=1()(4)k([12],[k])xk2x

Vyjádření konkrétního koeficientu pak dává Catalanovo číslo

bn=1n+1([2n],[n])

TODO #partitions of n into odd parts = #partitions of n into distinct parts [MN 12.7 / here]

Finite projective planes (fpp FPR)

[P: chapter 3, MN: chapter 9]

Definice: množinový systém

budiž:

Množinový systém je dvojice (X,S)

Definice: Konečná projektivní rovina (FPR)

Jako kdyby 2 ale very nice✨ and neat✨ and all✨ (máme rádi FPR)

X je množina bodů. ccL je množina čar. (X,ccL) je množinový systém.

  1. Existují 4 různé body takové že libovlná přímka protne maximálně 2 z nich.
  2. Libovolné 2 přímky mají právě jeden společný bod
  3. Libovolné 2 body mají právě jednu společnou přímku
Pozorování

Nechť (X,ccL) FPR.

Všechny přímky mají stejný počet bodů.

Důkaz

Vemme libovolné L,LccL . Nejprve pomocné pozorování:

Pozorování

Existuje bod zX který není ani na L ani na L

Důkaz

Vezmeme 4-prvkovou množinu F z prvního axiomu. Máme |LF|2 a |LF|2 .

Pokud F není podmnožina LL pak máme hotovo. Znamená to že alespoň jeden bod z F je mimo L i L .

Jinak musí L protínat F ve 2 bodech a a b a zároveň musí L protínat F ve druhých 2 bodech c a d (více by bylo ve sporu s axiomem) (F={a,b,c,d} ).

Pak vezmeme přímky:

  • R1 protíná a a c
  • R2 protíná b a d

Nechť z je průnik R1 s R2 . Pak z není v L ani v L .

L a R1 se protínají v bodě a . Pokud by z byl v L pak by se L a R1 protínají v bodech z i a což je spor. Tudíž z nemůže ležet na L a analogicky ani na L . 🔲

Ozbrojeni tímto pozorováním, L a L mají stejnou velikost, definujíc funkci varphi:LL .

Ukážeme, že varphi je bijekce.

Neformálně: z je náš sniping spot a xL jsou body skrz které střílíme do L .

Vemme náš shiny bod z mimo LL a definujme obraz (terč) varphi(x) pro xL jako průnik L s přímkou která prochází body x a z (bullet trail).

Z axiomů 2 a 3 je terč dobře definovaný. Dvě různá x,yL musí mít různé obrazy $varphi(x), varphi(y) jinak by tyto dva bullet traily (přímky) sdílely více než jeden bod. Tudíž varphi je bijekce.

Definice: Řád FPR

Řád FPR (X,ccL) je |L|1 pro libovolné LccL (všechny L jsou stejně dlouhé).

(To 1 je lehce otravné ale není to chyba…)

Pro FPR (X,ccL) řádu n :

Pozorování

Právě n+1 přímek prochází každým bodem x

Důkaz

Nechť libovolný xX . Jistě máme LccL která neobsahuje x .

Pro každý yL vezmeme přímku procházející x a y . To je jistě přímka a jistě prochází x a jistě jich je n+1 . Nice.

Ale co kdyby existovala nějaká další zlá přímka Z ? Taková by musela protnout x ale zároveň každé 2 přímky mají společný bod takže existuje zZL takže z je jedno z y a žádná zlá přímka Z neexistuje.

Pozorování

|X|=n2+n+1

Důkaz

Vezmeme L={x0,,xn}ccL} a bod a mimo L . Pak vyrobíme přímky L0,Ln kde Li protíná a a xi . Každá Lin dalších bodů mimo a , takže dohromady n+1 přímek obsahuje n různých bodů plus samotné a . (n+1)·n+1=n2+n+1 .

(Jednotlivá Li nemohou sdílet těchto “n dalších bodů” protože pak by tyto 2 přímky sdíleli 2 body (a a tento jeden další))

Pozorování

|ccL|=n2+n+1

Důkaz

Důkaz vypadne automaticky z toho minulého po researchnutí duality.

Dualita

Definice: Dualita

Dualita znamená “prohození role přímky a bodu”. Pro přesnou formulaci si pro FPR zavedeme graf incidence.

Definice: Graf incidence

Bipartitní graf kde v první partii vrcholy reprezentují přímky a v druhé partii vrcholy reprezentují body.

Mezi vrcholi je hrana pokud daný bod patří do dané přímky.

Pro dané FPR (X,ccL) jeho duál (X,ccL) dostaneme vyrobením grafu incidence, prohozením významu partií a přeinterpretováním transformovaného bipartitního grafu incidence zpět na FPR.

Pozorování

Duál FPR je také FPR

Důkaz

Budiž FPR (X,ccL) a jeho duál (ccL,Λ) , kde Λ je systém podmnožin ccL . Každý z těchto podmnožin odpovídá nějakému bodu z X .

Všimněte si, že pro různé xX dostaneme různé podmnožiny ccL .

Musíme ověřit axiomy FPR pro tento duál.

  1. Přeloženo pro duál říká: Existují 4 přímky takové že žádné 3 z nich nemají společný bod. Vezmeme {a,b,c,d} z původního axiomu pro neduál. Z něj vyrobíme 4 přímky: L1=ab , L2=cd , L3=ad , L4=bc . Pro tyhle to platí.
  2. Je to samé jako 3. pro neduál!
  3. Je to samé jako 2. pro neduál!
Pozorování

Duál FPR řádu n je FPR řádu n

Důkaz

plyne z pozorování o počtu bodů na přímce a přímek procházející bodem

Pozorování

Existují FPR řádu 2, 3, 4, 5. 6 ne. 7, 8, 9 existují, 10 ne.

Existují pokud existuje těleso řádu n (tedy n=pα pro prvočíslo p ).

Konstrukce FPR z konečného tělesa.

  1. Prohlásíme že existují trojice prvků z tělesa.
  2. Budiž ekvivalence kde trojice (a,b,c)(d,e,f) kdyžž existuje nenulová λ z tělesa taková že a=λd , b=λe , c=λf .
  3. Body v FPR jsou třídy této ekvivalence KROM (0,0,0) . (Takhle vyrobené FPR se často značí PK2 kde K je to původní těleso)
  4. Přímky v tomto FPR jsou opět trojice prvků z tělesa bez (0,0,0) .
  5. Bod (x,y,t) leží na přímce (a,b,c) kdyžž ax+by+ct=0 .
  6. Profit

Stačí dokázat axiomy:

Pozorování

Začneme s tím že 2 přímky sdílí právě 1 bod.

Důkaz

Nechť máme (a1,b1,c1) a (a2,b2,c2) , 3D vektory v tělese K . Oba nenulové.

Jelikož oba nejsou násobky toho druhého, jsou lineárně nezávislé. Takže matice

((a1,b1,c1),(a2,b2,c2))

má rank 2. Jukněme na sloupce jako 2D vektory. Víme že 3 vektory v 2D prostoru musí být lineárně závislé. Takže existují 3 čísla x,y,tK taková že ne všechny najednou jsou 0 kde:

x(a1,a2)+y(b1,b2)+t(c1,c2)=(0,0)

Pokud toto přepíšeme pro každou souřadnici zvlášť, dostaneme že bod (x,y,t) leží na obou přímkách!! (z definice ležení na přímce)

Zároveň ale protože rank matice je 2, musí existovat 2 lineárně nezávislé sloupce. Búno to jsou (a1,a2) a (b1,b2) . To znamená že pro libovolný vektor (u,v)x(a1,a2)+y(b1,b2)=(u,v) unikátní řešení.

Takže pokud se koukneme na tamtu rovnici znova:

x(a1,a2)+y(b1,b2)+t(c1,c2)=(0,0)

pak první 2 čelny jsou zašpendlíkované na místě a jediná vůle je v posledním členu když ho škálujeme t čkem. ALE to znamená že rovnice může vycházet jen pro jednu hodnotu t !

Pozorování

2 body sdílí právě 1 přímku

Důkaz

stejně jako 2 přimky sdílí 1 bod

Pozorování

existují 4 body takové že každá přímka protne max 2

Důkaz

Třeba: (0,0,1),(0,1,0),(1,0,0),(1,1,1) i think

Latinský čtverec

Definice: Latinský čtverec řádu n

čtvercová tabulka n řádků a n sloupců. V každém políčku je jedno číslo od 1 do n .

Každé číslo se objevuje právě jednou v každém sloupečku a právě jednou v každém řádku.

Definice: Ortogonalita latinského čtverce

Když vezmu 2 a transparentně je položím na sebe, v každém z n2 políček dostanu dvojici čísel. Tyto 2 LČ jsou ortogonální pokud se žádná dvojice nezopakuje.

(Jelikož dvojic je n2 , každá dvojice se ve skutečnosti musí objevit právě jednou)

Pozorování

Počet ortogonálních latinských čtverců řádu n je maximálně n1

Důkaz

Nejprve pozorování: Budiž ortogonální latinské čtverce A a B oba řádu n a π permutace čísel 1,2,,n .

Vyrobíme nový latinský čtverec A . Ten bude mít na pozici (i,j) číslo π(aij) (kde aij je pozice (i,j) v LČ A ).

Po rozmyšlení je vidět že i A je ortogonální k B . Tudíž:

Pozorování

Ortogonalita LČ se nezmění přejmenováním symbolů v jednom z nich.

Představme si latinské čtverce A1,A2,,At každé 2 z nich ortogonální.

Pro každé Ai : permutujme jeho symboly tak aby měl na prvním řádku bylo 1,2,,n .

Podle pozorování víme, že i tyto A1,A2,,At jsou každý s každým ortogonální.

Jukněme, co může být na pozici (2,1) některého Ai :

Pozorování

Pro n2 existuje FPR řádu n pokudd existuje n1 navzájem ortogonálních LČ řádu n .

Důkaz

Nejprve sestrojíme FPR řádu n z n1 navzájem ortogonálních LČ řádu n .

Jako template vezmem fancy tvar:


a teď si všimni že tam je dost bodů ale málo čar. Takže podle těch LČ které jsme stále nepoužili budeme proplétat nové přímky tím gridem vpravo dole.

Pro každé m{1,2,,n} a k{1,2,,n1} vyrobíme přímku:

Lkm={sk}{(i,j)|(Sk)ij=m}

Tzn: Začneme přímku v sk a tam kde má LČ k políčko s číslem m appendneme do přímky.

Tohle je určitě FPR (důkaz vymysli na místě). Jde provést pozpátku pro vytvoření LČ z FPR. Stačí vybrat r a c libovolně.🔲

Numberphile video about M.O.L.S.

Toky v sítích

Takovej speedrun protože to určitě umíme.

Definice: Síť + tok

Síť je čtveřice (G,s,t,c) . G je graf (dvojice množiny vrcholů a relace), s a t jsou vrcholy (source a sink) a c je funkce z hran do [0,+] .

Tok je pak funkce f která dává hranám ohodnocení.

Pravidla pro toky:

val(f) je velikost toku, třeba přebytek ve stoku

Pozorování

Každá síť má maximální tok - sketch, asi přes rozbor algoritmu xd

Definice: Řez

Řez je množina hran po jejichž odstranění se graf rozpadne na více komponent

Definice: Elementární řez (partition)

Je to vlastně to samý, ale komponenty musí být 2. Obv zdroj je v A a stok je v B. val(f)=f(A,B)f(B,A)

Pozorování
  1. elementární řez je taky řez a
  2. Každý řez obsahuje elementární řez.
Důkaz

Takový hrátky z cestami. v (i) si pořidíme cestu z s do t a říkáme, že jedna z hran této cesty je v řezu. To je vidět, protože s a t jsou v jiných komponentách.

ve (ii) je to to samé. Máme řez R . Pořídíme A a B , A bude množina vrcholů do kterých se dá dostat v GR z s a B bude její doplněk. Pak tvrdíme že S(A,B)subsetR . Kdyby nebyl, tak existuje hrana v (x,y)Sr , xA a yB . Pak ale cesta do y nekřižuje R, tedy je ve stejné komponentě jako s a tedy musí být v A .

Ano, je to kokotina.

Pozorování

val(f)c(R)

Důkaz

Zadefinujeme přebytek na vrcholu -tj. rozdíl mezi přítokem a odtokem. Tento rozdíl je pak roven fΔ(A,B)=vinBfΔ(v)=fΔ(t) . První rovnost rozborem případů kudy vede hrana, druhá rovnost je triviální - všechny vrcholy mají přebytek 0.

Zlepšující hrany (augmenting path), věta o tom že maximální tok je roven minimálnímu řezu. [P 4.2.5], známe z primy.

Ford-Fulkerson algoritmus hledá cesty v síti rezerv. Když ji najde, tak ji přičte do toku. Na celočíselných hranách se zastaví a vydá maximální tok. (bez důkazu)

[P: chapter 4.4, 4.5]

Definice: Systém různých reprezentantů

Nechť M je konečný systém konečných množin. Nechť N je sjednocení všech množin mM . Potom funkci f:MN nazveme systém různých reprezen- tantů právě tehdy, když je prostá a současně mM:f(m)m .

Definice: Párování

Buď G=(V,E) graf a buď ME množina dvojic vrcholů G . Pak M nazveme párování v grafu G právě tehdy, když je každý vrchol G v nejvýše jedné dvojici v M .

Věta: Hallova

Nechť M je konečný systém konečných množin. Pak platí, že M má systém různých reprezentantů právě tehdy, když pro každou FM a sjednocení všech jejích prvků uuF platí |uuF||F| .

Věta: Hallova, bipartitní formulace

Nechť G = (V, E) je bipartitní graf s parti tami X a Y . Pak má G párování obsahující všechny vrcholy partity X právě tehdy, když pro každou M ⊆ X platí, že z ní vedou hrany k alespoň |M | různým vrcholům Y.

Pozorování

König-Egerváry theorem

Velikost maximálního párování v bipartitním grafu je rovna minimální velikosti vrcholového pokrytí (proof ommited, ale docela obvious). N

Grafová souvislost

[P: chapter 5.1, 5.2]

Definice: Vrcholová souvislost kv(G)

Pokud G je Kn pak to je n1 JINAK

kv(G) je velikost nejmenšího vrcholového řezu A .

Definice: Hranová souvislost ke(G)

ke(G) je velikost nejmenšího hranového řezu.

Definice: Hranově/Vrcholově souvislý

G je hranově/vrcholově k -souvislý pokud kev(G)k .

Pozorování

Pro graf G s alespoň 2 vrcholy:

(eE(G))(ke(G)1ke(Ge)ke(G))

“Odebráním libovolné hrany se ke může jedině snížit a to maximálně o 1”

(FE(G))(ke(GF)ke(G))

“Odebráním libovolné množiny hran se ke může jedině snížit”

Důkaz

To první jistě plyne z toho druhého

Pozorování

ke(G) se po odebrání hrany sníží maximálně o 1 (ke(Ge)ke(G)1 )

Důkaz
  • Vezmeme ke(G)2 velkou FE(Ge)
  • Pak F=F{e} .
  • Takže |F|ke(G)1 .

Z toho plyne že (Ge)F je spojitý. ale |F|

Graph connectivity cont’d and double counting

[P: chapter 5.3] and [P: chapter 6.3, 6.4]

Pozorování

Graf je vrcholově 2-souvislý právě tehdy když zle sestrojit z cyklu kterému přilepujeme uši. (Ear lemma, ušní lema, ušizmus)

Důkaz

:

Cyklus je jistě vrcholově 2-souvislý. Přidáním ucha nemůže vzniknout vrchol takový že po jeho odebrání se graf rozpadne.

:

Budiž graf G který je vrcholově 2-souvislý. K němu vyrobíme co největší podgraf H který jsme vytvořili z cyklu a přilepování uší.

Tvrdím, že H je indukovaný podgraf. Pokud ne, pak existuje dvojice vrcholů mezi kterýma nevede hrana v H ale vede hrana v G . Pak ale H není největší možný. Tudíž H musí být indukovaný.

Předpokládám že existuje vrchol, který je v G ale není v H . Jelikož G je souvislý. Musí existovat dvojice vrcholů u , v která sousedí a u je v H ale v ne.

Jelikož je G vrcholově 2-souvislý, po odebrání u se nemůže rozpadnout. Tudíž stále existuje cesta z v do u . To je ale ucho které jsme měli přidat takže všechny vrcholy G jsou v H .

Jelikož H a G mají stejné vrchly a jelikož H je indukovaný podgraf, musí to být stejné grafy. 🔲

Ramseyho teorie

Když máme dost velkou hromadu věcí tak v ní musí být nějaká struktura - Pepík

(syntax shugar: [n]=def{1,2,,n} )

Pozorování

Pigeonhole principle

Množina [1+n1+n2++nt] kde každý prvek je obarvený jednou z t barev.

Pak existuje barva i která se objeví ni+1 -krát

Důkaz

Pokud ne, pak je obarveno jen n1+n2++nt koulí.

Pozorování

6-členná party

Pokdu obarvíme hrany K6 červeně a modře, pak existuje jednobarevný trojúhelník.

Důkaz

(Note: nefunguje pro K5 . (pentagon s hvězdou uprostřed))

Vem vrchol. Koukni na 5 odchozích vrcholů. 3 z nich musí mít stejnou barvu BÚNO červená.

Teď jukni na tyhle 3 vrcholy. Můžou se stát 2 věci:

Definice: Ramseyho číslo R(k,l)

R(k,l) je nejmenší možné číslo takové, že kdykoliv obarvujeme hrany grafu KR(k,l) červeně a modře, pak existuje buď:

(Poznámka: graf ve kterém hledáme musí být úplný. Grafy které hledáme musí být úplné)

Note: R(3,3)=6 (6-členná party)

Pozorování

(Ramsey pro hrany a 2 barvy)

(a,b1)(R(a,b)([a1+b1],[a1]))

Důkaz

Indukcí po a+b .

Init: pro a=1 nebo b=1 pak K1 funguje haha. (bo K1 má 0 hran takže pro ně platí všechno)

Indukční předpoklad:

Budiž n=R(a1,b)+R(a,b1) a vem Kn

Teď to přepíšeme aby to vypadalo holubníkovitě:

n1=1+Jedna extra hrana(R(a1,b)1)+(R(a,b1)1)

Vem v , vrchol Kn , a zase jukni na jeho hrany. Holub tvrdí že bude:

  1. R(a1,b) červených hran NEBO
  2. R(a,b1) modrých hran.

Pokud 1. pak z předpokladu víme že:

Jinak 2. pak analogicky pro modré sousedy.

Pozorování

lower bound R(k,k)

(k3)(R(k,k)>2k2)

Důkaz

Chňapni Kn kde n2k2 a obarvi všechny hrany nezávisle.

Tohle nemusí fungovat obv ALE

Jak často se stane, že když vyberu množinu X o k vrcholech pak mají všechny stejnou barvu? well this: (12)([k],[2])+(12)([k],[2])

Jaká je šance že nějaký k -prvková množina vrcholů má všechny hrany stejné? well než počet k -prvkových množin ·Pfail

něco něco idk nemám rád pravděpodobnost

IF YOU HAVE A SUFFICIENT AMOUNT OF BALLS

Definice: ([x],[p])

Budiž množina X a p .

([x],[p]) je množina všech p -prvkových podmnožin X .

Pozorování

Nekonečná verze Ramseyovy věty pro hypergrafy (bro jestli tohle nezní cool tak idk)

Pro libovolné obarvení ([],[P]) pomocí t barev (barva je vlastnost podmnožiny)

existuje nekonečná množina A kde Q([A],[P]) dostanou stejnou barvu.

Důkaz

Indukce podél p . Pro p=1 , barvíme pomocí t barev, takže nějaká barva se objeví nekonečně mnoho krát.

Řekněme že pro p , vem p+1 .

Nechť C:([],[p+1])[t] je barvení všech (p+1) -tic pomocí barev 1,2,,t .

postavíme podmnožiny A1A2A3 kde A1= a v1,v2, kde v1=1 .

Pak předpokládáĺe že už máme A1,A2,,Ai a v1,v2,,vi . Definujeme c:([Ai ?],[p]) přiřazením barvy c(Q)p -tici Q .

Indukcí, najdi nekonečnou podmnožinu $A_i+2 sube A_i$ tak že všechny
$p$-prvkové podmnožiny dostanou stejnou barvu.
Pozorování

König lemma (O nekonečných stromech)

(důkaz nebude ve zkoušce)

Pokud T je nekonečný strom se všemi stupni konečnými.

Čapni libovolný vrchol. Pak existuje nekonečná cesta po T z tohoto bodu.

(jakože lol obviously wtf)

Důkaz

(sketch) Vem vrchol x0 jako kořen. ten má konečně mnoho sousedů. Jukněme na ně. Součet jejich velikostí je nekonečno. takže alespoň jeden ze sousedů musí být nekonečný strom. takže půjdeme tam. Ez done

Vibe: A teď tohle umí spoutat konečné a nekonečné struktury

Pozorování

Ramsey pro hypergrafy, konečný (still cool)

Vem p,t,k1,,kt . Pak existuje konečné číslo Rp(k1kt) takové že kdykoliv obarvujeme (([n]),[p]) kde nRp(k1,,kt) pak

#(Dec 17): Ramsey theory, cont’d [P: chapter 7.3].:

Věta: Happy ending problem

Pro jakoukoliv množinu pěti bodů v rovině v obecné poloze (ne 3 na přímce) tvoří alespoň jedna čtveřice konvexní čtyřúhelník.

Důkaz

Vezmeme kovexní obal (covex hull) těchto pěti bodů. (i) Pokud je to pětiúhelník -> jakékoliv 4 dělají konvexní čtyřúhelník. (ii) Pokud je to čtyřúhelník, tak ty čtyři na okraji Předpokládejme tedy že obal je trojúhelník. Ostatní dva body nemůžou ležet na jeho okraji (obecná poloha), ale uvnitř.

Vezmeme tedy jeden a postavíme 6 částí jako na obrázku. Podle toho v jaké části leží a5 vybereme zbývající dva vrcholy trojúhelníku společně s a4 a máme hotovo. a5 opět nemůže ležet mezi částmi, kvůli obecné poloze.

Věta: Erdős-Szekeres theorem

Pro t4 , jakákoliv mnozina R4(5,t) bodů v rovině v obecné poloze obsahuje alespoň t bodů tvořící konvexní čtyřúhelník.

Důkaz

Pořídíme si množinu S R4(5,t) bodů v rovině. V ní obarvíme všechny čtveřice c:([S],[4])[2] tak, že

Množství bodů (Ramseyovo číslo) nám teď říká, že:

První případ se nemůže stát, je to přímá negace Happy-ending problému. Takže určitě existuje nějaká t-tice A2 , ve které X([A2],[4]):c(X)=2 . Vezměme konvexní obal této A2 . Pokud má t vrcholů, tak jsme vyhráli. Pokud má měné než t vrcholů, tak existuje nějaký vrchol z , co je uvnitř. To znamená že existují nějaké body x1,x2,x3 které tvoří trojúhelník ve kterém je z uzavřeno.

Tato čtveřice bodů ale netvoří čtyřúhelník, což je spor, protože mají barvu 2.

Error-correcting codes

[P: chapter 8]

Motivační příklad. Pojďme si posílat zprávy. Komunikační linka je ale nestabilní a mění nám znaky za jiné. Chtěli bychom za málo poslaných znaků navíc dokázat opravit co nejvíce takto změněných znaků.

Pro jednoduchost pojďme posílat bity. Náš jazyk má tedy pouze dva znaky. Abychom, dokázali opravit nějakou chybu, každý bit co pošleme ztrojíme. Místo “1101” pošleme “111111000111”. Jakýkoliv změněný bit dokážeme opravit, protože druhé dva ve trojici zůstanou nezměněny. Pokud ale někdo změní dva bity, můžeme mít smůlu a kód opravit špatně.

Definice: Primitivy
Definice: Hammingova vzdálenost

Je to jednoduše počet rozdílných znaků ve dvou slovech. Formálně x,yΣn,d(x,y)=def|{i{1,,n}|xiyi}| Rozmysli si, že je to metrika na Σn .

Definice: Hamming weight (váha?)

Je definovaná jako počet “nenulových” znaků, nebo Hammingova vzdálenost od nulového vektoru.

Jak se tyto primitivy používají?

S je odesílatel, R je přijímač. S i R znají nějakou bijekci π mezi všemy kódy CsubsetΣn a všemi možnými zprávami. Je to bijekce, tedy množina kódů a všech zpráv jsou stejně velké. Všechny zprávy budou tipicky kratší než n, jinak by to byl docela naprd kód.

S tedy vezme zprávu, přeloží ji na kód a pošle R. R zprávu přijme, možná s nějakými chybami. Opraví ji a pomocí π1 ji přeloží zpátky na zprávu.

Definice: (n,k,d)q kód

Předpokládejme abecedu o alespoň dvou znacích a C je kód s alespoň dvěma codewords. Tento kód má pak nějaké parametry.

To nám dává (n,k,d)q kód. Rozmysli si, kolik dokážeme v takovém kódu opravit chyb.

řešení d12

Příklady kódů. Náš opakující se kód ze začátku byl (n,1,n)qkód , kde n je “činitel” (slova jsou roznásobené znaky). Slova jsou dlouhá n , to si můžeme zvolit jak chceme. Množina kódů je stejně velká jako abeceda, protože akorát vezme každý znak z abecedy a dá ho n krát za sebou. k je tedy 1, protože je to logq(q) . Minimální vzdálenost bude přesně d=n , protože každá dvě slova jsou kompletně jiná.

Rozmysli si, co je za kód co nic nedělá. Pouze pošle slovo nad nějakou abecedou Σ velikosti q délky n . Nijak ho nepřeloží.

Hint: n je zadané, k=logq(|C|) -> kolik je |C| ? d= minimální vzdálenost dvou kódů.

Řešení: (n,n,1)q . To protože kódů je qn - jsou to všechny zprávy. Vzdálenost dvou kódů je malá, pouze 1.

Parity code. q=2 a naše kódy budou mít vždy součet =0 nad 2 . Tento kód bude (n,n1,2)2 kód. |C|=2n1 , prvních n1 znaků si můžeme vybrat a poslední určíme tak, aby byl součet co nejmenší. k=log2(2n1)=n1 . Vzdálenost d je 2, protože dva kódy nemůžou mít vzdálenost 1, to by znamenalo že jeden z nich má součet =1 .

Teďka se řeší nějaký boundy na to, jak velký můžou bejt ty množiny kódů (jakoby k ), když nám někdo zadá n,d,q. Upřímně doufám že to ommitne protože to sou fakt hovna xd.

Definice: Singleton bound, Hamming bound, Gilbert-Varshamov bound,

ommited by Džanek, read up on [P 8.3]

Definice: Linear codes

Lineární kód je podprostor prostoru Zqn . Pokud je to také (n,k,d)q kód, tak se píše do hranatých závorek, je totiž důležitej :)

Těmi kódy co posíláme jsou opravdu myšleny vektory toho podprostoru. Čím větší si vezmu, tím má větší dimenzi a tím se mi zvětšuje k . Ale kvůli tomu bude menší d . Ještě existuje pojem generator matrix - to jsou bazické vektory C nasázené do sloupce. Z toho se dá vyrobit parity check - to je taky matice, ale tentokrát báze kolmých vektorů.

Vynásobením xH lze jednoduše ověřit, jestli x do C patří, či nikoliv.

Pozorování

Pokud je C an [n,k,d]q -kód, tak dim(C)=k

Důkaz

Pořiďme si l=defdim(C) . {c1,,cl} jsou bazické vektory C . C je nyní složené z lineárních kombinací těchto vektorů i=0laici . Pro každé ai máme q možností jak si vybrat (protože |Fq|=q ). Jelikož jsou vektory lineárně nezávislé, tak je celkem ql různých kódů.

Z toho k=logq(ql)=l 🔲

Pozorování

Pokud je CsubsetFqn [n,k,d]q - kód s 0<k<n , tak

d=min{wt(x|xinC\{0}}

wt je Hammming weight - vzdálenost od 0.

Důkaz

Zafixujeme x0 s nejmenší hammingovskou váhou. Dokazujeme že d=wt(x) .

Jelikož C je kód ve kterém je 0 i x, tak d(x,0)=wt(x)d z definice d - je nejmenší takové. V C také existují různé vektory y,z , jejichž d(y,z)=d . Jelikož C je podprostor, tak yzC . Tudíž wt(x)wt(yz) - to víme protože x je nejmenší takové.

Celkově d=d(y,z)=wt(yz)wt(x) . Složením nerovností 🔲.

Definice: Hamming bound

Když fixneme n a d tak k musí být small.

(wait je tohle hamming code?)

$C sube Z_2^n je (n,k,d=2t+1) pak |C|2nV(t) .

Důkaz

Pro každé xC jukni na kouli Bn(x,t) . Protože Cd=2t+1 , žádné 2 koule se nepřekrývají.

(slova, slova … důkaz že se nepřekrývají)

pak |C|>n2V(t) protože velikost prostoru je 2n a V(t) je volume koule a pokud se nepřekrývají tak něco něco

Gilbert-Varnshmdr Bound

v,d1C2nwithΔ(c)=d and |C|2nV(d1)

Zdroje

uuuuwwwiieee