\documentclass{ib102}
\usepackage[shorthands=off,czech]{babel}

% vim: spell spelllang=cs
% gen: ready

\assignment{6}
\exercise{2}
\points{2}
\duedate{29. 10. 2018}

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


\begin{document}
\begin{zadani}
Nechť $L$ je regulární jazyk nad abecedou $\Sigma=\set{a,b,c}$.

\noindent 
Mějme operaci $\mathit{changeWhileNotA}()$ takovou, že jazyk $R = changeWhileNotA(L)$ obsahuje pro každé slovo $w \in L$ modifikované slovo $w'$ vzniklé tak, že v začátku slova $w$, před prvním výskytem písmene $a$, se všechna písmena $b$ nahradí za písmena $c$ a všechna písmena $c$ se nahradí za písmena $b$. Pokud se ve slově $w$ žádné písmeno $a$ nenachází, pak dojde k těmto náhradám v celém slově.

\bigskip
\noindent
 Například:
\begin{align*}
\mathit{changeWhileNotA}(\set{\eps, a, bcba, bacab}) &= \set {\eps, a, cbca, cacab} \\
\mathit{changeWhileNotA}(\set{b, cbc, aba, bcabac}) &= \set{c, bcb, aba, cbabac} \\
\mathit{changeWhileNotA}(\set{bca}^+) &= \set{cba} \cdot \set{bca}^* \\
\mathit{changeWhileNotA}(\set{bc}^+) &= \set{cb}^+ \\
\mathit{changeWhileNotA}(\emptyset) &= \emptyset
\end{align*}

\bigskip
\noindent
Vaším úkolem je rozhodnout, zda pro každý regulární jazyk $L$ je jazyk $\mathit{changeWhileNotA}(L)$ taktéž regulární. Tedy zda je třída regulárních jazyků uzavřená na operaci $\mathit{changeWhileNotA}()$. Vaši odpověď dokažte, a to tak, že:
\begin{itemize}
	\item Pokud rozhodnete, že není, najděte regulární jazyk $L$ takový, že jazyk $\mathit{changeWhileNotA}(L)$ regulární není.
	\item Pokud rozhodnete, že je, dokažte tvrzení například s pomocí známých uzávěrových vlastností třídy regulárních jazyků prezentovaných na přednášce, nebo konstruktivně popsáním algoritmu na transformaci nějakého formalizmu pro popis regulárních jazyků.
\end{itemize}
\end{zadani}

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

\end{document}
