Chapitre I - Langages

Définition d'un langage

Un langage est un ensemble de mots qui peut être défini :

L'ambiguité

Une phrase ambigue

phrase à laquelle on peut attribuer plusieurs sens (en informatique, on parle de conflit).

Une interprétation d'une phrase ambigue

sens que l'on attribue à cette phrase. (exemple: 2 + 3 × 4 peut se calculer différemment en fonction des règles de calcul)

Définitions inductives

Les définitions inductives (recursive definitions)

idée: on procède en 3 étapes

  1. On se donne une base d'objets appartenant à l'ensemble que l'on veut définir
  2. On se donne des règles pour construire d'autres objets de l'ensemble à partir d'objets de la base ou d'objets déjà construits.
  3. On déclare que les seuls objets de l'ensemble sont ceux construits en appliquant un nombre fini de fois des règles.

On n'exige pas que la base soit minimale

Souvent on donne une définition inductive sous la forme base + règles

Exemple: Définissons l'ensemble PAIR des entiers pairs positifs:

  1. Base: 2 appartien à PAIR
  2. Règle: Si x est dans PAIR, alors x + 2 est dans PAIR

Principe pour décrire les langages par une grammaire (procédé formel de construction inductive du langage sous la forme d'un axiome (la base) et d'un ensemble de règles de production.

Définitions sur les langages

Propriétés de l'alphabet

Définition

Un alphabet Σ est un ensemble fini de smyboles.
exemple: Σ = {a, b}

Propriétés du mot

Définition

Un mot (appelé aussi chaine) X sur Σ est une suite finie de symboles de Σ juxtaposés.

Longueur

Nombre de symboles de l'alphabet composant le mot.

mot vide

Le mot vide ne contenant aucun symbole est noté ϵ, |ϵ|=0
- ϵ peut être un mot d'un langage, mais n'est pas une lettre de l'alphabet

Opérations du mot

Concaténation

Concaténation: soit X et Y deux mots de Σ. On appelle concaténation de X et de Y, le mot XY

Préfixe

Tout mot f (mot vide inclus) qui permet d'écrire X = fg

Suffixe

Tout mot g (mot vide inclus) qui permet d'écrire X = fg

Préfixe/Suffixe propre

U est un préfixe/suffixe propre de X ssi U est préfixe/suffixe de X et U est différent de X - remarque: X est préfixe ou suffixe de lui-même

Facteur/sous-mot

Un facteur, ou sous-mot est tout mot g qui permet d'écrire X = fgh, avec f et h non vides.

Fermeture de Kleen

Soit Σ un alphabet, on appelle fermeture de Kleen de Σ, noté Σ*. L'ensemble est défini inductivement de la façon suivante :

Opérations sur les langages

Soit L et M, deux langages, et l'alphabet Σ = a, b.

Exercice:

Distribution:
Structure monoide:

Ensemble muni d'une opération interne associative et d'un élément neutre.

exemple: Σ muni de concaténation

L+ est la fermeture positive de L = L* − {ϵ}

Classification des langages:

Type 3 ⊂  Type 2  ⊂  Type 1  ⊂  Type0