\documentclass{fja}
\usepackage[shorthands=off,czech]{babel}
\usepackage{IEEEtrantools}
\usepackage{hyperref}
\hypersetup{
    colorlinks=true,
    urlcolor=blue
}

% vim: spell spelllang=cs

\assignment{11}
\exercise{1}
\points{0,5}
\duedate{9. 5. 2022 12:00}

\newcommand{\smlnum}[1]{\text{\scriptsize(#1)}\ }
\newcommand{\ralign}[1]{\IEEEeqnarraymulticol{1}{r}{#1}}

%%% ZDE NAPISTE SVOJE UCO A JMENO
\name{}
\uco{}


\begin{document}
\begin{zadani}
Uvažte následující bezkontextovou gramatiku $G$ generující výrazy
zjednodušeného \href{https://en.wikipedia.org/wiki/System_F}{\emph{Systému F}}
(Lambda kalkul druhého řádu):

\[ G = (\set{M, X, T, A}, \set{x, a, ., :, [, ], \lambda, \forall, \Rightarrow}, P, M), \]
\vspace{-20pt}
\begin{align*}
P = \
        &\set{ \\
        &\smlnum{1}  M \to X,  &
        &\smlnum{4}  X \to xX, &
        &\smlnum{6}  T \to a,  &
        &\smlnum{10} A \to aA, \\
        &\smlnum{2}  M \to [\lambda X : T.\ M], &
        &\smlnum{5}  X \to \eps,                &
        &\smlnum{7}  T \to aA,                  &
        &\smlnum{11} A \to a                    \\
        &\smlnum{3}  M \to [M M],             &
    & & &\smlnum{8}  T \to [T \Rightarrow T], \\
& & & & &\smlnum{9}  T \to [\forall A.\ T], \\
&}.
\end{align*}


\noindent
\begin{enumerate}[a)]
    \item Uveďte analyzátor \emph{shora dolů} a analyzujte pomocí něj
          slovo \uv{$[\lambda x : [a \Rightarrow aa].\ x]$}.
    \item Uveďte analyzátor \emph{zdola nahoru} a analyzujte pomocí něj
          slovo \uv{$[[\lambda x : a.\ x] \ x]$}.
\end{enumerate}

\noindent
Zapište celý postup výpočtu analyzátoru (vizte definici 3.37 ze skript).
K přechodům mezi stavy výpočtu napište kromě čteného písmene také číslo
pravidla gramatiky $G$, které jste v daném kroku použili
$\left(\turnstile{\textit{čtené písmeno}}{\textit{číslo pravidla}}\right)$.
\end{zadani}

\begin{reseni}
%%% SEM PISTE SVE RESENI
\end{reseni}

\end{document}
