]> mj.ucw.cz Git - ads1.git/commitdiff
RAM: TeXove korektury
authorMartin Mares <mj@ucw.cz>
Mon, 23 May 2011 12:19:19 +0000 (14:19 +0200)
committerMartin Mares <mj@ucw.cz>
Mon, 23 May 2011 12:19:19 +0000 (14:19 +0200)
2-ram/2-ram.tex

index f9a8f9f6f157be4f56ec3f1fedcf0658fe5cdf76..ce0d834d732828a4e56678817e3bc40259b29eea 100644 (file)
@@ -3,15 +3,15 @@
 \prednaska{2}{Slo¾itost, grafové algoritmy}
 {(zapsal Martin Koutecký)}
 
-\h{Model {\sc Ram}}
+\h{Model {\csc Ram}}
 
 Pøi analýze algoritmu bychom chtìli nìjak popsat jeho slo¾itost. Abychom mohli
  udìlat toto, potøebujeme nejprve definovat výpoèetní model. Výpoèetních modelù
 je více, my vybereme jeden pomìrnì blízký skuteèným poèítaèùm:
 
-\s{Definice:} Random Access Machine ({\sc Ram})
+\s{Definice:} Random Access Machine ({\csc Ram})
 
-{\sc Ram} poèítá jen s celými èísly -- znaky, stringy a podobnì reprezentujeme
+{\csc Ram} poèítá jen s celými èísly -- znaky, stringy a podobnì reprezentujeme
 èísly, jejich posloupnostmi atd. Pamì» je tvoøena buòkami, které obsahují
 èísla. Pamì»ové buòky jsou adresované takté¾ èísly. A program samotný je
 koneèná posloupnost instrukcí následujících druhù:
@@ -50,18 +50,18 @@ v
 \h{Slo¾itost}
 \> Jak dobøe popsat slo¾itost?
 \numlist\ndotted
-\:{\I {\sc Ram} s jednotkovou cenou}: èas $\approx$ \#instrukcí, prostor
+\:{\I {\csc Ram} s jednotkovou cenou}: èas $\approx$ \#instrukcí, prostor
 $\approx$
 maximální èíslo buòky minus minimální èíslo buòky pou¾ité pøi výpoètu.
 Toto není moc dobrý nápad, proto¾e není nijak penalizována napøíklad práce s
 velmi dlouhými èísly -- poøád je to jedna instrukce, tak¾e cena je stejná, ale
 poèítaèe se tak pøece nechovají. Velikost èísel ale omezit nesmíme, proto¾e
 bychom omezili pamì» (èísly ji adresujeme).
-\:{\I{\sc Ram} s logaritmickou cenou}: cena instrukce $\approx$ \#bitù
+\:{\I{\csc Ram} s logaritmickou cenou}: cena instrukce $\approx$ \#bitù
 zpracovávaných èísel,
 prostor $\approx$ \# bitù v¹ech pou¾itých bunìk. To je teoreticky pøesné, ale
 dost nepraktické (ve v¹ech slo¾itostech by byly logaritmy).
-\:{\I{\sc Ram} s omezenými èísly}: jednotková cena instrukcí, ale èísla omezíme
+\:{\I{\csc Ram} s omezenými èísly}: jednotková cena instrukcí, ale èísla omezíme
 nìjakým polynomem $P(n)$. Tím zmizí paradoxy prvního modelu, ale
 mù¾eme adresovat jen polynomiální prostor (to nám ov¹em obvykle nevadí).
 \endlist
@@ -95,7 +95,7 @@ t
 \::$[i]$ prohodíme s $[j]$.
 \endalgo
 
-Jak by takový algoritmus vypadal zapsaný v instrukcích {\sc Ram}? Budeme muset
+Jak by takový algoritmus vypadal zapsaný v instrukcích {\csc Ram}? Budeme muset
 pou¾ít návì¹tí a goto místo cyklù, jména registrù místo promìnných a
 tøeba prohození musíme provést pøes tøetí promìnnou. Nìjak takto:
 
@@ -248,7 +248,7 @@ to sta
 \:Jaké je nejkrat¹í (kladné, celé) èíslo v desítkové soustavì zapsané jen
 èíslicemi 1, 0, které je dìlitelné tøinácti? Nakreslíme orientovaný graf s
 vrcholy 0 a¾ 12
-a hranami $(x,y),$ $y=10\cdot x \mod 13$ a $y=(10\cdot x + 1) \mod 13$
+a hranami $(x,y),$ $y=10\cdot x \bmod 13$ a $y=(10\cdot x + 1) \bmod 13$
 (z~ka¾dého vrcholu vychází jedna hrana za pøidání èíslice 1 a dal¹í za èíslici
 0). Hledané èíslo existuje právì tehdy, kdy¾ graf obsahuje orientovaný sled
 z~1~do~0. Jakým algoritmem takový sled najdeme?