Lemme du pompiste IFT2105 29 septembre 2015 1 Lemme du pompiste - Rappel Soit L ∈ REG. Le lemme du pompiste dit la chose suivante : Il existe une longueur de pompage p > 1 telle que pour tout mot w ∈ L de longueur au moins p, w peut être écrit par w = xyz avec 1. |y| ≥ 1, 2. |xy| ≤ p et 3. ∀i ≥ 0, xy i z ∈ L En logique propositionnelle cela signifie : (∃p > 1) ∀w ∈ Σ∗ [(w ∈ L) ∧ (|w| ≥ p)] ∃x, y, z ∈ Σ∗ (w = xyz) ∧ (|y| ≥ 1) ∧ (|xy| ≤ p) ∧ (∀i ≥ 0, xy i z ∈ L) . Pour montrer qu’un langage n’est pas régulier, il suffit de montrer que (∀p > 1) ∃w ∈ Σ∗ [(w ∈ L) ∧ (|w| ≥ p)] ∀x, y, z ∈ Σ∗ (w = xyz) ∧ (|y| ≥ 1) ∧ (|xy| ≤ p) ∧ (∃i ≥ 0, xy i z ∈ / L) . 1.1 FINI Soit L un langage fini, tous les langages finis sont réguliers (car FINI ⊂ REG), donc le lemme du pompiste doit tenir. Or, comme xy i z ∈ L pour tout i ≥ 0, cela n’implique-t-il pas que L soit de cardinalité infinie ? Après tout, il y a un nombre infini de i possibles. N’a-t-on pas une contradiction ? 1 Non ! Il n’y a pas de contradiction. Pour tout langage fini L, il existe bien une longueur de pompage p telle que pour tout w ∈ L avec |w| ≥ p, ∃x, y, z avec xyz = w, |xy| ≤ p, |y| ≥ 1 et ∀i ≥ 0, xy i z ∈ L. Posons p − 1 la longueur du mot le plus long dans L (il en existe au moins un puisque L est fini). Ainsi, il n’existe pas de mot w ∈ L avec w ≥ p. On peut dire n’importe quoi sur un tel mot et la proposition reste vraie par vacuité. Montrez que les langages suivants sur Σ = {a, b} ne sont pas réguliers 2 2.1 L = {x · an x ∈ Σ∗ et |x| = n} On suppose que L est régulier et on montre qu’on arrive à une contradiction dans le lemme du pompiste. Soit p ≥ 1 la longueur de pompage donnée par le lemme. Étudions le mot w = bp ap . On a bien que w ∈ L et |w| = 2p ≥ p. Soit xyz = w une décomposition quelconque en trois partie de w. Supposons que les deux premières conditions du lemme tiennent, soient |xy| ≤ p et |y| ≥ 1 et montrons que la troisième condition ne peut pas tenir. Si |xy| ≤ p et |y| ≥ 1, alors y ne contient que des b mais au moins un b. Observons le mot donné lorsqu’on pompe une fois. xy 2 z = bp+|y| ap . Ce mot contient strictement plus de b que de a et ne peut pas être dans le langage L. On arrive à une contradiction et on conclut que L ∈ / REG. 2.2 Montrons que L = {xx x ∈ Σ∗ } n’est pas régulier Si L est régulier, alors le lemme du pompiste doit tenir Soit p ≥ 1. Étudions le mot w = ap bp ap bp ∈ L qui peut être divisé en trois parties xyz. Si on a que |xy| ≤ p et |y| ≥ 1, alors y ne contient que des a et au moins un a. xy 3 z ne peut pas faire parti de L puisqu’il est de la forme ap+2|y| bp ap bp . En particulier, on observe que la première moitié contient plus de a que la deuxième moitié. L ne peut pas être régulier. 2 Montrons que L0 = {xy |x| = |y| et x 6= y} n’est pas régulier 2.3 L est constitué des mots de longueur paire qui ne sont pas constitués de deux mots identiques. |x| = |y| et x = y} et M = Regardons plutôt les languages L = {xy {x |x| = 2n}. On a L = M ∩ L0 On a déjà montré que L n’était pas régulier dans la question précédente. Si M est régulier, alors on conclura que L0 ne l’est pas puisque la classe REG est fermée sous la complémentation et sous l’intersection. En effet, si M ∈ REG et L0 ∈ REG, alors L0 ∈ REG et M ∩ L0 = L ∈ REG ce qui est une contradiction. 2.3.1 Montrons que M = {x |x| = 2n} est régulier Il est décidé par l’automate suivant : Σ start P I Σ 3 Montrez que REG est fermée sous la soustraction d’ensemble Soient L, M ∈ REG on rappelle la définition de soustraction sur les ensembles : L\M ≡ L − M := L ∩ M REG est fermée sous l’intersection et la complémentation, donc L, M ∈ REG =⇒ L ∩ M ∈ REG. 3.1 L = {ap p est premier} Supposons que L est régulier et contradisons le lemme du pompiste. 3 Posons w = an où n est un premier et n > p + 1 (un tel n existe puisqu’il existe un nombre infini de nombres premiers). Donc w ∈ L, |w| ≥ p. Soit une décomposition w = xyz avec |y| ≥ 1 et |xy| ≤ p. Posons i = |xz|, alors |xy i z| = |x| + |y| × i + |z| = |xz| + |y| × |xz| = (1 + |y|) × |xz|. Or, (1 + |y|) et |xz| sont plus grands que 1, car |y| ≥ 1 =⇒ 1 + |y| > 1 |xy| ≤ p =⇒ |xz| ≥ |xyz| − max |y| > p + 1 − p > 1. et Ainsi, |xy |xz| z| est composé. On a donc que xy |xz| z ∈ / L et L n’est pas régulier. 4