Bonjour,
Je suis en L3 Info, j'ai un DS Mercredi, et je ne comprends pas très bien une notion du cours sur les langages : comment prouver qu'un langage n'est pas rationnel ?
J'ai par exemple le langage L = { a^n b^n | n ;) N } et je dois prouver qu'il n'est pas rationnel avec l'algorithme de Kleene. Donc je suppose par l'absurde qu'il est rationnel, et selon l'algorithme, L doit alors pouvoir être reconnu par un automate fini. Je ne vois pas comment prouver que ce n'est pas le cas.
Suppose que ton langage est reconnu par un automate fini déterministe, et note S_n l'état sur lequel on aboutit quand on lit le mot a^n. Comme l'automate est fini il existe un couple i
Pour ce genre de question, on dispose du "pumping lemma" (il y a plusieurs traductions en français, celle que je préfère est : lemme du pompier). Va voir