%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Contents: Math typesetting with LaTeX
% $Id: math.tex 182 2008-11-04 09:43:36Z oetiker $
%
% Changes by Stefan M. Moser: 2008/10/22
%
% -Section 2: "Single Equations": added comment about preference of
%  equation* over \[
% -Replaced (almost) all examples with \[ by equation*
% -New section 4: "Single Equations that are Too Long: multline"
% -New section 5: "Multiple Equations"
% -Section 6: "Arrays and Matrices": made a full section and added
%  some material
% -Section 9: "Theorems, Lemmas, ...": added a subsection about proofs
%  with new material
%
% Other Changes:
% -in lshort.sty: 
%    *example environment adapted: changed in three places
%     \textwidth by \linewidth. This is necessary for
%     example-environment within a itemize-list.
%    *added \RequirePackage[retainorgcmds]{IEEEtrantools}
%
% THINGS TO DO:
% -adapt typesetting of new sections to rest of lshort, including all
%  the usual commands used so far. In particular, I guess we have to
%  get rid of the \verb-commands everywhere
% -include index-commands
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
\chapter{Sazba matematických vzorců}

\begin{intro}
  Jsme už připraveni, abychom v~této kapitole mohli předvést hlavní sílu
  \TeX u: matematickou sazbu. Ale upozorňuji, že nepůjdeme
  příliš do hloubky. Věci vysvětlené v~této kapitole vám sice většinou budou
  stačit, ale je možné, že nevyřeší některé konkrétní věci, které byste
  s~matematickou sazbou potřebovali udělat. Je ale velmi pravděpodobné,
  že váš problém řeší \AmS-\LaTeX.
\end{intro}

\section{Kolekce \texorpdfstring{\AmS}{AMS}-\LaTeX{}}

Chcete-li sázet (pokročilou) \index{matematika}matematiku, měli byste použít
\AmS-\LaTeX{}. \AmS-\LaTeX{} je kolekcí balíků
a~tříd pro matematickou sazbu, z~nichž my zde většinou budeme používat
balík \pai{amsmath}. \AmS-\LaTeX{} je spravován
\emph{\index{Americká matematická společnost}Americkou matematickou společností} a~je široce používán
pro sazbu matematiky. Samotný \LaTeX{} sice poskytuje některé základní
rysy a~prostředí pro sazbu matematiky, ale
jsou omezené (nebo naopak: \AmS-\LaTeX{} je \emph{neomezený})
a~v~některých případech nekonzistentní.

\AmS-\LaTeX{} je součástí vyžadované distribuce a~skutečně je obsažen
ve všech současných \LaTeX ových distribucích.\footnote{Pokud ve vaší distribuci
chybí, obraťte se na \CTANalt|tex-archive/macros/latex/required/amslatex|.} V~této
kapitole budeme vždy předpokládat, že \pai{amsmath} byl nahrán v~preambuli
vašeho dokumentu (pomocí \verb|\usepackage{amsmath}|).

\section{Jednoduché rovnice}
  
Jsou dvě možnosti, jak sázet matematické \wi{vzorce}: v~rámci textu
odstavce (\emph{\wi{styl text}}), nebo na samostatném řádku
(\textit{\wi{styl display}}). \index{vzorce}Vzorce
v~\emph{textovém stylu} uvádíme mezi \index{$@\texttt{\$}} %$
znaky \texttt{\$} a~\texttt{\$}:
\begin{example}
Sečti $a$ na druhou
a~$b$ na druhou
a~získej tak $c$ na druhou.
Nebo, matematicky řečeno:
$a^2 + b^2 = c^2$.
\end{example}
\begin{example}
\TeX{} se vyslovuje jako
$\tau\varepsilon\chi$.\\[5pt]
100~m$^{3}$ vody.\\[5pt]
Toto vychází z~mého $\heartsuit$.
\end{example}

Chcete-li, aby vaše větší rovnice byly vysázeny odděleně od zbytku
odstavce, je lepší zobrazit je ve stylu display spíš než \uv{rozsekat}
kvůli nim odstavec. Toho dosáhnete tím, že tyto rovnice uvedete mezi
\verb|\begin{|\ei{equation}\verb|}| a~\verb|\end{equation}|.%
\footnote{Jedná se o~příkaz definovaný v~\textsf{amsmath}. Pokud byste
náhodou k~tomuto balíku neměli přístup, můžete místo něj použít \LaTeX ové
prostředí \ei{displaymath}.} Nyní si můžete označit (\ci{label}) číslo
rovnice a~odkázat se na ně v~jiném místě textu pomocí příkazu \ci{eqref}.
Chcete-li rovnici pojmenovat explicitně, můžete místo \ci{label} použít
\ci{tag} (\ci{tag} ale nemůžete kombinovat s~\ci{eqref}).
\begin{example}
Sečti $a$ na druhou
a~$b$ na druhou
a~získej tak $c$ na druhou.
Nebo, matematicky řečeno:
 \begin{equation}
   a^2 + b^2 = c^2
 \end{equation}
Einstein říká, že
 \begin{equation}
   E = mc^2 \label{clever}
 \end{equation}
Nikdy ale neřekl, že
 \begin{equation}
  1 + 1 = 3 \tag{lež}
 \end{equation}
Toto je odkaz na
\eqref{clever}. 
\end{example}

Nechete-li, aby \LaTeX{} rovnice čísloval, použijte \uv{hvězdičkovanou} verzi
příkazu, \ei{equation*}, nebo ještě jednodušeji, uveďte rovnici
mezi \ci{[} a~\ci{]}:\footnote{\index{equation!\textsf{amsmath}}
  \index{equation!\LaTeX{}}Opět se jedná o~definice z~\textsf{amsmath}. Pokud
tento balík nemáte k~dispozici, použijte místo něj \LaTeX ové prostředí
\texttt{equation}. Stejná jména příkazů objevující se jak v~\textsf{amsmath}
tak v~\LaTeX u trochu matou, ale zase takový problém to není, protože každý
stejně používá \textsf{amsmath}. Obyčejně je nejlepší nahrát tento balík
hned na začátku dokumentu, protože když se rozhodnete přidat ho až později,
může \LaTeX ová sazba nečíslovaných \texttt{rovnic} kolidovat s~\AmS-\LaTeX ovou
sazbou číslovaných \texttt{rovnic}.}
\begin{example}
Sečti $a$ na druhou
a~$b$ na druhou
a~získej tak $c$ na druhou.
Nebo, matematicky řečeno:
 \begin{equation*}
   a^2 + b^2 = c^2
 \end{equation*}
nebo to samé stručněji:
 \[ a^2 + b^2 = c^2 \]
\end{example}
Pokud ale váš dokument obsahuje mnoho rovnic a~budete je všechny sázet pomocí
\ci{[} a~\ci{]}, \LaTeX ový zdrojový kód vašeho dokumentu bude nepřehledný.
Proto v~takovém případě doporučujeme používat \ei{equation}, resp. \ei{equation*}.

Všimněte si, jak se liší styl sazby rovnic v~\index{styl text}textovém stylu
a~ve \index{styl display}stylu display:
\begin{example}
Toto je textový styl:
$\lim_{n \to \infty} 
 \sum_{k=1}^n \frac{1}{k^2} 
 = \frac{\pi^2}{6}$.
A~toto je styl display:
 \begin{equation}
  \lim_{n \to \infty} 
  \sum_{k=1}^n \frac{1}{k^2} 
  = \frac{\pi^2}{6}
 \end{equation}
\end{example}

Vysoké nebo hluboké matematické vzorce v~textovém stylu uzavírejte
do \ci{smash}. \LaTeX{} pak bude ignorovat výšku a~hloubku
těchto výrazů a~rovnoměrné řádkování dokumentu zůstane zachováno.

\begin{example}
Matematický vzorec $d_{o_{l_u}}$
následovaný vzorcem
$n^{a^{h^{o^{r^u}}}}$. Naproti
tomu \uv{smashed} výraz
\smash{$d_{o_{l_u}}$}
následovaný výrazem
\smash{$n^{a^{h^{o^{r^u}}}}$}.
\end{example}

\subsection{Matematický mód}

Rozdíly jsou i~mezi \emph{\index{matematický mód}matematickým módem}
a~\emph{\index{textový mód}textovým módem}. V~\emph{matematickém módu} např.:

\begin{enumerate}

\item \index{mezery!v matemetickém módu} Většina mezer a~řádkových zlomů nemá žádný
efekt, protože všechny mezery jsou odvozeny z~matematických výrazů nebo
je třeba je uvést pomocí speciálních příkazů, např. \ci{,}, \ci{quad}
nebo \ci{qquad} (k~tomuto se ještě vrátíme, v~sekci~\ref{sec:math-spacing}).
 
\item Nejsou povoleny prázdné řádky. Na vzorec připadá jen jeden odstavec.

\item Každé písmeno je považováno za jméno proměnné a~jako takové
je vysázeno. Chcete-li uvnitř vzorce vysázet normální text (normální
vzpřímený font a~normální mezerování), musíte ho uvést pomocí příkazu
\verb|\text{...}|, viz také sekci \ref{sec:fontsz} na straně
\pageref{sec:fontsz}.

\end{enumerate}
\begin{example}
$\forall x \in \mathbf{R}:
 \qquad x^{2} \geq 0$
\end{example}
\begin{example}
$x^{2} \geq 0\qquad
 \text{for all }x\in\mathbf{R}$
\end{example}
 
Matematici jsou někdy velmi úzkostliví ohledně toho, které symboly
jsou použity: podle konvencí by bylo správné použít font
\wi{Blackboard Bold}, \index{tučné symboly} pomocí \ci{mathbb}
z~balíku \pai{amssymb}.\footnote{Balíček \pai{amssymb} není součástí
kolekce \AmS-\LaTeX, ale přesto je pravděpodobné,
že je přítomen ve vaší \LaTeX ové distribuci. Pokud přítomen není,
můžete ho získat na \texttt{CTAN:/fonts/amsfonts/latex/}.
}
\ifx\mathbb\undefined\else
Předchozí příklad tedy můžeme vylepšit do následující formy:
\begin{example}
$x^{2} \geq 0\qquad
 \text{for all } x 
 \in \mathbb{R}$
\end{example}
\fi
Více matematických fontů je uvedeno v~tabulce~\ref{mathalpha} na
straně~\pageref{mathalpha} a~v~tabulce~\ref{mathfonts} na
straně~\pageref{mathfonts}.


\section{Stavební bloky matematických vzorců}

V~této sekci popíšeme nejdůležitější příkazy použité v~matematické sazbě.
Většina z~nich nevyžaduje \textsf{amsmath} (na výjimky upozorníme),
ale nahrajte tento balík do svého dokumentu i~tak.

\textbf{Malá \wi{řecká písmena}} se vkládají jako \verb|\alpha|,
 \verb|\beta|, \verb|\gamma|, \ldots, velká písmena
pak jako \verb|\Gamma|, \verb|\Delta|, \ldots\footnote{Speciální vkládání
velkého Alpha, Beta a~jiných není v~\LaTeXe{} definováno, protože
tato písmena vypadají stejně jako normální latinkové A, B, atd.
Po zavedení nového matematického kódování zde dojde ke změně.}

Seznam řeckých písmen je uveden v~tabulce~\ref{greekletters}
na straně~\pageref{greekletters}.
\begin{example}
$\lambda,\xi,\pi,\theta,
 \mu,\Phi,\Omega,\Delta$
\end{example}


\textbf{Exponenty a~indexy} lze vytvořit pomocí\index{exponent}\index{index}
znaků \verb|^|\index{^@{\me\char'136}} a~\verb|_|\index{_@{\me\char'137}}.
Většina příkazů matematického módu se vztahuje jen na následující znak,
takže pokud chcete, aby měl příkaz platnost na více znaků, musíte
tyto znaky seskupit pomocí složených závorek: \verb|{...}|.

Mnoho dalších binárních relací, např. $\subseteq$ a~$\perp$, je uvedeno
v~tabulce~\ref{binaryrel} na straně \pageref{binaryrel}.

\begin{example}
$p^3_{ij} \qquad
 m_\text{Knuth} \\[5pt]
 a^x+y \neq a^{x+y}\qquad 
 e^{x^2} \neq {e^x}^2$
\end{example}


Znak pro \textbf{\index{odmocnina}odmocninu} vložíme pomocí \ci{sqrt};
$n$-tou odmocninu získáme pomocí \verb|\sqrt[|$n$\verb|]|. Velikost
symbolu odmocniny určí \LaTeX{} automaticky. Pokud chceme použít
tento symbol samotný, můžeme psát \verb|\surd|.

Další druhy šipek, např. $\hookrightarrow$ a~$\rightleftharpoons$, jsou
uvedeny v~tabulce~\ref{tab:arrows} na straně~\pageref{tab:arrows}.
\begin{example}
$\sqrt{x}
 \Leftrightarrow x^{1/2}
 \quad \sqrt[3]{2}
 \quad \sqrt{x^{2} + \sqrt{y}}
 \quad \surd[x^2 + y^2]$
\end{example}


\index{tečky!tři}
\index{vertikální!tečky}
\index{horizontální!tečky}
Operaci násobení většinou explicitně vyznačujeme jen v~případě, že
zpře\-hlední vzorec (ve kterém se násobení nachází). Místo obyčejné 
tečky bychom pro násobení měli použít příkaz \ci{cdot}, který vysází
jednu vycentrovanou tečku. Příkaz \ci{cdots} vysází tři vycentrované
tečky a~\ci{ldots} také tři vycentrované tečky, ale
umístěné na účaří. K~dispozici máte také \ci{vdots} pro vertikální
a~\ci{ddots} pro \wi{diagonální tečky}. 
\begin{example}
$\Psi = v_1 \cdot v_2
 \cdot \ldots \qquad 
 n! = 1 \cdot 2 
 \cdots (n-1) \cdot n$
\end{example}

Další příklad je uveden v~sekci~\ref{sec:arraymat}

Příkazy \ci{overline} a~\ci{underline} vytvoří
\textbf{horizontální linky} přímo nad, resp. pod výrazem:
\index{horizontální!linka} \index{linka!horizontální}
\begin{example}
$0{,}\overline{3} = 
 \underline{\underline{1/3}}$
\end{example}

Dlouhé \textbf{horizontální svorky} nad a~pod výrazem vytvoříme
pomocí příkazů \ci{overbrace}, resp. \ci{underbrace}:
\index{horizontální!svorka} \index{svorka!horizontální}
\begin{example}
$\underbrace{\overbrace{a+b+c}^6 
 \cdot \overbrace{d+e+f}^9}
 _\text{smysl života} = 42$
\end{example}

\index{matematické!akcenty} Pro přidání matematických akcentů
(např. \textbf{malých šipek} nebo \textbf{\index{tilda}tildy}) ke jménům
proměnných se hodí příkazy uvedené v~tabulce~\ref{mathacc}
na straně~\pageref{mathacc}. 
%
Svorky a~tildy pokrývající
několik znaků se vygenerují pomocí \ci{widetilde} a~\ci{widehat}.
Všimněte si rozdílu mezi \ci{hat} a~\ci{widehat}
a~umístění \ci{bar} u~proměnné s~indexem. Znakem \wi{apostrof} 
\verb|'|\index{'@{\me\char'047}} získáme \index{derivace}derivaci:
% a dash is --
\begin{example}
$f(x) = x^2 \qquad f'(x) 
 = 2x \qquad f''(x) = 2\\[5pt]
 \hat{XY} \quad \widehat{XY}
 \quad \bar{x_0}
 \quad \bar{x}_0$
\end{example}


\textbf{Vektory}\index{vektory} často specifikujeme přidáním malých
\index{šipka}šipek nad jména proměnných pomocí příkazu \ci{vec}. Příkazy
\ci{overrightarrow} a~\ci{overleftarrow} jsou užitečné pro vyznačení
vektoru z~$A$ do $B$:
\begin{example}
$\vec{a} \qquad
 \vec{AB} \qquad
 \overrightarrow{AB}$
\end{example}

Jména funkcí jako \texttt{log} se často sází vzpřímeným písmem
(tedy ne italikou, která je v~matematickém módu používána implicitně),
\LaTeX{} proto nabízí následující příkazy, kterými můžete vysázet
názvy nejčastěji používaných funkcí:
\index{matematické!funkce}

\begin{tabular}{llllll}
\ci{arccos} &  \ci{cos}  &  \ci{csc} &  \ci{exp} &  \ci{ker}    & \ci{limsup} \\
\ci{arcsin} &  \ci{cosh} &  \ci{deg} &  \ci{gcd} &  \ci{lg}     & \ci{ln}     \\
\ci{arctan} &  \ci{cot}  &  \ci{det} &  \ci{hom} &  \ci{lim}    & \ci{log}    \\
\ci{arg}    &  \ci{coth} &  \ci{dim} &  \ci{inf} &  \ci{liminf} & \ci{max}    \\
\ci{sinh}   & \ci{sup}   &  \ci{tan}  & \ci{tanh}&  \ci{min}    & \ci{Pr}     \\
\ci{sec}    & \ci{sin} \\
\end{tabular}

\begin{example}
\begin{equation*}
  \lim_{x \rightarrow 0}
  \frac{\sin x}{x}=1
\end{equation*}
\end{example}

Pro funkce, které v~seznamu nejsou uvedeny, je potřeba použít příkaz
\ci{DeclareMathOperator}. Tento příkaz má i~hvězdičkovanou verzi pro
funkce s~limitami. \ci{DeclareMathOperator} funguje jen v~preambuli
dokumentu, zakomentované řádky v~následujícím příkladu je tedy potřeba
uvést tam.

\begin{example}
%\DeclareMathOperator
%   {\argh}{argh}
%\DeclareMathOperator
%  *{\nut}{Nut}
\begin{equation*}
  3\argh = 2\nut_{x=1}    
\end{equation*}
\end{example}

\index{funkce modulo}Funkci modulo můžete vysázet buď příkazem \ci{bmod} (binární
operátor \uv{$a \bmod b$}) nebo příkazem \ci{pmod} (výrazy typu
\uv{$x\equiv a~\pmod{b}$}):
\begin{example}
$a\bmod b \\
 x\equiv a \pmod{b}$
\end{example}

\index{zlomek}Zlomek se vysází pomocí příkazu \ci{frac}\verb|{...}{...}|.
V~textovém stylu \LaTeX{} zlomky \uv{zhustí}, aby se do řádků lépe vlezly.
Zhuštění ve stylu display můžete explicitně zařídit pomocí příkazu
\ci{tfrac}. Naopak, pomocí příkazu \ci{dfrac} můžete v~textovém stylu
zobrazit zlomek nezhuštěný. Pro krátké \uv{zlomkové materiály} často nejlépe
vypadá, když zlomek jen naznačíme pomocí znaku lomítko ($1/2$):
\begin{example}
Ve stylu display:
\begin{equation*}
  3/8 \qquad \frac{3}{8} 
  \qquad \tfrac{3}{8}
\end{equation*}
\end{example}

\begin{example}
V~textovém stylu:
$1\frac{1}{2}$~hodiny \quad
$1\dfrac{1}{2}$~hodiny
\end{example}
 
Zde použijeme příkaz \ci{partial} pro \wi{parciální derivace}:
\begin{example}
\begin{equation*} 
  \sqrt{\frac{x^2}{k+1}}\qquad
  x^\frac{2}{k+1}\qquad
  \frac{\partial^2f}
  {\partial x^2} 
\end{equation*}
\end{example}


\index{binomické koeficienty}Binomické koeficienty nebo podobné struktury můžete vysázet pomocí
příkazu \ci{binom} definovaného v~\pai{amsmath}:
\begin{example}
Pascalovo pravidlo říká, že
\begin{equation*}
 \binom{n}{k} =\binom{n-1}{k}
 + \binom{n-1}{k-1}
\end{equation*}
\end{example}

U~\index{binární relace}binárních relací může být výhodné umístit symboly nad sebe.
Příkaz \ci{stackrel}\verb|{#1}{#2}| umístí symbol uvedený jako
\verb|#1| (velikostí písma stejnou jako pro horní indexy) 
nad symbol uvedený jako \verb|#2|, jehož pozice zůstává \uv{normální}.
\begin{example}
\begin{equation*}
 f_n(x) \stackrel{*}{\approx} 1
\end{equation*}
\end{example}

\index{symbol integrálu}Symbol integrálu vygenerujeme pomocí \ci{int},
\wi{symbol sumy} pomocí \ci{sum} a~\wi{symbol součinu}
pomocí \ci{prod}. Horní a~dolní limity se specifikují pomocí~\verb|^|
a~\verb|_|, stejně jako u~horních a~dolních indexů:
\begin{example}
\begin{equation*}
\sum_{i=1}^n \qquad
\int_0^{\frac{\pi}{2}} \qquad
\prod_\epsilon
\end{equation*}
\end{example}

Příkaz \ci{substack} balíku \pai{amsmath} umožňuje přesněji specifikovat
umístění indexů u~složitých výrazů:
\begin{example}
\begin{equation*}
\sum^n_{\substack{0<i<n \\ 
        j\subseteq i}}
   P(i,j) = Q(i,j)
\end{equation*}
\end{example}



\LaTeX{} nabízí řadu symbolů pro \textbf{\index{svorka}svorky} a~další
\textbf{\index{oddělovač}oddělovače}, např.~$[$, $\langle$, $\|$, $\updownarrow$.
Kulaté a~hranaté závorky vysázíme uvedením příslušných znaků,
složené závorky pak pomocí \verb|\{|. Všechny ostatní oddělovače
jsou generovány pomocí speciálních příkazů, např. \verb|\updownarrow|.
\begin{example}
\begin{equation*}
{a,b,c} \neq \{a,b,c\}
\end{equation*}
\end{example}

Pokud uvedete \ci{left} před otevíracím oddělovačem a~\ci{right}
před uzavíracím, \LaTeX{} automaticky určí správnou velikost obou
oddělovačů. Je ale potřeba každý \ci{left} uzavřít pomocí \ci{right}.
Nechcete-li zobrazit žádný pravý oddělovač, použijte \uv{neviditelný}
oddělovač \ci{left.}:
\begin{example}
\begin{equation*}
1 + \left(\frac{1}{1-x^{2}}
    \right)^3 \qquad 
\left. \ddagger \frac{~}{~}
\right)
\end{equation*}
\end{example}

Někdy musíme určit výšku matematických oddělovačů\index{matematické!delimitery}
explicitně, k~čemuž slouží příkazy \ci{big}, \ci{Big}, \ci{bigg} a~\ci{Bigg},
které lze uvést před většinou oddělovačů:
\begin{example}
$\Big((x+1)(x-1)\Big)^{2}$\\
$\big( \Big( \bigg( \Bigg( \quad
\big\} \Big\} \bigg\} \Bigg\}
\quad
\big\| \Big\| \bigg\| \Bigg\|
\quad
\big\Downarrow \Big\Downarrow 
\bigg\Downarrow \Bigg\Downarrow$
\end{example}
Všechny dostupné oddělovače jsou uvedeny v~tabulce~\ref{tab:delimiters} na straně
\pageref{tab:delimiters}. 


\section{Příliš dlouhé rovnice: multline}
\index{dlouhé rovnice}
\label{sec:multline}

Je-li rovnice příliš dlouhá, musíme ji rozdělit do řádků, ale
výsledek bude samozřejmě hůře čitelný, než kdyby se vešla na řádek jeden.
Několik pravidel dodržených při dělení rovnice do řádek může pomoci k~lepší
čitelnosti:
\begin{enumerate}
\item Obecně bychom měli rovnice dělit jen \textbf{před} rovnítkem nebo
  operátorem, přičemž první možnost je lepší.
\item Rozdělení rovnice před operátorem sčítání nebo odčítání je lepší než
  před operátorem násobení.
\item Je-li to možné, v~jiných místech bychom rovnice dělit neměli.
\end{enumerate}
Nejjednodušeji rovnici do řádek rozdělíme pomocí prostředí \ei{multline}%
\footnote{Definovaného v~\texttt{amsmath}.}:
\begin{example}
\begin{multline}
  a + b + c + d + e + f 
    + g + h + i\\
  = j + k + l + m + n 
\end{multline}
\end{example}
\noindent
Na rozdíl od prostředí \ei{equation} můžeme pomocí \verb+\\+ specifikovat
řádkové zlomy (i~vícenásobné). Hvězdičkovaná verze \ei{multline*} potlačí
vysázení čísla rovnice, podobně jako \ei{equation*}.

Prostředí \ei{multline} se sice jednoduše používá, ale pomocí
jiného prostředí \ei{IEEEeqnarray}, viz sekce~\ref{sec:IEEEeqnarray}, 
často získáme lepší výsledky, např. v~následující běžné situaci:

\begin{example}
\begin{equation}
  a = b + c + d + e + f 
  + g + h + i + j 
  + k + l + m + n + o + p  
  \label{eq:equation_too_long}
\end{equation}
\end{example}
\noindent
Zde nám dělá problémy šířka pravé strany rovnice. Použijeme-li prostředí
\ei{multline}, vysázíme toto:
\begin{example}
\begin{multline}
  a = b + c + d + e + f 
  + g + h + i + j \\
  + k + l + m + n + o + p
\end{multline}
\end{example}

To je samozřejmě lepší než \eqref{eq:equation_too_long}, ale nevýhodou
je, že rovnítko ztrácí přirozenou větší důležitost vzhledem k~sčítacímu
operátoru před $k$. Ještě lepší výsledek získáme pomocí prostředí
\ei{IEEEeqnarray}, které podrobně popíšeme v~sekci~\ref{sec:IEEEeqnarray}:
\begin{example}
\begin{IEEEeqnarray}{rCl}
  a & = & b + c + d + e + f 
  + g + h + i + j \nonumber\\
  && +\: k + l + m + n + o + p 
  \label{eq:dont_use_multline}
\end{IEEEeqnarray}
\end{example}
Zde je druhý řádek horizontálně zarovnaný s~prvním řádkem:
$+$ před $k$ je přesně pod $b$, takže pravá strana rovnice je
jasně oddělena od levé.


\section{Více rovnic}
\index{equation!multiple}
\label{sec:IEEEeqnarray}

Obecně můžeme mít několik rovnic, z~nichž některé se nevejdou na jednu
řádku. Rovnice potřebujeme horizontálně zarovnat, aby jejich struktura
byla dobře čitelná.

Před tím, než ukážeme naše návrhy na řešení, ukažme si, jak se věci
dají udělat špatně. Tyto příklady demonstrují největší nevýhody
některých běžných řešení.


\subsection{Problémy s~tradičními příkazy}
\label{sec:problems_traditional}
K~seskupení několika rovnic je možno použít prostředí \ei{align}.%
\footnote{Prostředí \texttt{align} můžeme použít i~na seskupení
několika bloků funkcí vedle sebe. Pro toto zřídka používané řešení
ale doporučujeme použít prostředí \ei{IEEEeqnarray} s~argumentem
typu \texttt{\{rCl+rCl\}}.}

\begin{example}
\begin{align}
  a & = b + c \\
    & = d + e
\end{align}
\end{example}

Pokud je ale některá rovnice příliš dlouhá, tento postup není vhodný:
\begin{example}
\begin{align}
  a & = b + c \\
    & = d + e + f + g + h +
        i + j + k + l\nonumber\\
    & + m + n + o \\
    & = p + q + r + s
\end{align}
\end{example}
\noindent
Lépe by vypadalo, kdyby $+\:m$ bylo umístěno pod $d$ a~ne pod rovnítkem.
Samozřejmě bychom mohli $+\:m$ posunout \uv{ručním} vložením potřebného
množství mezer (např. pomocí \verb+\hspace{...}+), ale přesné zarovnání
tím nezískáme. Pozn. Takovýmto \uv{ručním} zásahům bychom se v~každém případě
měli vyhýbat.

Lepší je použít prostředí \ei{eqnarray}:
\begin{example}
\begin{eqnarray}
  a & = & b + c \\
    & = & d + e + f + g + h +
    i + j + k + l \nonumber \\
    &   & +\: m + n + o\\
    & = & p + q + r + s
\end{eqnarray}
\end{example}

I~toto prostředí má ale výrazné nevýhody:
\begin{itemize}
\item Mezery na obou stranách rovnítka jsou příliš velké.
  Zejména \emph{nejsou} stejně velké jako mezery v~prostředích
  \ei{multline} a~\ei{equality}:
\begin{example}
\begin{eqnarray}
  a & = & a = a
\end{eqnarray}
\end{example}

\item Rovnice se někdy překrývá se svým číslem,
i~když na levé straně je místa dost:
\begin{example}
\begin{eqnarray}
  a & = & b + c \\
  & = & d + e + f + g + h^2 
  + i^2 + j 
  \label{eq:faultyeqnarray}
\end{eqnarray}
\end{example}

\item Je zde sice k~dispozici příkaz \ci{lefteqn}, který se dá
  použít v~případě, že levá strana rovnice je příliš dlouhá:
\begin{example}
\begin{eqnarray}
  \lefteqn{a + b + c + d 
    + e + f + g + h}\nonumber\\
  & = & i + j + k + l + m \\
  & = & n + o + p + q + r + s
\end{eqnarray}
\end{example}
\ldots, ale tento příkaz nemusí fungovat správně: pokud je pravá
strana rovnice příliš krátká, rovnice nejsou správně vycentrovány:
\begin{example}
\begin{eqnarray}
  \lefteqn{a + b + c + d 
    + e + f + g} 
  \nonumber \\
  & = & i + j 
\end{eqnarray}
\end{example}
Navíc je obtížné změnit horizontální zarovnání rovnítka
na druhém řádku.
\end{itemize}

Máme ale naštěstí lepší možnost\ldots


\subsection{Prostředí IEEEeqnarray}
\label{sec:IEEEeqnarray_intro}

Prostředí \ei{IEEEeqnarray} je mocné a~bohatě konfigurovatelné.
Představíme jen jeho základní použití, více informací lze nalézt
v~oficiálním manuálu,\footnote{Soubor \texttt{IEEEtran\_HOWTO.pdf}.} \texttt{IEEEeqnarray} je věnována
příloha~F.

Abychom mohli prostředí \ei{IEEEeqnarray} používat, musíme
nejdřív v~našem dokumentu nahrát balík \pai{IEEEtrantools}.%
\footnote{Tento balík je dostupný na CTAN.} Do preambule
vašeho dokumentu přidejte řádku: \small
\begin{verbatim}
\usepackage[retainorgcmds]{IEEEtrantools}
\end{verbatim}
\normalsize

Silnou stránkou \ei{IEEEeqnarray} je možnost zadat počet \emph{sloupců}
v~poli rovnic. Obyčejně takto zadáme tři sloupce: \verb+{rCl}+.
První sloupec zarovnaný doprava, druhý vycentrovaný a~s~trochou
mezer na obou stranách -- proto bylo použito \texttt{C} místo
\texttt{c} -- a~třetí sloupec zarovnaný doleva.

\begin{example}
\begin{IEEEeqnarray}{rCl}
  a & = & b + c \\
  & = & d + e + f + g + h 
  + i + j \nonumber\\
  && +\: k + l + m + n + o \\
  & = & p + q + r + s
\end{IEEEeqnarray}
\end{example}

Počet sloupců ale můžeme zadat jakýkoliv. Např.
\texttt{{c}} znamená, že se použije jen jeden sloupec a~položky budou
vycentrované, nebo \verb+{rCll}+ použije oproti předchozímu příkladu navíc
jeden sloupec zarovnaný doleva. Kromě \texttt{l}, \texttt{c}, \texttt{r},
\texttt{L}, \texttt{C} a~\texttt{R} pro položky v~matematickém módu
jsou k~dispozici \texttt{s}, \texttt{t} a~\texttt{u} pro položky v~textovém
módu zarovnané doleva, resp. vycentrované, resp. zarovnané doprava.
Můžeme také přidat více mezer pomocí \texttt{.}, \texttt{/} a~\texttt{?}
(\texttt{?} přidá nejvíce).\footnote{Více typů mezer je uvedeno
  v~sekci~\ref{sec:putting-qed-right} a~v~oficiálním manuálu.}

Všimněte si, že mezery okolo rovnítek jsou vysázeny správně (na rozdíl
od \texttt{eqnarry})!



\subsection{Běžné použití}
\label{sec:common-usage}

Nyní popíšeme, jak použít \texttt{IEEEeqnarray} v~nejběžnějších
situacích.
\begin{itemize}
\item Překrývá-li se rovnice se svým číslem (jako
v~\eqref{eq:faultyeqnarray}), můžeme použít příkaz
\small
\begin{verbatim}
\IEEEeqnarraynumspace
\end{verbatim} 
\normalsize
  Umístěním příkazu do příslušného řádku se zajistí, že celá soustava
  rovnic je posunuta o~velikost čísla rovnice (při posunutí se vezme
  v~úvahu velikost čísla!). Místo
\begin{example}
\begin{IEEEeqnarray}{rCl}
  a & = & b + c \\
  & = & d + e + f + g + h 
  + i + j + k \\
  & = & l + m + n
\end{IEEEeqnarray}
\end{example}
  tak získáme
\begin{example}
\begin{IEEEeqnarray}{rCl}
  a & = & b + c \\
  & = & d + e + f + g + h 
  + i + j + k
  \IEEEeqnarraynumspace\\
  & = & l + m + n.
\end{IEEEeqnarray}
\end{example}

\item Je-li levá strana rovnice příliš dlouhá, prostředí \texttt{IEEEeqnarray}
  nabízí příkaz \ci{IEEEeqnarraymulticol}\footnote{Snažíme se vyhnout špatně 
  fungujícímu příkazu \ci{lefteqn}.}, který funguje ve všech situacích:
\begin{example}
\begin{IEEEeqnarray}{rCl}
  \IEEEeqnarraymulticol{3}{l}{
    a + b + c + d + e + f 
    + g + h
  }\nonumber\\ \quad
  & = & i + j \\
  & = & k + l + m
\end{IEEEeqnarray}
\end{example}
Použití je stejné jako u~příkazu \ci{multicolumns} v~prostředí
\texttt{tabular}. První argument, \verb+{3}+, specifikuje, že
se mají zkombinovat tři sloupce do jednoho, který bude zarovnaný
vlevo, \verb+{l}+.

Všimněte si, že úpravou příkazu \ci{quad} jednoduše upravíme
hloubku rovnítek,\footnote{Myslím, že 
vzdálenost jeden quad vypadá dobře ve většině případů.}
\emph{např.}
\begin{example}
\begin{IEEEeqnarray}{rCl}
  \IEEEeqnarraymulticol{3}{l}{
    a + b + c + d + e + f 
    + g + h
  }\nonumber\\ \qquad\qquad
  & = & i + j \\
  & = & k + l + m
\end{IEEEeqnarray}
\end{example}

\item Je-li rovnice rozdělena do více řádek, \LaTeX\ interpretuje
  první $+$ nebo $-$ na dalším řádku jako znaménko (a~ne jako
  operátor). Je proto nutné přidat za operátor mezeru.
  Místo\ldots
\begin{example}
\begin{IEEEeqnarray}{rCl}
  a & = & b + c \\
  & = & d + e + f + g + h 
  + i + j + k \nonumber\\
  && + l + m + n + o \\
  & = & p + q + r + s
\end{IEEEeqnarray}
\end{example}
  \ldots\ bychom tedy měli psát
\begin{example}
\begin{IEEEeqnarray}{rCl}
  a & = & b + c \\
  & = & d + e + f + g + h 
  + i + j + k \nonumber\\
  && +\: l + m + n + o \\
  & = & p + q + r + s
\end{IEEEeqnarray}
\end{example}
  (Porovnejte mezeru mezi $+$ a~$l$.)
  
  \textbf{Upozornění:} v~některých situacích \LaTeX\ pozná, že
  $+$ nebo $-$ musí být operátor (a~ne znaménko), vloží
  správnou mezeru a~my nemusíme ručně nic měnit. \LaTeX{}
  (správně) odvodí, že dané $+$ nebo $-$ je operátor (a~ne
  znaménko) pokud je uvedeno před:
  \begin{itemize}
  \item jménem operátoru, např. \ci{log}, \ci{sin}, \ci{det},
    \ci{max}, \emph{atd.},
  \item integrálem \ci{int} nebo sumou \ci{sum},
  \item závorkou s~proměnlivou velikostí, zapsanou pomocí
      \ci{left} nebo \ci{right} (ne ale normální závorkou nebo
      závorkou s~pevnou velikostí, např. \ci{big(}).
  \end{itemize}
  Proto:
  \begin{itemize}
  \item[$\rhd$] \it Kdykoliv zalomíte řádku, rychle zkontrolujte,
    jestli jsou mezery v~pořádku!
  \end{itemize}

\item Nemá-li konkrétní řádek obsahovat číslo rovnice, můžeme
  vysázení tohoto čísla potlačit pomocí \ci{nonumber} (nebo
  pomocí \ci{IEEEnonumber}. Pokud navíc na takovémto řádku
  uvedeme \verb+\label{eq:...}+, pak je tento label předán
  první z~následujících rovnic, jejíž číslo není potlačeno.
  Label se ale doporučuje uvádět raději
  těsně před zlomem řádku, \verb+\\+, nebo koncem rovnice, do
  které řádek patří. Kromě lepší čitelnosti \LaTeX ového zdrojového
  kódu tak zabráníme chybě při překladu v~situaci, kdy za labelem
  je uvedeno \ci{IEEEmulticol}.
  
\item Máme k~dispozici i~hvězdičkovanou verzi, kde jsou všechna
  čísla rovnic potlačena. Číslo řádku zde můžeme explicitně
  zobrazit pomocí příkazu \ci{IEEEyesnumber}:
\begin{example}
\begin{IEEEeqnarray*}{rCl}
  a & = & b + c \\
  & = & d + e \IEEEyesnumber\\
  & = & f + g
\end{IEEEeqnarray*}
\end{example}

\item Pomocí \ci{IEEEyessubnumber} můžeme také použít
  \uv{podčísla}:
\begin{example}
\begin{IEEEeqnarray}{rCl}
  a & = & b + c 
  \IEEEyessubnumber\\
  & = & d + e 
  \nonumber\\
  & = & f + g 
  \IEEEyessubnumber  
\end{IEEEeqnarray}
\end{example}
  
\end{itemize}



\section{Pole a~matice} \label{sec:arraymat}

K~vysázení \textbf{polí} používáme prostředí \ei{array}. Trochu
se podobá prostředí \texttt{tabular}. Příkazem \verb|\\| rozdělíme
řádky:
\begin{example}
  \begin{equation*}
    \mathbf{X} = \left( 
      \begin{array}{ccc}
        x_1 & x_2 & \ldots \\
        x_3 & x_4 & \ldots \\
        \vdots & \vdots & \ddots
      \end{array} \right)
  \end{equation*}
\end{example}

Prostředí \ei{array} můžeme použít k~vysázení definic funkcí, které
mají několik variant. Je pak potřeba použít \verb|.| jakožto
skrytý pravý oddělovač:
\begin{example}
\begin{equation*}
  |x| = \left\{
    \begin{array}{rl}
      -x & \text{if } x < 0,\\
       0 & \text{if } x = 0,\\
       x & \text{if } x > 0.
    \end{array} \right.
\end{equation*}
\end{example}
Stejnou věc můžeme jednodušeji vysázet pomocí prostředí 
\ei{cases} též z~balíku \textsf{amsmath}:
\begin{example}
  \begin{equation*}
    |x| = 
    \begin{cases}
      -x & \text{if } x < 0,\\
       0 & \text{if } x = 0,\\
       x & \text{if } x > 0.
    \end{cases} 
\end{equation*}
\end{example}

Pomocí \ei{array} můžeme vysázet i~matice\index{matrix}, ale
\pai{amsmath} poskytuje lepší možnost -- několik verzí prostředí
\ei{matrix}. K~dispozici je šest verzí tohoto prostředí, které se
liší v~použitých oddělovačích: \ei{matrix} (žádný oddělovač),
\ei{pmatrix} ($($), \ei{bmatrix} ($[$), \ei{Bmatrix} ($\{$),
\ei{vmatrix} ($\vert$) a~\ei{Vmatrix} ($\Vert$). 

Na rozdíl od \ei{array}
není třeba zadávat počet sloupců, jejich maximální počet je
konfigurovatelný, implicitně deset.
\begin{example}
\begin{equation*}
  \begin{matrix} 
    1 & 2 \\
    3 & 4 
  \end{matrix} \qquad
  \begin{bmatrix} 
    p_{11} & p_{12} & \ldots 
    & p_{1n} \\
    p_{21} & p_{22} & \ldots 
    & p_{2n} \\
    \vdots & \vdots & \ddots 
    & \vdots \\
    p_{m1} & p_{m2} & \ldots 
    & p_{mn} 
  \end{bmatrix}
\end{equation*}
\end{example}



\section{Mezery v~matematickém módu} \label{sec:math-spacing}

\index{matematické mezery} Jestliže nejsme spokojeni s~mezerami,
jaké \LaTeX{} použil při vysázení matematického vzorce, můžeme
je upravit vložením speciálních \uv{mezerových} příkazů:
\ci{,} pro $\frac{3}{18}\:\textrm{quad}$
(\demowidth{0.166em}), \ci{:} pro $\frac{4}{18}\: \textrm{quad}$
(\demowidth{0.222em}) a~\ci{;} pro $\frac{5}{18}\: \textrm{quad}$
(\demowidth{0.277em}). %Backspace 
Zpětné lomítko následované mezerou, \verb*|\ |,
vygeneruje mezeru střední velikosti zhruba velikosti mezislovní
mezery. Příkazy \ci{quad} (\demowidth{1em}) a~\ci{qquad} (\demowidth{2em})
vygenerují mezery větší. Velikost \ci{quad} je rovna šířce písmene
`M' aktivního fontu. \verb|\!|\cih{"!} vygeneruje zápornou mezeru
$-\frac{3}{18}\:\textrm{quad}$ ($-$\demowidth{0.166em}).

Všimněte si, že `d' označující diferenciál se tradičně sází vzpřímeně:
\begin{example}
\begin{equation*}
  \int_1^2 \ln x \mathrm{d}x 
  \qquad
  \int_1^2 \ln x \,\mathrm{d}x
\end{equation*}
\end{example}


V~následujícím příkladu definujeme nový příkaz \ci{ud}, který
vygeneruje ``$\,\mathrm{d}$'' (všimněte si mezery \demowidth{0.166em}
před $\text{d}$), abychom si ušetřili psaní. 

Příkaz \ci{newcommand} se
umisťuje obvykle do preambule dokumentu. %  More on
% \ci{newcommand} in section~\ref{} on page \pageref{}. To Do: Add label and
% reference to "Customising LaTeX" -> "New Commands, Environments and Packages"
% -> "New Commands".
\begin{example}
\newcommand{\ud}{\,\mathrm{d}}

\begin{equation*}
 \int_a^b f(x)\ud x 
\end{equation*}
\end{example}

Chcete-li vysázet vícenásobné integrály, zjistíte, že mezery
mezi symboly jednotlivých integrálů jsou příliš široké. Můžete
je buď upravit pomocí \civ{"!}{!}, nebo použít příkazy \ci{iint},
\ci{iiint}, \ci{iiiint} nebo \ci{idotsint} definované v~balíku
\pai{amsmath}.

\begin{example}
\newcommand{\ud}{\,\mathrm{d}}

\begin{IEEEeqnarray*}{c}
  \int\int f(x)g(y) 
                  \ud x \ud y \\
  \int\!\!\!\int 
         f(x)g(y) \ud x \ud y \\
  \iint f(x)g(y)  \ud x \ud y 
\end{IEEEeqnarray*}
\end{example}

Další informace najdete v~dokumentu \texttt{testmath.tex}
(distribuovaném spolu s~\AmS-\LaTeX em) nebo kapitole osm
knihy \companion{}.

\subsection{Neviditelné výrazy}

Při vertikálním zarovnávání textu pomocí \verb|^| a~\verb|_|
občas potřebujeme upravit horizontální mezery implicitně
\LaTeX em použité. K~tomu se hodí příkaz \ci{phantom}, pomocí
kterého vložíme mezeru, která má stejné rozměry jako by byly
rozměry příslušného textu uvedeného jako parametr příkazu.
Typické použití je ukázáno v~následujícím příkladu:
\begin{example}
\begin{equation*}
{}^{14}_{6}\text{C}
\qquad \text{versus} \qquad
{}^{14}_{\phantom{1}6}\text{C}
\end{equation*}
\end{example}
Poznámka: Pokud sázíte větší množství chemických výrazů (např.
izotopů z~předchozího příkladu), můžete použít balík \pai{mhchem}.

\section{Hrátky s~matematickými fonty}\label{sec:fontsz}
Různé matematické fonty jsou uvedeny v~tabulce~\ref{mathalpha}
na straně \pageref{mathalpha}.
\begin{example}
 $\Re \qquad
  \mathcal{R} \qquad
  \mathfrak{R} \qquad
  \mathbb{R} \qquad $  
\end{example}
Poslední dva fonty vyžadují \pai{amssymb} nebo \pai{amsfonts}.

Občas potřebujete \LaTeX u zadat správnou velikost fontu.
V~matematickém módu se to dělá pomocí následujících čtyř
příkazů:
\begin{flushleft}
\ci{displaystyle}~($\displaystyle 123$),
 \ci{textstyle}~($\textstyle 123$), 
\ci{scriptstyle}~($\scriptstyle 123$)
a~\ci{scriptscriptstyle}~($\scriptscriptstyle 123$).
\end{flushleft}

Jestliže je $\sum$ uvedeno jako součást zlomku, bude příslušný
symbol vysázen v~textovém stylu, což můžete změnit, např. pomocí
\ci{displaystyle}.
\begin{example}
\begin{equation*}
 P = \frac{\displaystyle{ 
   \sum_{i=1}^n(x_i-x)
     (y_i-y)}} 
   {\displaystyle{\left[
   \sum_{i=1}^n(x_i-x)^2
   \sum_{i=1}^n(y_i-y)^2
   \right]^{1/2}}}
\end{equation*}    
\end{example}
Poznámka: Explicitní měnění stylů může ovlivnit zobrazení velkých operátorů
a~limit.

% This is not a math accent, and no maths book would be set this way.
% mathop gets the spacing right.


\subsection{Tučné symboly}
\index{tučné symboly}

Vysázení tučných symbolů v~\LaTeX u je docela obtížné. Pravděpodobně
to byl záměr, protože amatérští sazeči je používají zbytečně často.
Příkazem \verb|\mathbf| sice můžeme nastavit tučné písmo, ale
jen pro vzpřímené písmo a~ne pro italiku, se kterou při sazbě matematiky
pracujeme především. Navíc se nezmění tučnost malých řeckých písmen.
Jinou možností je použít příkaz \ci{boldmath}. Je nutné ho uvést
\emph{mimo matematický mód}. Příkaz \ci{boldmath} funguje i~pro symboly:
\begin{example}
$\mu, M \qquad 
\mathbf{\mu}, \mathbf{M}$
\qquad \boldmath{$\mu, M$}
\end{example}

Balíky \pai{amsbsy} (součást \pai{amsmath}) a~\pai{bm}
(kolekce balíků \texttt{tools}) obsahují příkaz \ci{boldsymbol}, zde jedna ukázka:

\begin{example}
$\mu, M \qquad
\boldsymbol{\mu},
\boldsymbol{M}$
\end{example}


\section{Věty, lemmata, \ldots}

Při tvorbě matematických dokumentů pravděpodobně budete 
potřebovat způsob, jak vysázet lemmata, definice, axiomy
a~podobné struktury.
\begin{lscommand}
\ci{newtheorem}\verb|{|\emph{name}\verb|}[|\emph{counter}\verb|]{|%
         \emph{text}\verb|}[|\emph{section}\verb|]|
\end{lscommand}
Argument \emph{name} je krátké jméno, které identifikuje daný
\emph{teorém}. Argument \emph{text} je skutečné jméno
teorému, které bude vysázeno.

Argumenty v~hranatých závorkách jsou nepovinné. Oba specifikují
číslování, které se pro teorém použije. Argumentem
\emph{counter} můžete specifikovat jméno (\emph{name}) dříve
deklarovaného teorému. Nový teorém pak bude číslován
ve stejné posloupnosti. Argument \emph{section} umožňuje specifikovat
jednotku, o~kterou budou čísla teorémů zvětšována.

Příkaz \ci{newtheorem} uvedený v~preambuli vašeho dokumentu 
je \LaTeX em proveden a~vy potom v~dokumentu můžete tento
příkaz používat.
\begin{code}
\verb|\begin{|\emph{name}\verb|}[|\emph{text}\verb|]|\\
Toto je text mé zajímavé věty.\\
\verb|\end{|\emph{name}\verb|}|     
\end{code}

Balík \pai{amsthm} poskytuje příkaz
\ci{theoremstyle}\verb|{|\emph{style}\verb|}|,
pomocí kterého můžete vybrat jeden ze tří předdefinovaných
stylů:
\texttt{definition} (titulek teorému tučným písmem,
  tělo teorému normálním -- vzpřímeným -- písmem),
\texttt{plain} (titulek tučným, tělo italikou) nebo
\texttt{remark} (titulek italikou, tělo vzpřímeným písmem).
Balík \pai{amsthm} je součástí \AmS-\LaTeX u.

Dost už teorie. Následující příklady
by měly vyjasnit všechny pochybnosti ohledně použití prostředí
\verb|\newtheorem|.

% actually define things
\theoremstyle{definition} \newtheorem{law}{Právo}
\theoremstyle{plain}      \newtheorem{jury}[law]{Porota}
\theoremstyle{remark}     \newtheorem*{marg}{Margaret}

Nejdříve nadefinujeme teorémy:

\begin{verbatim}
\theoremstyle{definition} \newtheorem{law}{Právo}
\theoremstyle{plain}      \newtheorem{jury}[law]{Porota}
\theoremstyle{remark}     \newtheorem*{marg}{Margaret}
\end{verbatim}

\begin{example}
\begin{law} \label{law:box}
Neskrývejte se v~lavici svědků!
\end{law}
\begin{jury}[12 soudců]
Mohl jste to být vy! Dejte
si pozor a~dodržujte
zákon~\ref{law:box}.\end{jury}
\begin{marg}Ne, ne, ne!\end{marg}
\end{example}

Teorém \uv{Porota} používá stejný čítač jako teorém \uv{Právo},
takže číslo tohoto čítače budou zvyšovat všechna použití
jak věty \uv{Porota}, tak věty \uv{Právo}. Argument
v~hranatých závorkách specifikuje titulek teorému.

\begingroup
\renewcommand{\thesection}{\thechapter\arabic{section}}
\begin{example}
\newtheorem
   {mur}{Murphy}[section]

\begin{mur} Jestliže se něco
dá udělat dvěma nebo více
způsoby a~jeden z~nich vede
ke katastrofě, někdo si tento
způsob zvolí.\end{mur}
\end{example}
\endgroup

``Murphyho'' teorému je přiděleno číslo, které se vztahuje k~číslu
aktuální sekce. Je možno použít i~jinou \uv{jednotku}, tedy místo
sekce použít např. kapitolu nebo podsekci.

Jestliže si chcete teorémy přizpůsobit do posledního detailu,
můžete použít balík \pai{ntheorem}.


\subsection{Důkazy a~symbol \uv{konec důkazu}}
\label{sec:putting-qed-right}

Balík \pai{amsthm} obsahuje i~definici prostředí \ei{proof}.

\begin{example}
\begin{proof}
 Triviální, použijte
 \begin{equation*}
   E=mc^2.
 \end{equation*}
\end{proof}
\end{example}

Příkazem \ci{qedhere} můžete symbol \uv{konec důkazu} posunout
-- užitečné v~případě, kdy by jinak tento symbol byl sám vysázen
na novém řádku.

\begin{example}
\begin{proof}
 Triviální, použijte
 \begin{equation*}
   E=mc^2. \qedhere
 \end{equation*}
\end{proof}
\end{example}

Bohužel ale tato úprava nebude fungovat pro \texttt{IEEEeqnarray}:
\begin{example}
\begin{proof}
  Toto je důkaz, který končí
  soustavou rovnic:
  \begin{IEEEeqnarray*}{rCl}
    a & = & b + c  \\
      & = & d + e. \qedhere
  \end{IEEEeqnarray*}  
\end{proof}
\end{example}
\noindent
Důvodem je vnitřní struktura \texttt{IEEEeqnarray}: k~oběma
okrajům soustavy rovnic je připojen neviditelný sloupec obsahující
natahovací mezery. Tím \texttt{IEEEeqnarray} zajistí, že soustava
bude horizontálně vycentrovaná. Příkaz \ci{qedhere} by bylo
potřeba umístit \emph{vně} této natahovací mezery, ale to nejde,
protože oba \uv{neviditelné sloupce} jsou uživateli nepřístupné.

Máme ale jednoduchou možnost nápravy: natahovací sloupce nadefinujeme
sami!
\begin{example}
\begin{proof}
  Toto je důkaz, který končí
  soustavou rovnic:
  \begin{IEEEeqnarray*}{+rCl+x*}
    a & = & b + c    \\
      & = & d + e. & \qedhere
  \end{IEEEeqnarray*}  
\end{proof}
\end{example}
\noindent
Všimněte si, že \verb=+= v~\verb={+rCl+x*}= značí natahovací mezery,
jednu nalevo od rovnic, kterou, pokud není specifikována, určí
\texttt{IEEEeqnarray} automaticky!, a~druhou napravo.
Napravo, \emph{za} natahovací sloupec, umístíme prázdný sloupec,
\verb=x=. Ten budeme potřebovat jen na posledním řádku, na kterém
do tohoto sloupce umístíme příkaz \ci{qedhere}. Konečně, specifikujeme
\verb=*=, což značí nulovou mezeru, která zabrání, aby
\texttt{IEEEeqnarray} přidalo další natahovací mezeru \verb=+=!

S~číslováním rovnic máme podobný problém. Když porovnáte
\begin{example}
\begin{proof}
  Toto je důkaz, který končí
  číslovanou rovnicí:
  \begin{equation}
    a = b + c.
  \end{equation}
\end{proof}
\end{example}
\noindent
s~následujícím příkladem%
\begin{example}
\begin{proof}
  Toto je důkaz, který končí
  číslovanou rovnicí:
  \begin{equation}
    a = b + c. \qedhere
  \end{equation}
\end{proof}
\end{example}
\noindent
všimnete si, že v~druhé verzi je (korektně) $\Box$ mnohem
blíže k~rovnici než v~první verzi.

Podobně, správný způsob vložení symbolu \uv{konec důkazu} na konec
soustavy rovnic je tento:
\begin{example}
\begin{proof}
  Toto je důkaz, který končí
  soustavou rovnic:
  \begin{IEEEeqnarray}{+rCl+x*}
    a & = & b + c \\
      & = & d + e. \\
    &&& \qedhere\nonumber
  \end{IEEEeqnarray}  
\end{proof}
\end{example}
\noindent
Na rozdíl od (nesprávného způsobu):
\begin{example}
\begin{proof}
  Toto je důkaz, který končí
  soustavou rovnic:
  \begin{IEEEeqnarray}{rCl}
    a & = & b + c \\
      & = & d + e.
  \end{IEEEeqnarray}  
\end{proof}
\end{example}


%

% Local Variables:
% TeX-master: "lshort"
% mode: latex
% mode: flyspell
% End:
