introduction aux langages formels
DESCRIPTION
Ce chapitre est une introduction aux langages formels. Il aborde les notions de mots, alphabets, langages, opérations sur les mots et opérations sur les langages.TRANSCRIPT
Chapitre 1 :
Introduction aux langages formels
Prof. A. DarghamFaculte des Sciences, Oujda
Filiere SMI- S4
Universite Mohamed Premier
Septembre, 2012
Sommaire du chapitre 1
Alphabets, mots et langages
Operations sur les mots
Monoıdes
Operations sur les langages
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Aphabets
Definition 1.1
Un alphabet est un ensemble fini de symboles (ou lettres).
Exemples 1.2
A = {0, 1}A = {a, b, c , ..., x , y , z}A = {if , else, a, b}A = {←, →, ↑, ↓}
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Mots
Definition 1.3
Un mot sur l’alphabet A est une suite finie et ordonnee,eventuellement vide, d’elements de l’alphabet.
C’est une concatenation de symboles.
Exemples 1.4
A = {0, 1}. 10001 et 11 sont deux mots sur A.
A = {a, b, c , ..., x , y , z}. ”smi” et ”tlc” sont deuxmots sur A.
A = {if , else, a, b}. if a else b est un mot sur A.
A = {←, →, ↑, ↓}. ←←→↓↑← est un mot sur A.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Mots
Definition 1.3
Un mot sur l’alphabet A est une suite finie et ordonnee,eventuellement vide, d’elements de l’alphabet.
C’est une concatenation de symboles.
Exemples 1.4
A = {0, 1}. 10001 et 11 sont deux mots sur A.
A = {a, b, c , ..., x , y , z}. ”smi” et ”tlc” sont deuxmots sur A.
A = {if , else, a, b}. if a else b est un mot sur A.
A = {←, →, ↑, ↓}. ←←→↓↑← est un mot sur A.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Mots
Definition 1.3
Un mot sur l’alphabet A est une suite finie et ordonnee,eventuellement vide, d’elements de l’alphabet.
C’est une concatenation de symboles.
Exemples 1.4
A = {0, 1}. 10001 et 11 sont deux mots sur A.
A = {a, b, c , ..., x , y , z}. ”smi” et ”tlc” sont deuxmots sur A.
A = {if , else, a, b}. if a else b est un mot sur A.
A = {←, →, ↑, ↓}. ←←→↓↑← est un mot sur A.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Mot vide
Definition 1.5
Sur tout alphabet A, on defini un mot, appele mot videcorrespondant a une sequence vide de symboles de A.
Ce mot est unique pour tout les alphabets, et on le notepar ε.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Mot vide
Definition 1.5
Sur tout alphabet A, on defini un mot, appele mot videcorrespondant a une sequence vide de symboles de A.
Ce mot est unique pour tout les alphabets, et on le notepar ε.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Longueur d’un mot
Definition 1.6
La longueur d’un mot w sur un alphabet A est lenombre de symboles constituant ce mot. On la notepar |w |.Le mot vide ε est de longueur 0.
Exemples 1.7
Sur A = {0, 1} : |10001| = 5 et |11| = 2.
Sur A = {if , else, a, b}. |if a else b| = 4.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Longueur d’un mot
Definition 1.6
La longueur d’un mot w sur un alphabet A est lenombre de symboles constituant ce mot. On la notepar |w |.Le mot vide ε est de longueur 0.
Exemples 1.7
Sur A = {0, 1} : |10001| = 5 et |11| = 2.
Sur A = {if , else, a, b}. |if a else b| = 4.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Notations
Notations 1.8
Soient A un alphabet, u et w des mots sur A.
|w | = 0⇔ w = ε.
Si |w | = n ≥ 1, on note par wi le i eme symbole de w, etl’on ecrit w = w1w2...wn.
On note par |w |u le nombre d’occurrences du mot u dansle mot w : c’est le nombre de fois ou le mot u apparaıtdans w comme facteur.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Langages
Definition 1.9
Un langage L sur un alphabet A est un ensemble (vide, finiou infini) de mots sur A.
Exemples 1.10
A = {0, 1} : L = {0, 00, 10, 000, 010, 100, ...} est unlangage sur A.
A = {a, b}. Le langage des mots sur A de longueurinferieure a 3 est L = {a, b, aa, ab, ba, bb}.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Langages
Definition 1.9
Un langage L sur un alphabet A est un ensemble (vide, finiou infini) de mots sur A.
Exemples 1.10
A = {0, 1} : L = {0, 00, 10, 000, 010, 100, ...} est unlangage sur A.
A = {a, b}. Le langage des mots sur A de longueurinferieure a 3 est L = {a, b, aa, ab, ba, bb}.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Langages
Definition 1.11
On note A∗ l’ensemble de tous les mots sur un alphabetA.
C’est aussi un langage sur A (appele langage universelsur A).
Un ensemble L est alors un langage sur A, si et seulementsi L ⊆ A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Langages
Definition 1.11
On note A∗ l’ensemble de tous les mots sur un alphabetA.
C’est aussi un langage sur A (appele langage universelsur A).
Un ensemble L est alors un langage sur A, si et seulementsi L ⊆ A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Alphabets, mots et langages
Langages
Definition 1.11
On note A∗ l’ensemble de tous les mots sur un alphabetA.
C’est aussi un langage sur A (appele langage universelsur A).
Un ensemble L est alors un langage sur A, si et seulementsi L ⊆ A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Concatenation ou produit
Definition 1.12
Soit un alphabet A et u = u1u2...un et v = v1v2...vm deuxmots sur A de longueurs respectives n et m.La concatenation de u et de v consiste a ”coller” le mot vjuste apres le mot u. On obtient un mot de longueur n + m,note u.v ou tout simplement uv : uv = u1u2...unv1v2...vm.
Exemples 1.13
A = {0, 1}, u = 101 et v = 001.Alors uv = 101001 et vu = 001101
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Concatenation ou produit
Definition 1.12
Soit un alphabet A et u = u1u2...un et v = v1v2...vm deuxmots sur A de longueurs respectives n et m.La concatenation de u et de v consiste a ”coller” le mot vjuste apres le mot u. On obtient un mot de longueur n + m,note u.v ou tout simplement uv : uv = u1u2...unv1v2...vm.
Exemples 1.13
A = {0, 1}, u = 101 et v = 001.Alors uv = 101001 et vu = 001101
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Proprietes de la concatenation
Proposition 1.14
1 La concatenation est associative :∀u, v , w ∈ A∗ : (uw)w = u(vw) = uvw
2 Le mot vide ε est l’element neutre de la concatenation :∀u ∈ A∗ : uε = εu = u
3 La concatenation n’est pas commutative.
4 ∀u, v ∈ A∗ : |uv | = |vu| = |u|+ |v |.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Proprietes de la concatenation
Proposition 1.14
1 La concatenation est associative :∀u, v , w ∈ A∗ : (uw)w = u(vw) = uvw
2 Le mot vide ε est l’element neutre de la concatenation :∀u ∈ A∗ : uε = εu = u
3 La concatenation n’est pas commutative.
4 ∀u, v ∈ A∗ : |uv | = |vu| = |u|+ |v |.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Proprietes de la concatenation
Proposition 1.14
1 La concatenation est associative :∀u, v , w ∈ A∗ : (uw)w = u(vw) = uvw
2 Le mot vide ε est l’element neutre de la concatenation :∀u ∈ A∗ : uε = εu = u
3 La concatenation n’est pas commutative.
4 ∀u, v ∈ A∗ : |uv | = |vu| = |u|+ |v |.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Proprietes de la concatenation
Proposition 1.14
1 La concatenation est associative :∀u, v , w ∈ A∗ : (uw)w = u(vw) = uvw
2 Le mot vide ε est l’element neutre de la concatenation :∀u ∈ A∗ : uε = εu = u
3 La concatenation n’est pas commutative.
4 ∀u, v ∈ A∗ : |uv | = |vu| = |u|+ |v |.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Puissance
Definition 1.15
Soient A un alphabet, n un nombre entier et w un mot sur A.On definit la puissance neme du mot w par :
wn =
{ε si n = 0;
wn−1w si n ≥ 1.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Puissance
Exemples 1.16
Soit A = {a, b} et w = bab.
w 0 = ε.
w 1 = w 0w = w = bab.
w 2 = w 1w = ww = babbab.
w 3 = w 2w = www = babbabbab.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Proprietes de la puissance
∀w ∈ A∗ : w 0 = ε.
∀w ∈ A∗,∀n, m ≥ 0 : (wn)m = wnm.
∀w ∈ A∗,∀n, m ≥ 0 : wnwm = wn+m.
∀w ∈ A∗,∀n ≥ 0 : |wn| = n|w |.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Egalite de deux mots
Definition 1.17
Deux mots u et v sur un meme alphabet A sont egaux(u = v), si et seulement si :
ils ont la meme longueur : |u| = |v | (disons un entier n).
l’ordre des symboles dans u est identique a celle dans v .
Autrement dis, u = v si et seulement si ui = vi , pour tout iallant de 1 a n ou n = |u| = |v |.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Miroir
Definition 1.18
Soit A un alphebt et w un mot sur A. Le miroir de w,note w est le mot obtenu en inversant l’ordre dessymboles dans w.
Voici une definition recursive du miroir d’un mot :
w =
{ε si w = ε;
au si w = ua, u ∈ A∗, a ∈ A.
Exemples 1.19
Soit w = ababca sur A = {a, b, c}. Alors w = acbaba.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Miroir
Definition 1.18
Soit A un alphebt et w un mot sur A. Le miroir de w,note w est le mot obtenu en inversant l’ordre dessymboles dans w.
Voici une definition recursive du miroir d’un mot :
w =
{ε si w = ε;
au si w = ua, u ∈ A∗, a ∈ A.
Exemples 1.19
Soit w = ababca sur A = {a, b, c}. Alors w = acbaba.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Proprietes du miroir
Proposition 1.20˜w = w (le miroir est une operation involutive).
uv = v u.
|w | = |w |.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Palindromes
Definition 1.21
Un mot w sur un alphabet A est un palindrome si w estidentique a son miroir, c’est-a-dire, si w = w .
Exemples 1.22
1001, 10101 sont des palindromes sur A = {0, 1}.radra, ete, non et ici sont des palindromes Francais.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Facteurs
Definition 1.23
Soit A un alphabet. On dit qu’un mot u est un facteur d’unmot w si, w = xuy pour certains mots x ∈ A∗ et y ∈ A∗.
Exemples 1.24
Soit w = abca sur A = {a, b, c}. Les facteurs de w sont :ε, a, b, c , ab, bc , ca, abc , bca, abca = w.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Prefixes
Definition 1.25
Soit A un alphabet. On dit qu’un mot u est un prefixe oufacteur gauche d’un mot w si, w = uv pour un certain motv ∈ A∗.
Exemples 1.26
Soit w = abca sur A = {a, b, c}. Les prefixes de w sont :ε, a, ab, abc , abca = w.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Suffixes
Definition 1.27
Soit A un alphabet. On dit qu’un mot u est un suffixe oufacteur droit d’un mot w si, w = vu pour un certain motv ∈ A∗.
Exemples 1.28
Soit w = abca sur A = {a, b, c}. Les suffixes de w sont :ε, a, ca, bca, abca = w.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Sous-mots
Definition 1.29
Soit A un alphabet. Un sous-mot u d’un mot w est une suiteextraite de w. Autrement dis, on obtient le mot u ensupprimant un certain nombre (eventuellement nul) desymboles de w.
Exemples 1.30
Soit w = abca sur A = {a, b, c}. Les sous-mots de w sont :ε, a, b, c , aa, ab, ac , ba, bc , ca, aba, abc , aca, abca = w.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les mots
Facteur, prefixe, suffixe et sous-mot propre
Definition 1.31
Soit A un alphabet. Un facteur (resp. prefixe, suffixe ousous-mot) propre d’un mot w est un facteur (resp. prefixe,suffixe ou sous-mot) u tel que u 6= ε et u 6= w.
On note par :
Fact(w) : l’ensemble des facteurs de w .
Pref (w) : l’ensemble des prefixes de w .
Suff (w) : l’ensemble des suffixes de w .
SMots(w) : l’ensemble des sous-mots de w .
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes
Definition 1.32
Un monoıde est un ensemble E muni d’une loi decomposition interne > qui soit :
associative.
et possedant un element neutre.
Exemples 1.33
(IN , +, 0) est un monoıde.
(IN , ×, 1) est un monoıde.
(A∗, ., ε) le langage universel sur A muni de laconcatenation est un monoıde.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes
Definition 1.32
Un monoıde est un ensemble E muni d’une loi decomposition interne > qui soit :
associative.
et possedant un element neutre.
Exemples 1.33
(IN , +, 0) est un monoıde.
(IN , ×, 1) est un monoıde.
(A∗, ., ε) le langage universel sur A muni de laconcatenation est un monoıde.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes
Definition 1.32
Un monoıde est un ensemble E muni d’une loi decomposition interne > qui soit :
associative.
et possedant un element neutre.
Exemples 1.33
(IN , +, 0) est un monoıde.
(IN , ×, 1) est un monoıde.
(A∗, ., ε) le langage universel sur A muni de laconcatenation est un monoıde.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes
Definition 1.32
Un monoıde est un ensemble E muni d’une loi decomposition interne > qui soit :
associative.
et possedant un element neutre.
Exemples 1.33
(IN , +, 0) est un monoıde.
(IN , ×, 1) est un monoıde.
(A∗, ., ε) le langage universel sur A muni de laconcatenation est un monoıde.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes
Definition 1.32
Un monoıde est un ensemble E muni d’une loi decomposition interne > qui soit :
associative.
et possedant un element neutre.
Exemples 1.33
(IN , +, 0) est un monoıde.
(IN , ×, 1) est un monoıde.
(A∗, ., ε) le langage universel sur A muni de laconcatenation est un monoıde.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes
Definition 1.32
Un monoıde est un ensemble E muni d’une loi decomposition interne > qui soit :
associative.
et possedant un element neutre.
Exemples 1.33
(IN , +, 0) est un monoıde.
(IN , ×, 1) est un monoıde.
(A∗, ., ε) le langage universel sur A muni de laconcatenation est un monoıde.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes
Definition 1.32
Un monoıde est un ensemble E muni d’une loi decomposition interne > qui soit :
associative.
et possedant un element neutre.
Exemples 1.33
(IN , +, 0) est un monoıde.
(IN , ×, 1) est un monoıde.
(A∗, ., ε) le langage universel sur A muni de laconcatenation est un monoıde.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Sous-monoıdes
Definition 1.34
Un sous-monoıde d’un monoıde (E , >) est une partieX ⊆ E, qui munie de la meme loi de composition > sur E , estun monoıde.
Proposition 1.35
(X , >) est un sous-monoıde de (E , >, e) si et seulement si :
X ⊆ E.
e ∈ X.
X est stable pour la loi > : x>y ∈ X ,∀x , y ∈ X.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Sous-monoıdes
Definition 1.34
Un sous-monoıde d’un monoıde (E , >) est une partieX ⊆ E, qui munie de la meme loi de composition > sur E , estun monoıde.
Proposition 1.35
(X , >) est un sous-monoıde de (E , >, e) si et seulement si :
X ⊆ E.
e ∈ X.
X est stable pour la loi > : x>y ∈ X ,∀x , y ∈ X.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Sous-monoıdes
Definition 1.34
Un sous-monoıde d’un monoıde (E , >) est une partieX ⊆ E, qui munie de la meme loi de composition > sur E , estun monoıde.
Proposition 1.35
(X , >) est un sous-monoıde de (E , >, e) si et seulement si :
X ⊆ E.
e ∈ X.
X est stable pour la loi > : x>y ∈ X ,∀x , y ∈ X.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Sous-monoıdes
Definition 1.34
Un sous-monoıde d’un monoıde (E , >) est une partieX ⊆ E, qui munie de la meme loi de composition > sur E , estun monoıde.
Proposition 1.35
(X , >) est un sous-monoıde de (E , >, e) si et seulement si :
X ⊆ E.
e ∈ X.
X est stable pour la loi > : x>y ∈ X ,∀x , y ∈ X.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Sous-monoıdes
Definition 1.34
Un sous-monoıde d’un monoıde (E , >) est une partieX ⊆ E, qui munie de la meme loi de composition > sur E , estun monoıde.
Proposition 1.35
(X , >) est un sous-monoıde de (E , >, e) si et seulement si :
X ⊆ E.
e ∈ X.
X est stable pour la loi > : x>y ∈ X ,∀x , y ∈ X.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Sous-monoıdes
Definition 1.34
Un sous-monoıde d’un monoıde (E , >) est une partieX ⊆ E, qui munie de la meme loi de composition > sur E , estun monoıde.
Proposition 1.35
(X , >) est un sous-monoıde de (E , >, e) si et seulement si :
X ⊆ E.
e ∈ X.
X est stable pour la loi > : x>y ∈ X ,∀x , y ∈ X.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs
Definition 1.36
Une partie F ⊆ E d’un d’un monoıde (E , >) est un ensemblede generateurs de (E , >), si tout element de E\{e}s’exprime sous forme d’une decomposition d’elements de E .
Exemples 1.37
{1} est un ensemble de generateurs de (IN , +).
L’ensemble des nombres premiers est un ensemble degenerateurs de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs
Definition 1.36
Une partie F ⊆ E d’un d’un monoıde (E , >) est un ensemblede generateurs de (E , >), si tout element de E\{e}s’exprime sous forme d’une decomposition d’elements de E .
Exemples 1.37
{1} est un ensemble de generateurs de (IN , +).
L’ensemble des nombres premiers est un ensemble degenerateurs de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs
Definition 1.36
Une partie F ⊆ E d’un d’un monoıde (E , >) est un ensemblede generateurs de (E , >), si tout element de E\{e}s’exprime sous forme d’une decomposition d’elements de E .
Exemples 1.37
{1} est un ensemble de generateurs de (IN , +).
L’ensemble des nombres premiers est un ensemble degenerateurs de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs
Definition 1.36
Une partie F ⊆ E d’un d’un monoıde (E , >) est un ensemblede generateurs de (E , >), si tout element de E\{e}s’exprime sous forme d’une decomposition d’elements de E .
Exemples 1.37
{1} est un ensemble de generateurs de (IN , +).
L’ensemble des nombres premiers est un ensemble degenerateurs de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs
Definition 1.36
Une partie F ⊆ E d’un d’un monoıde (E , >) est un ensemblede generateurs de (E , >), si tout element de E\{e}s’exprime sous forme d’une decomposition d’elements de E .
Exemples 1.37
{1} est un ensemble de generateurs de (IN , +).
L’ensemble des nombres premiers est un ensemble degenerateurs de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs independants
Definition 1.38
Si F ⊆ E est un ensemble de generateurs de (E , >) et sichaque element x 6= e possede une decomposition uniquedans E , alors F est dis un ensemble de generateursindependants de E .
Exemples 1.39
{1} est un ensemble de generateurs independants de(IN , +).
L’ensemble des nombres premiers n’est pas un ensemblede generateurs independants de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs independants
Definition 1.38
Si F ⊆ E est un ensemble de generateurs de (E , >) et sichaque element x 6= e possede une decomposition uniquedans E , alors F est dis un ensemble de generateursindependants de E .
Exemples 1.39
{1} est un ensemble de generateurs independants de(IN , +).
L’ensemble des nombres premiers n’est pas un ensemblede generateurs independants de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs independants
Definition 1.38
Si F ⊆ E est un ensemble de generateurs de (E , >) et sichaque element x 6= e possede une decomposition uniquedans E , alors F est dis un ensemble de generateursindependants de E .
Exemples 1.39
{1} est un ensemble de generateurs independants de(IN , +).
L’ensemble des nombres premiers n’est pas un ensemblede generateurs independants de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs independants
Definition 1.38
Si F ⊆ E est un ensemble de generateurs de (E , >) et sichaque element x 6= e possede une decomposition uniquedans E , alors F est dis un ensemble de generateursindependants de E .
Exemples 1.39
{1} est un ensemble de generateurs independants de(IN , +).
L’ensemble des nombres premiers n’est pas un ensemblede generateurs independants de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Ensembles de generateurs independants
Definition 1.38
Si F ⊆ E est un ensemble de generateurs de (E , >) et sichaque element x 6= e possede une decomposition uniquedans E , alors F est dis un ensemble de generateursindependants de E .
Exemples 1.39
{1} est un ensemble de generateurs independants de(IN , +).
L’ensemble des nombres premiers n’est pas un ensemblede generateurs independants de (IN , ×).
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes libres
Definition 1.40
Un monoıde libre E est un monoıde possedant un ensemblede generateurs independants.
Exemples 1.41
Si A est un alphabet non vide, alors A∗ est un monoıdelibre. En effet, A est un ensemble de generateursindependants de A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes libres
Definition 1.40
Un monoıde libre E est un monoıde possedant un ensemblede generateurs independants.
Exemples 1.41
Si A est un alphabet non vide, alors A∗ est un monoıdelibre. En effet, A est un ensemble de generateursindependants de A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes libres
Definition 1.40
Un monoıde libre E est un monoıde possedant un ensemblede generateurs independants.
Exemples 1.41
Si A est un alphabet non vide, alors A∗ est un monoıdelibre. En effet, A est un ensemble de generateursindependants de A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Monoıdes
Monoıdes libres
Definition 1.40
Un monoıde libre E est un monoıde possedant un ensemblede generateurs independants.
Exemples 1.41
Si A est un alphabet non vide, alors A∗ est un monoıdelibre. En effet, A est un ensemble de generateursindependants de A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.42
Union : L, M ⊆ A∗ : L ∪M = {w ∈ A∗ | w ∈ L ou w ∈ M}(note L + M en theorie des langages).
Proposition 1.43
L’union est associative.
L’union est commutative.
L’union possede un element neutre : ∅.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.42
Union : L, M ⊆ A∗ : L ∪M = {w ∈ A∗ | w ∈ L ou w ∈ M}(note L + M en theorie des langages).
Proposition 1.43
L’union est associative.
L’union est commutative.
L’union possede un element neutre : ∅.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.42
Union : L, M ⊆ A∗ : L ∪M = {w ∈ A∗ | w ∈ L ou w ∈ M}(note L + M en theorie des langages).
Proposition 1.43
L’union est associative.
L’union est commutative.
L’union possede un element neutre : ∅.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.42
Union : L, M ⊆ A∗ : L ∪M = {w ∈ A∗ | w ∈ L ou w ∈ M}(note L + M en theorie des langages).
Proposition 1.43
L’union est associative.
L’union est commutative.
L’union possede un element neutre : ∅.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.42
Union : L, M ⊆ A∗ : L ∪M = {w ∈ A∗ | w ∈ L ou w ∈ M}(note L + M en theorie des langages).
Proposition 1.43
L’union est associative.
L’union est commutative.
L’union possede un element neutre : ∅.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.44
Intersection : L, M ⊆ A∗ : L ∩M = {w ∈ A∗ | w ∈ L etw ∈ M}.
Proposition 1.45
L’intersection est associative.
L’intersection est commutative.
L’intersection possede un element neutre : A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.44
Intersection : L, M ⊆ A∗ : L ∩M = {w ∈ A∗ | w ∈ L etw ∈ M}.
Proposition 1.45
L’intersection est associative.
L’intersection est commutative.
L’intersection possede un element neutre : A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.44
Intersection : L, M ⊆ A∗ : L ∩M = {w ∈ A∗ | w ∈ L etw ∈ M}.
Proposition 1.45
L’intersection est associative.
L’intersection est commutative.
L’intersection possede un element neutre : A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.44
Intersection : L, M ⊆ A∗ : L ∩M = {w ∈ A∗ | w ∈ L etw ∈ M}.
Proposition 1.45
L’intersection est associative.
L’intersection est commutative.
L’intersection possede un element neutre : A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.44
Intersection : L, M ⊆ A∗ : L ∩M = {w ∈ A∗ | w ∈ L etw ∈ M}.
Proposition 1.45
L’intersection est associative.
L’intersection est commutative.
L’intersection possede un element neutre : A∗.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.46
Complementaire : L ⊆ A∗ : L = {w ∈ A∗ | w 6∈ L}.
Definition 1.47
Difference : L, M ⊆ A∗ : L\M = {w ∈ A∗ | w ∈ L etw 6∈ M}.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.46
Complementaire : L ⊆ A∗ : L = {w ∈ A∗ | w 6∈ L}.
Definition 1.47
Difference : L, M ⊆ A∗ : L\M = {w ∈ A∗ | w ∈ L etw 6∈ M}.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations ensemblistes
Definition 1.46
Complementaire : L ⊆ A∗ : L = {w ∈ A∗ | w 6∈ L}.
Definition 1.47
Difference : L, M ⊆ A∗ : L\M = {w ∈ A∗ | w ∈ L etw 6∈ M}.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Concatenation :L, M ⊆ A∗ : L.M = LM = {w ∈ A∗ | w = uv , u ∈ L etv ∈ M}.
2 Puissance : L ⊆ A∗ et n ≥ 0 un entier. On definit lapuissance neme du langage L, note Ln, par :
Ln =
{{ε} si n = 0;
Ln−1L si n ≥ 1.
Remarques 1.48
Ln represente le langage de tous les mots obtenus enconcatenant n mots pris dans L.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Concatenation :L, M ⊆ A∗ : L.M = LM = {w ∈ A∗ | w = uv , u ∈ L etv ∈ M}.
2 Puissance : L ⊆ A∗ et n ≥ 0 un entier. On definit lapuissance neme du langage L, note Ln, par :
Ln =
{{ε} si n = 0;
Ln−1L si n ≥ 1.
Remarques 1.48
Ln represente le langage de tous les mots obtenus enconcatenant n mots pris dans L.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Concatenation :L, M ⊆ A∗ : L.M = LM = {w ∈ A∗ | w = uv , u ∈ L etv ∈ M}.
2 Puissance : L ⊆ A∗ et n ≥ 0 un entier. On definit lapuissance neme du langage L, note Ln, par :
Ln =
{{ε} si n = 0;
Ln−1L si n ≥ 1.
Remarques 1.48
Ln represente le langage de tous les mots obtenus enconcatenant n mots pris dans L.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Concatenation :L, M ⊆ A∗ : L.M = LM = {w ∈ A∗ | w = uv , u ∈ L etv ∈ M}.
2 Puissance : L ⊆ A∗ et n ≥ 0 un entier. On definit lapuissance neme du langage L, note Ln, par :
Ln =
{{ε} si n = 0;
Ln−1L si n ≥ 1.
Remarques 1.48
Ln represente le langage de tous les mots obtenus enconcatenant n mots pris dans L.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Concatenation :L, M ⊆ A∗ : L.M = LM = {w ∈ A∗ | w = uv , u ∈ L etv ∈ M}.
2 Puissance : L ⊆ A∗ et n ≥ 0 un entier. On definit lapuissance neme du langage L, note Ln, par :
Ln =
{{ε} si n = 0;
Ln−1L si n ≥ 1.
Remarques 1.48
Ln represente le langage de tous les mots obtenus enconcatenant n mots pris dans L.
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Miroir : L ⊆ A∗ : L = {w | w ∈ L}.2 Etoile (ou Fermeture de Kleene) : notee L∗ et definie
par :
L∗ = ∪∞n=0Ln = L0 ∪ L1 ∪ L2 ∪ ... = {ε} ∪ L ∪ L2 ∪ ...
3 Etoile positive : notee L+ et definie par :
L+ = ∪∞n=1Ln = L1 ∪ L2 ∪ L3 ∪ ... = L ∪ L2 ∪ L3 ∪ ...
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Miroir : L ⊆ A∗ : L = {w | w ∈ L}.
2 Etoile (ou Fermeture de Kleene) : notee L∗ et definiepar :
L∗ = ∪∞n=0Ln = L0 ∪ L1 ∪ L2 ∪ ... = {ε} ∪ L ∪ L2 ∪ ...
3 Etoile positive : notee L+ et definie par :
L+ = ∪∞n=1Ln = L1 ∪ L2 ∪ L3 ∪ ... = L ∪ L2 ∪ L3 ∪ ...
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Miroir : L ⊆ A∗ : L = {w | w ∈ L}.2 Etoile (ou Fermeture de Kleene) : notee L∗ et definie
par :
L∗ = ∪∞n=0Ln = L0 ∪ L1 ∪ L2 ∪ ... = {ε} ∪ L ∪ L2 ∪ ...
3 Etoile positive : notee L+ et definie par :
L+ = ∪∞n=1Ln = L1 ∪ L2 ∪ L3 ∪ ... = L ∪ L2 ∪ L3 ∪ ...
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Operations langagieres
1 Miroir : L ⊆ A∗ : L = {w | w ∈ L}.2 Etoile (ou Fermeture de Kleene) : notee L∗ et definie
par :
L∗ = ∪∞n=0Ln = L0 ∪ L1 ∪ L2 ∪ ... = {ε} ∪ L ∪ L2 ∪ ...
3 Etoile positive : notee L+ et definie par :
L+ = ∪∞n=1Ln = L1 ∪ L2 ∪ L3 ∪ ... = L ∪ L2 ∪ L3 ∪ ...
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels
Operations sur les langages
Quelques proprietes des operations sur les langagesSoit A un alphabet quelconque.
1 ∀L, M , N ⊆ A∗ : L(M + N) = LM + LN
2 ∀L, M , N ⊆ A∗ : (M + N)L = ML + NL
3 ∀L, Mi ⊆ A∗ : L(∪∞i=0Mi) = ∪∞i=0(LMi)
4 ∀L, Mi ⊆ A∗ : (∪∞i=0Mi)L = ∪∞i=0(MiL)
5 ∀L, M , N ⊆ A∗ : L(M ∩ N) ⊆ LM ∩ LN
6 ∀L ∈ A∗ : L+ = LL∗ = L∗L
7 ∀L, M ∈ A∗ : (LM) = ML
8 ∀L ∈ A∗ :˜L = L
Prof. A. Dargham Chapitre 1 : Introduction aux langages formels