From abc511f93221e1cbb463df515f065b5e3a6f705d Mon Sep 17 00:00:00 2001
From: "David A. Madore" <david+git@madore.org>
Date: Thu, 12 Jan 2017 17:02:04 +0100
Subject: An algebraic language whose complement is not algebraic (the language
 of non-squares).

---
 exercices2.tex | 127 +++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 114 insertions(+), 13 deletions(-)

(limited to 'exercices2.tex')

diff --git a/exercices2.tex b/exercices2.tex
index e100e11..10cd7d7 100644
--- a/exercices2.tex
+++ b/exercices2.tex
@@ -91,31 +91,127 @@ Git: \input{vcline.tex}
 %
 %
 
-\exercice
+\exercice\label{non-square-words-is-algebraic}
 
-Soit $\Sigma = \{a,b\}$.  Montrer que le langage $L := \{ww :
-w\in\Sigma^*\}$ constitué des mots de la forme $ww$ (par exemple,
-$\varepsilon$, $aa$, $abab$, $abaaba$ ou encore $aabbaabb$) n'est pas
-algébrique.  On pourra pour considérer son intersection avec le
-langage $L_0$ dénoté par l'expression rationnelle $a{*}b{*}a{*}b{*}$
-et appliquer le lemme de pompage.
+Soit $\Sigma = \{a,b\}$.  On considère le langage $M$ des mots qui
+\emph{ne s'écrivent pas} sous la forme $ww$ avec $w\in\Sigma^*$
+(c'est-à-dire sous la forme d'un carré ; autrement dit, le langage $M$
+est le \emph{complémentaire} du langage $Q$ des carrés considéré dans
+l'exercice \ref{square-words-not-algebraic}) : par exemple, $M$
+contient les mots $a$, $b$, $ab$, $aab$ et $aabb$ mais pas
+$\varepsilon$, $aa$, $abab$ ni $abaaba$.
+
+(0) Expliquer pourquoi tout mot sur $\Sigma$ de longueur impaire est
+dans $M$, et pourquoi un mot $x_1\cdots x_{2n}$ de longueur paire $2n$
+est dans $M$ si et seulement si il existe $i$ tel que $x_i \neq
+x_{n+i}$.
+
+On considère par ailleurs la grammaire hors contexte $G$
+(d'axiome $S$)
+\[
+\begin{aligned}
+S &\rightarrow A \;|\; B \;|\; AB \;|\; BA\\
+A &\rightarrow a \;|\; aAa \;|\; aAb \;|\; bAa \;|\; bAb\\
+B &\rightarrow b \;|\; aBa \;|\; aBb \;|\; bBa \;|\; bBb\\
+\end{aligned}
+\]
+
+(1) Décrire le langage $L(G,A)$ des mots dérivant de $A$ dans la
+grammaire $G$ (autrement dit, le langage engendré par la grammaire
+identique à $G$ mais ayant pour axiome $A$).  Décrire de même
+$L(G,B)$.
+
+(2) Montrer que tout mot de longueur impaire est dans le
+langage $L(G)$ engendré par $G$.
+
+(3) Montrer que tout mot $t \in M$ de longueur paire est dans $L(G)$.
+(Indication : si $t = x_1\cdots x_{2n}$ est de longueur paire $2n$ et
+que $x_i \neq x_{n+i}$, on peut considérer la factorisation de $t$ en
+$x_1\cdots x_{2i-1}$ et $x_{2i}\cdots x_{2n}$.)
+
+(4) Montrer que tout mot de $L(G)$ de longueur paire est dans $M$.
+
+(5) En déduire que $M$ est algébrique.
 
 \begin{corrige}
-Supposons par l'absurde que $L$ soit algébrique : alors son
+(0) En remarquant que si $n = |w|$ alors $|ww| = 2n$, on constate que
+  tout mot de la forme $ww$ est de longueur paire, et de plus, que
+  pour un mot de longueur $2n$, être de la forme $ww$ signifie que son
+  préfixe de longueur $n$ soit égal à son suffixe de longueur $n$ ;
+  c'est-à-dire, si $t = x_1\cdots x_{2n}$, que $x_1\cdots x_n =
+  x_{n+1}\cdots x_{2n}$, ce qui signifie exactement $x_i = x_{n+i}$
+  pour tout $1\leq i\leq n$.
+
+(1) La règle $A \rightarrow a \,|\, aAa \,|\, aAb \,|\, bAa \,|\, bAb$
+  permet de faire à partir de $A$ une dérivation qui ajoute un nombre
+  quelconque de fois une lettre ($a$ ou $b$) de chaque part de $A$, et
+  finalement remplace ce $A$ par $a$.  On obtient donc ainsi
+  exactement les mots de longueur impaire ayant un $a$ comme lettre
+  centrale : $L(G,A) = \{w_1aw_2 : |w_1|=|w_2|\}$.  De même, $L(G,B) =
+  \{w_1bw_2 : |w_1|=|w_2|\}$.
+
+(2) Tout mot de longueur impaire est soit dans $L(G,A)$ soit dans
+  $L(G,B)$ selon que sa lettre centrale est un $a$ ou un $b$.  Il est
+  donc dans $L(G)$ en vertu des règles $S\rightarrow A$ et
+  $S\rightarrow B$.
+
+(3) Soit $t = x_1\cdots x_{2n}$ un mot de $M$ de longueur paire $2n$ :
+  d'après (0), il existe $i$ tel que $x_i \neq x_{n+i}$.  Posons alors
+  $u = x_1\cdots x_{2i-1}$ et $v = x_{2i}\cdots x_{2n}$.  Chacun de
+  $u$ et de $v$ est de longueur impaire.  De plus, leurs lettres
+  centrales sont respectivement $x_i$ et $x_{n+i}$, et elles sont
+  différentes : l'une est donc un $a$ et l'autre un $b$ ; mettons sans
+  perte de généralité que $x_i = a$ et $x_{n+i} = b$.  Alors $u \in
+  L(G,A)$ d'après (1) et $v \in L(G,B)$ : le mot $t = uv$ s'obtient
+  donc par la règle $S \rightarrow AB$ (suivie de dérivations de $u$ à
+  partir de $A$ et de $v$ a partir de $B$) : ceci montre bien $t \in
+  L(G)$.
+
+(4) On a vu en (1) que tout mot dérivant de $A$ ou de $B$ est de
+  longueur impaire.  Un mot $t$ de $L(G)$ de longueur paire dérive
+  donc forcément de $AB$ ou de $BA$.  Sans perte de généralité,
+  supposons qu'il dérive de $AB$, et on veut montrer qu'il appartient
+  à $M$.  Appelons $u$ le facteur de $t$ qui dérive de $A$ et $v$ le
+  facteur de $t$ qui dérive de $B$ : on sait alors (toujours
+  d'après (1)) que $u$ s'écrit sous la forme $x_1\cdots x_{2i-1}$ où
+  la lettre centrale $x_i$ vaut $a$, et que $v$ s'écrit sous la forme
+  (quitte à continuer la numérotation des indices) $x_{2i}\cdots
+  x_{2n}$ où la lettre centrale $x_{n+i}$ vaut $b$.  Alors $x_{n+i}
+  \neq x_i$ donc le mot $t$ n'est pas dans $L$ d'après (0).
+
+(5) On a $M = L(G)$ car d'après les questions précédentes, tout mot de
+  longueur impaire est dans les deux et qu'un mot de longueur paire
+  est dans l'un si et seulement si il est dans l'autre.  On a donc
+  montré que $M$ est algébrique.
+\end{corrige}
+
+
+\exercice\label{square-words-not-algebraic}
+
+Soit $\Sigma = \{a,b\}$.  Montrer que le langage $Q := \{ww :
+w\in\Sigma^*\}$ constitué des mots de la forme $ww$ (autrement dit,
+des carrés ; par exemple, $\varepsilon$, $aa$, $abab$, $abaaba$ ou
+encore $aabbaabb$ sont dans $Q$) n'est pas algébrique.  On pourra pour
+considérer son intersection avec le langage $L_0$ dénoté par
+l'expression rationnelle $a{*}b{*}a{*}b{*}$ et appliquer le lemme de
+pompage.
+
+\begin{corrige}
+Supposons par l'absurde que $Q$ soit algébrique : alors son
 intersection avec le langage rationnel $L_0 = \{a^m b^n a^{m'} b^{n'} :
-m,n,m',n' \in \mathbb{N}\}$ est encore algébrique.  Or $L \cap L_0 =
+m,n,m',n' \in \mathbb{N}\}$ est encore algébrique.  Or $Q \cap L_0 =
 \{a^m b^n a^m b^n : m,n \in \mathbb{N}\}$.  On va maintenant utiliser
 le lemme de pompage pour arriver à une contradiction.
 
 Appliquons le lemme de pompage pour les langages algébriques au
-langage $L \cap L_0 = \{a^m b^n a^m b^n : m,n \in \mathbb{N}\}$
+langage $Q \cap L_0 = \{a^m b^n a^m b^n : m,n \in \mathbb{N}\}$
 considéré : appelons $k$ l'entier dont le lemme de pompage garantit
 l'existence.  Considérons le mot $t := a^k b^k a^k b^k$ : dans la
 suite de cette démonstration, on appellera « bloc » de $t$ un des
 quatre facteurs $a^k$, $b^k$, $a^k$ et $b^k$.  D'après la propriété de
 $k$ garantie par le lemme de pompage, il doit exister une
 factorisation $t = uvwxy$ pour laquelle on a (i) $|vx|\geq 1$,
-(ii) $|vwx|\leq k$ et (iii) $uv^iwx^iy \in L \cap L_0$ pour
+(ii) $|vwx|\leq k$ et (iii) $uv^iwx^iy \in Q \cap L_0$ pour
 tout $i\geq 0$.
 
 Chacun de $v$ et de $x$ doit être contenu dans un seul bloc, i.e.,
@@ -133,14 +229,19 @@ D'après la propriété (i), au moins l'un de $v$ et de $x$ n'est pas le
 mot vide.  Si ce facteur non trivial est dans le premier bloc $a^k$,
 l'autre ne peut pas être dans l'autre bloc $a^k$ d'après ce qui vient
 d'être dit : donc $uv^iwx^iy$ est de la forme $a^{k'} b^n a^k b^k$
-avec $k'>k$ si $i>1$, qui n'appartient pas à $L\cap L_0$, une
+avec $k'>k$ si $i>1$, qui n'appartient pas à $Q\cap L_0$, une
 contradiction.  De même, le facteur non trivial est dans le premier
 bloc $b^k$, l'autre ne peut pas être dans l'autre bloc $b^k$ : donc
 $uv^iwx^iy$ est de la forme $a^m b^{k'} a^{m'} b^k$ avec $k'>k$ si
-$i>1$, qui n'appartient pas à $L\cap L_0$, de nouveau une
+$i>1$, qui n'appartient pas à $Q\cap L_0$, de nouveau une
 contradiction.  Les deux autres cas sont analogues.
 \end{corrige}
 
+\textbf{Remarque :} Les exercices \ref{non-square-words-is-algebraic}
+et \ref{square-words-not-algebraic} mis ensemble donnent un exemple
+explicite d'un langage $M$ algébrique dont le complémentaire $Q$ n'est
+pas algébrique.
+
 
 %
 %
-- 
cgit v1.2.3

