diff --git a/maths-pour-info/main.tex b/maths-pour-info/main.tex index 9febc06..5a7e161 100644 --- a/maths-pour-info/main.tex +++ b/maths-pour-info/main.tex @@ -137,9 +137,31 @@ \includegraphics[width=0.4\linewidth]{./img/graphe-etats-exemple.jpg} \end{center} - \subsection{Automate déterministe} + \subsection{Types d'automates finis} - À un état donné, il n'y a qu'une seule transition possible. + \subsubsection{Accessibilité} + + \begin{itemize} + + \item Un automate accessible ne contient que des états qui peuvent être atteints. + + \item Un automate coaccessible ne contient que des états pouvant mener à un état terminal. + + \item Un automate émondé est à la fois accessible et coaccessible. + + \end{itemize} + + \subsubsection{Automate standard} + + Un automate standard ne contient qu'un seul état initial. + Aucune transition n'arrive sur cet état initial. + + \subsubsection{Automate déterministe} + + À un état donné, il n'y a qu'une seule transition possible. + + Un automate non déterministe est plus difficile à mettre en \oe{}uvre en algorithmique qu'un automate déterministe. + En effet, en plus des pointeurs d'état et de symbole courant, il faudra maintenir une pile des opérations possibles. \subsubsection{Automate complet} @@ -148,18 +170,15 @@ Un automate complet est forcément également déterministe. + \subsection{Manipulations d'automates} + \subsubsection{Rendre un automate complet} On crée un état ``poubelle'' qui va accueillir les transitions manquantes sur chaque état. - \subsection{Automate non déterministe} + \subsubsection{Standardisation} - À un état donné, il y a plusieurs transitions possibles. - - Un automate non déterministe est plus difficile à mettre en \oe{}uvre en algorithmique qu'un automate déterministe. - En effet, il faudra en plus des pointeurs d'état et de symbole courant maintenir une pile des opérations possibles. - - \subsubsection{Déterminisation d'un automate} + \subsubsection{Déterminisation} Pour passer d'un automate non déterministe vers un automate déterministe, on va dérouler toutes les étapes de l'automate de départ en partant des états initiaux. S'il y a plusieurs états initiaux, on crée un nouvel état initial qu'on note comme l'ensemble des états initiaux de l'automate de départ. @@ -180,23 +199,6 @@ \end{enumerate} - \subsection{Accessibilité} - - \begin{itemize} - - \item Un automate accessible ne contient que des états qui peuvent être atteints. - - \item Un automate coaccessible ne contient que des états pouvant mener à un état terminal. - - \item Un automate émondé est à la fois accessible et coaccessible. - - \end{itemize} - - \subsection{Automate standard} - - Un automate standard ne contient qu'un seul état initial. - Aucune transition n'arrive sur cet état initial. - \subsection{Langage complémentaire} Le langage complémentaire est l'ensemble de mots qui n'appartient pas au langage reconnu par l'automate.