]> mj.ucw.cz Git - ads2.git/commitdiff
Toky: Korektury a cviceni
authorMartin Mares <mj@ucw.cz>
Fri, 27 Jan 2012 10:15:11 +0000 (11:15 +0100)
committerMartin Mares <mj@ucw.cz>
Fri, 27 Jan 2012 10:15:11 +0000 (11:15 +0100)
2-toky/2-toky.tex

index b797d89f1233f35c51bccead4767c4b617a3e39c..6e1d213b8b1c931186051cd2f49c410728b3e608 100644 (file)
@@ -2,44 +2,45 @@
 
 \prednaska{2}{Toky v sítích}{}
 
-\h{Motivaèní úlohy}
-
 Pøedstavme si, ¾e~by v~budovì fakulty na~Malé Stranì existoval èajovod, který
-by rozvádìl èaj do~ka¾dé uèebny. Znázornìme si to orientovaným grafem, v~nìm¾
+by rozvádìl èaj do~v¹ech uèeben. Znázornìme si to orientovaným grafem, v~nìm¾
 jeden významný vrchol pøedstavuje èajovar a~druhý uèebnu, ve~které sedíme.
-Hrany mezi vrcholy pak pøedstavují vìtvící se trubky, které mají èaj rozvádìt.
-Jak dopravit co nejvíce èaje do~dané uèebny?
+Hrany mezi vrcholy pak znázoròují vìtvící se trubky, které mají èaj rozvádìt.
+Chceme dopravit co nejvíce èaje do~dané uèebny, ale není to tak snadné,
+proto¾e ka¾dá trubka má omezenou kapacitu -- za jednotku èasu jí mù¾e
+protéci jen urèité mno¾ství èaje, pro ka¾dou trubku obecnì jiné. Mù¾e se
+tedy vyplatit za \uv{tlustou} trubkou tok èaje rozvìtvit a dál pokraèovat
+více tenkými trubkami atd.
 
 \figure{toky01.eps}{Èajovod}{2in}
 
-Jiným pøíkladem mù¾e být poèítaèová sí» na~pøenos dat, která se sestává z~pøenosových linek
-spojených pomocí routerù. Data se sice obvykle pøená¹ejí po~paketech, ale to
-mù¾eme pøi dne¹ních rychlostech pøenosu zanedbat a pova¾ovat data za spojitá.
-Jak pøená¹et data mezi dvìma poèítaèi v~síti co nejrychleji?
+K~podobnému problému dojdeme, budeme-li studovat pøenos dat v~poèítaèových sítích.
+Roli trubek zde hrají pøenosové linky, kapacita øíká, kolik dat pøenesou za~sekundu.
+Linky jsou spojené pomocí routerù a opìt chceme dopravit co nejvíce dat z~jednoho
+místa v~síti na druhé. Data sice na rozdíl od èaje nejsou spojitá (pøená¹íme je po bytech
+nebo rovnou po paketech), ale pøi dne¹ních rychlostech pøenosu je za taková mù¾eme
+pova¾ovat.
 
 \h{Toky v~sítích}
 
-\s{Definice:} {\I Sí»} je uspoøádaná pìtice $(V,E,z,s,c)$, pro ní¾ platí:
+\s{Definice:} {\I Sí»} je uspoøádaná pìtice $(V,E,z,s,c)$, pøièem¾:
 \itemize\ibull
 \:$(V,E)$ je orientovaný graf.
 \:$c:E\to{\bb R}_{0}^{+}$ je funkce pøiøazující hranám jejich {\I kapacity.}
-\:$z,s \in V$ jsou dva vrcholy grafu, kterým øíkáme {\I zdroj} a~{\I stok} (spotøebiè).
-\:Graf je symetrický, tedy $\forall u,v \in V: uv \in E \Leftrightarrow vu \in E$\foot{%
+\:$z,s \in V$ jsou dva vrcholy grafu, kterým øíkáme {\I zdroj} a~{\I stok} (neboli {\I spotøebiè}).
+\:Graf je symetrický -- je-li $uv$ hranou grafu, je jí i~$vu$.\foot{%
 Nebude-li hrozit nedorozumìní, budeme hranu z~vrcholu~$u$ do vrcholu~$v$
 znaèit $uv$ namísto formálnìj¹ího, ale ménì pøehledného $(u,v)$. Podobnì u~neorientovaných
-hran pí¹eme $uv$ namísto $\{u,v\}$.}
-(tuto podmínku si~mù¾eme zvolit bez~újmy na~obecnosti, nebo» v¾dy mù¾eme
-do~grafu pøidat hranu, která v~nìm je¹tì nebyla, a~dát jí nulovou kapacitu).
-
+hran pí¹eme $uv$ namísto $\{u,v\}$.} Kdyby nìkterá z~opaèných hran chybìla,
+mù¾eme ji pøidat s~nulovou kapacitou.
 \endlist
 
-\s{Definice:} {\I Tok} je funkce $f:E \to {\bb R}_{0}^{+}$ taková, ¾e~platí:
+\s{Definice:} {\I Tok} je funkce $f:E \to {\bb R}_{0}^{+}$, pro ní¾ platí:
 \numlist{\ndotted}
 \:Tok po~ka¾dé hranì je omezen její kapacitou: $\forall e \in E : f(e)\le c(e)$.
-\:{\I Kirchhoffùv zákon:}
+\:{\I Kirchhoffùv zákon:} Do ka¾dého vrcholu pøiteèe stejnì, jako z~nìj odteèe (\uv{sí» tìsní}).
+Jedinou výjimku tvoøí zdroj a spotøebiè. Formálnì:
 $$\forall v \in V \setminus \{z,s\}: \sum_{u: uv \in E}{f(uv)}=\sum_{u: vu \in E}{f(vu)}.$$
-Neboli pro~ka¾dý vrchol kromì zdroje a~stoku platí, ¾e~to, co do~nìj pøitéká,
-je stejnì velké jako to, co z~nìj odtéká (\uv{sí» tìsní}).
 \endlist
 
 \figure{sit.eps}{Pøíklad sítì. Èísla pøedstavují kapacity jednotlivých hran.}{2.5in}
@@ -90,9 +91,15 @@ z~t
 Nám ale bude staèít studovat sítì s~racionálními kapacitami, kde existence maximálního
 toku bude zjevná u¾ z~toho, ze sestrojíme algoritmus, který takový tok najde.
 
-\s{První pokus:} Hledejme cestu $P$ ze~$z$ do~$s$ takovou, ¾e~$\forall e \in
-P: f(e) < c(e)$ (po~v¹ech jejích hranách teèe ostøe ménì, ne¾ jim dovolují
-jejich kapacity). Pak zjevnì mù¾eme tok upravit tak, aby se~jeho velikost
+\h{Fordùv-Fulkersonùv algoritmus}
+
+Nejjednodu¹¹í z~algoritmù na hledání maximálního toku pochází od Forda
+a Fulkersona. Je zalo¾en na prosté my¹lence: zaèname s~nulovým tokem a postupnì
+ho budeme vylep¹ovat, a¾ dostaneme maximální tok.
+
+Uva¾ujme, jak by vylep¹ování mohlo probíhat.
+Nech» existuje cesta $P$ ze~$z$ do~$s$ taková, ¾e po v¹ech jejích hranách
+teèe ménì, ne¾ dovolují kapacity. Pak zjevnì mù¾eme tok upravit tak, aby se~jeho velikost
 zvìt¹ila. Zvolme
 $$\varepsilon := \min_{e \in P} \left(c(e) - f(e)\right).$$
 Po ka¾dé hranì zvý¹íme prùtok o~$\varepsilon$, èili definujeme nový tok~$f'$ takto:
@@ -110,7 +117,7 @@ se~p
 Opakujme tento proces tak dlouho, dokud existují cesty, po nich¾ mù¾eme tok
 zlep¹ovat. A¾ se algoritmus zastaví (co¾ by obecnì nemusel, ale to nás je¹tì chvíli
 trápit nemusí), získáme maximální tok?
-Pøekvapivì ne v¾dy. Uva¾ujme napøíklad síti nakreslenou pod tímto odstavcem.
+Pøekvapivì ne v¾dy. Uva¾ujme napøíklad sí» nakreslenou pod tímto odstavcem.
 Najdeme-li nejdøíve cestu pøes svislou hranu (na obrázku tuènì, zlep¹ujeme o~1),
 potom jednu cestu po horní dvojici hran (zlep¹ujeme o~9) a jednu po spodní
 dvojici (zlep¹ujeme také o~9), dostaneme tok o~velikosti 19 a ¾ádná dal¹í cesta
@@ -127,13 +134,14 @@ proti sm
 \s{Definice:} {\I Rezerva hrany} $uv$ je $r(uv):=c(uv) - f(uv) + f(vu).$
 
 \s{Definice:} Hranì budeme øíkat {\I nasycená,} pokud má nulovou rezervu.
-Nenasycená cesta je taková, její¾ v¹echny hrany mají nenulovou rezervu.
+{\I Nenasycená cesta} je taková, její¾ v¹echny hrany mají nenulovou rezervu.
 
 \smallskip
 Budeme tedy opakovanì hledat nenasycené cesty a tok po~nich zlep¹ovat.
-Postupnì doká¾eme, ¾e tento postup je koneèný a v~ka¾dé síti najde maximální tok.
+Postupnì doká¾eme, ¾e tento postup je koneèný a ¾e v~ka¾dé síti najde maximální tok.
 
 \algo{FordFulkerson}
+\algin Sí».
 \:$f \leftarrow$ libovolný tok, napø. v¹ude nulový.
 \:Dokud existuje nenasycená cesta~$P$ ze $z$ do $s$, opakujeme:
 \::$\varepsilon \leftarrow \min \{r(e) \mid e \in P\}$.
@@ -141,17 +149,17 @@ Postupn
 \:::$\delta \leftarrow \min \{f(vu),\varepsilon\}$
 \:::$f(vu) \leftarrow f(vu) - \delta$
 \:::$f(uv) \leftarrow f(uv) + \varepsilon - \delta$
-\:Prohlásíme $f$ za~maximální tok.
+\algout Maximální tok~$f$.
 \endalgo
 
 \s{Koneènost:} Zastaví se~Fordùv-Fulkersonùv algoritmus?
 
 \itemize\ibull
 
-\:Pro~celoèíselné kapacity se~v~ka¾dém kroku zvìt¹í velikost toku alespoò o~1.
+\:Pakli¾e jsou v¹echny kapacity celá èísla, velikost toku se~v~ka¾dém kroku zvìt¹í alespoò o~1.
 Algoritmus se~tedy zastaví po~nejvíce tolika krocích, kolik je nìjaká horní
 mez pro~velikost maximálního toku -- napø. souèet kapacit v¹ech hran
-vedoucích do~stoku (tedy $c^+(s)$).
+vedoucích do~stoku ($c^+(s)$).
 
 \:Pro~racionální kapacity vyu¾ijeme jednoduchý trik. Nech» $M$ je nejmen¹í
 spoleèný násobek jmenovatelù v¹ech kapacit. Spustíme-li algoritmus na sí»
@@ -160,33 +168,28 @@ s
 celoèíselná, tak¾e se algoritmus jistì zastaví.
 
 \:Na~síti s~iracionálními kapacitami se~algoritmus chová mnohdy divoce, nemusí
-se~zastavit, ba ani konvergovat ke~správnému výsledku. (Zkuste vymyslet pøíklad
-takové sítì.)
+se~zastavit, ba ani konvergovat ke~správnému výsledku (viz cvièení \exref{ffirac}).
 
 \endlist
 
-\s{Maximalita:} Kdy¾ se algoritmus zastaví, je tok~$f$ maximální? K~tomu se
-bude hodit zavést øezy.
+\s{Maximalita:} U¾ víme, ¾e algoritmus se zastaví a vydá jako výsledek nìjaký tok~$f$.
+Je tento tok maximální? Doká¾eme to pomocí øezù.
 
 \s{Definice:} Pro libovolné dvì mno¾iny vrcholù $A$ a~$B$ budeme znaèit $E(A,B)$
 mno¾inu hran vedoucích z~$A$ do~$B$, tedy $E(A,B) = E\cap (A\times B)$.
 Je-li dále $f$ nìjaká funkce pøiøazující hranám èísla, oznaèíme:
 
 \itemize\ibull
-\:$f(A,B) = \sum_{e\in E(A,B)} f(e)$ (prùtok z~$A$ do~$B$)
-\:$f^\Delta(A,B) = f(A,B) - f(B,A)$ (èistý prùtok z~$A$ do~$B$)
+\:$f(A,B) := \sum_{e\in E(A,B)} f(e)$ (prùtok z~$A$ do~$B$)
+\:$f^\Delta(A,B) := f(A,B) - f(B,A)$ (èistý prùtok z~$A$ do~$B$)
 \endlist
 
 \s{Definice:} {\I Øez} je uspoøádaná dvojice mno¾in vrcholù ($A,B$) taková, ¾e
-$A$ a $B$ jsou disjunktní, dohromady obsahují v¹echny vrcholy, $A$ obsahuje zdroj a $B$
+$A$ a $B$ jsou disjunktní, dohromady obsahují v¹echny vrcholy a navíc $A$ obsahuje zdroj a $B$
 obsahuje stok.
 Mno¾inì~$A$ budeme øíkat {\I levá mno¾ina øezu,} mno¾inì~$B$ {\I pravá.}
 {\I Kapacitu øezu} definujeme jako souèet kapacit hran zleva doprava, tedy $c(A,B)$.
 
-\s{Poznámka:} Jiná obvyklá definice øezu øíká,
-¾e øez je mno¾ina hran grafu, po~jejím¾ odebrání se~graf rozpadne na~více
-komponent. Tuto vlastnost mají i na¹e øezy, ale opaènì to nemusí platit.
-
 \s{Lemma:} Pro ka¾dý øez $(A,B)$ a ka¾dý tok~$f$ platí $f^\Delta(A,B)
 = \vert f\vert$.
 
@@ -199,7 +202,7 @@ Prvn
 do~jiného vrcholu v~$B$ pøispìje jednou kladnì a jednou zápornì; hrany le¾ící
 celé mimo~$B$ nepøispìjí vùbec; hrany s~jedním koncem v~$B$ a druhým mimo pøispìjí
 jednou, pøièem¾ znaménko se bude li¹it podle toho, který konec je v~$B$. Druhá
-rovnost je snadná: v¹echny vrcholy v~$B$ mimo spotøebiè mají podle Kirchhoffova
+rovnost je snadná: v¹echny vrcholy v~$B$ kromì spotøebièe mají podle Kirchhoffova
 zákona nulový pøebytek (zdroj toti¾ v~$B$ nele¾í).
 \qed
 
@@ -210,21 +213,22 @@ p
 (Velikost ka¾dého toku je shora omezena kapacitou ka¾dého øezu.)
 
 \proof
-$f^\Delta(A,B) = f(A,B) - f(B,A) \le f(A,B) \le c(A,B)$.
+$\vert f\vert = f^\Delta(A,B) = f(A,B) - f(B,A) \le f(A,B) \le c(A,B)$.
 \qed
 
 \s{Dùsledek:} Pokud $\vert f\vert = c(A,B)$, pak je tok~$f$ maximální a øez~$(A,B)$
-minimální. Jinými slovy pokud najdeme dvojici tok a stejnì velký øez, mù¾eme øez pou¾ít
-jako certifikát maximality toku. Následující vìta nám zaruèí, ¾e je to v¾dy mo¾né:
+minimální. Jinými slovy pokud najdeme k~nìjakému toku stejnì velký øez, mù¾eme øez pou¾ít
+jako certifikát maximality toku a tok jako certifikát minimality øezu. Následující vìta
+nám zaruèí, ¾e je to v¾dy mo¾né:
 
-\s{Vìta:} Pokud se~Fordùv-Fulkersonùv algoritmus zastaví, tak vydá maximální tok.
+\s{Vìta:} Pokud se~Fordùv-Fulkersonùv algoritmus zastaví, vydá maximální tok.
 
 \proof
-Nech» se~Fordùv-Fulkersonùv algoritmus zastaví. Definujme mno¾iny vrcholù $A
+Nech» se algoritmus zastaví. Uva¾me mno¾iny vrcholù $A
 := \{v \in V \mid \hbox{existuje nenasycená cesta ze~$z$ do~$v$}\}$ a~$B := V \setminus A$.
 
 Dvojice $(A,B)$ je øez, nebo» $z \in A$ (ze~$z$ do~$z$ existuje cesta délky 0)
-a~$s \in B$ (kdyby $s \not\in B$, musela by existovat nenasycená cesta ze~$z$ do~$s$,
+a~$s \in B$ (kdyby $s$ nele¾elo v~$B$, musela by existovat nenasycená cesta ze~$z$ do~$s$,
 tudí¾ by algoritmus neskonèil, nýbr¾ by po této cestì stávající tok vylep¹il).
 
 Dále víme, ¾e~v¹echny hrany øezu mají nulovou rezervu: kdyby toti¾ pro nìjaké $u\in A$
@@ -238,7 +242,7 @@ jsme tedy 
 øez je minimální a tok~$f$ maximální.
 \qed
 
-Nyní ji¾ mù¾eme vyslovit vìtu o~chování Fordova-Fulkersonova algoritmu:
+Tím jsme dokázali vìtu o~správnosti Fordova-Fulkersonova algoritmu:
 
 \s{Vìta:} Pro ka¾dou sí» s~racionálními kapacitami se~Fordùv-Fulkersonùv algoritmus
 zastaví a~vydá maximální tok a~minimální øez.
@@ -251,25 +255,24 @@ Kdy
 a~ten bude zase celoèíselný (algoritmus nikde nevytváøí z~celých èísel necelá).
 \qed
 
-To, ¾e~umíme najít celoèíselné øe¹ení, není vùbec samozøejmé.
-(U~jiných problémù takové ¹tìstí mít nebudeme.)
-Uka¾me si rovnou jednu aplikaci, která celoèíselnost vyu¾ije.
+To, ¾e~umíme najít celoèíselné øe¹ení, není vùbec samozøejmé. (V~kapitole
+o~\NP-úplnosti se setkáme s~problémy, které jsou pro racionální èísla snadné
+a pro celá obtí¾né.) Uka¾me rovnou jednu aplikaci, která celoèíselnosti vyu¾ije.
 
 \h{Hledání nejvìt¹ího párování v~bipartitních grafech}
 
 \s{Definice:} Mno¾ina hran $F \subseteq E$ se~nazývá {\I párování}, jestli¾e
-¾ádné dvì hrany této mno¾iny nemají spoleèný ani jeden vrchol. Neboli $\forall
-e,f \in F : e \cap f = \emptyset$. {\I Velikostí} párování myslíme poèet jeho
-hran.
+¾ádné dvì hrany této mno¾iny nemají spoleèný vrchol.
+{\I Velikostí} párování myslíme poèet jeho hran.
 
 Chceme-li v~daném bipartitním grafu $(V,E)$ nalézt nejvìt¹í párování,
 pøetvoøíme graf nejprve na sí» $(V',E',c,z,s)$ takto:
 
 \itemize\ibull
 \:Nalezneme partity grafu, budeme jim øíkat {\I levá} a {\I pravá.}
+\:V¹echny hrany zorientujeme zleva doprava.
 \:Pøidáme zdroj~$z$ a vedeme z~nìj hrany do v¹ech vrcholù levé partity.
 \:Pøidáme spotøebiè~$s$ a vedeme do nìj hrany ze~v¹ech vrcholù pravé partity.
-\:Hrany zadaného grafu zorientujeme zleva doprava.
 \:V¹em hranám nastavíme jednotkovou kapacitu.
 \endlist
 
@@ -288,7 +291,7 @@ alespo
 Zbývá nahlédnout, ¾e nalezené párování je nejvìt¹í mo¾né. K~tomu si staèí v¹imnout,
 ¾e z~toku vytvoøíme párování o~tolika hranách, kolik je velikost toku, a naopak
 z~ka¾dého párování umíme vytvoøit celoèíselný tok odpovídající velikosti.
-Jinými slovy nalezli jsme bijekci mezi mno¾inou v¹ech celoèíselných tokù
+Nalezli jsme bijekci mezi mno¾inou v¹ech celoèíselných tokù
 a mno¾inou v¹ech párování a tato bijekce zachovává velikost. Nejvìt¹í
 tok tedy musí odpovídat nejvìt¹ímu párování.
 
@@ -296,7 +299,7 @@ Nav
 pracuje pøekvapivì rychle:
 
 \s{Vìta:} Pro sí», její¾ v¹echny kapacity jsou jednotkové, nalezne Fordùv-Fulkersonùv
-algoritmus maximální tok v~èase $\O(nm)$.
+algoritmus maximální tok v~èase $\O(mn)$.
 
 \proof
 Jedna iterace algoritmu bì¾í v~èase $\O(m)$: nenasycenou cestu najdeme prohledáním
@@ -321,7 +324,8 @@ tok Fordov
 \ex{Najdìte pøíklad sítì s~nejvý¹e 10 vrcholy a 10 hranami, na ní¾ Fordùv-Fulkersonùv
 algoritmus provede více ne¾ milion iterací.}
 
-\exx{Najdìte sí» s~reálnými kapacitami, na ní¾ Fordùv-Fulkersonùv algoritmus nedobìhne.}
+\exxx{Najdìte sí» s~reálnými kapacitami, na ní¾ Fordùv-Fulkersonùv algoritmus nedobìhne.}
+\exid{ffirac}
 
 \ex{Navrhnìte algoritmus, který pro zadaný orientovaný graf a jeho vrcholy $u$ a~$v$
 nalezne nejvìt¹í mo¾ný systém hranovì disjunktních cest z~$u$ do~$v$.}
@@ -331,18 +335,17 @@ disjunktn
 
 \ex{Mìjme ¹achovnici $R\times S$, z~ní¾ políèko¾rout se¾ral nìkterá políèka. Chceme na ni
 rozestavìt co nejvíce ¹achových vì¾í tak, aby se navzájem neohro¾ovaly. Vì¾ mù¾eme postavit
-na libovolné nese¾rané políèko a ohro¾uje v¹echny vì¾e v~tém¾e øádku èi sloupci. Navrhnìte
+na libovolné nese¾rané políèko a ohro¾uje v¹echny vì¾e v~tém¾e øádku i sloupci. Navrhnìte
 efektivní algoritmus, který takové rozestavìní najde.}
 
-\ex{Situace stejná jako v~minulém cvièení, ale dvì vì¾e se neohro¾ují, pokud je na
-jejich pøímé spojnici alespoò jedno políèko se¾rané.}
+\exx{Situace stejná jako v~minulém cvièení, ale dvì vì¾e se neohro¾ují pøes se¾raná políèka.}
 
 \ex{Opìt ¹achovnice po zásahu políèko¾routa. Chceme na nese¾raná políèka rozmístit kostky
 velikosti $1\times 2$ políèka tak, aby ka¾dé nese¾rané políèko bylo pokryto právì jednou kostkou.}
 
 \ex{Dopravní problém: Uva¾ujme továrny $T_1, \ldots, T_p$ a obchody $O_1, \ldots, O_q$. V¹ichni
 vyrábìjí a prodavají tentý¾ druh zbo¾í. Továrna $T_i$ ho dennì vyprodukuje $t_i$ kusù, obchod
-$O_j$ dennì spotøebuje $o_j$ kusù. Navíc máme bipartitní graf urèující, která továrna mù¾e
+$O_j$ dennì spotøebuje $o_j$ kusù. Navíc známe bipartitní graf urèující, která továrna mù¾e
 dodávat zbo¾í kterému obchodu. Najdìte efektivní algoritmus, který zjistí, zda je po¾adavky
 obchodù mo¾né splnit, ani¾ by se pøekroèily výrobní kapacity továren, a~pokud je to mo¾né,
 vypí¹e, ze~které továrny se má pøepravit kolik zbo¾í do kterého obchodu.}
@@ -352,10 +355,18 @@ dolu~$D_i$ stoj
 suroviny. Továrna~$T_j$ potøebuje ke~své èinnosti zadanou mno¾inu surovin (pøiøazení
 surovin továrnám je dáno jako bipartitní graf na vstupu) a pokud jsou v~provozu v¹echny
 doly produkující tyto suroviny, vydìláme na továrnì zisk~$t_j$. Vymyslete algoritmus,
-který spoèítá, které doly postavit, abychom vydìlali co nejvíce.}
+který spoèítá, které doly postavit, abychom po odeètení nákladù na doly vydìlali co nejvíce.}
+
+\ex{Jiná obvyklá definice øezu øíká, ¾e øez je mno¾ina hran grafu, po~jejím¾ odebrání
+se~graf rozpadne na~více komponent (respektive máme-li urèený zdroj a stok, skonèí tyto
+v~rùzných komponentách). Srovnejme tuto definici s~na¹í. Mno¾iny hran urèené na¹imi øezy
+splòují i tuto definici a øíká se jim {\I elementární øezy.}
+Uka¾te, ¾e existují i jiné ne¾ elementární øezy.
+Také uka¾te, ¾e v¹echny minimální øezy jsou elementární.}
 
 %% FIXME: Zmínit permanent
 
+
 \endexercises
 
 \bye