Théorie des Langages
Page 1
I ) Généralités :
Quatre langages sont en jeux :
En entrée, il peut y avoir des milliers de langages Source différents.
En sortie, il peut y avoir des milliers de plate-formes différentes.
Ce qui engendrerait des millions de compilateurs différents.
Apparition d’une compilation en deux passes ( Car limitation de la mémoire vive sur les anciennes
machines, on ne pouvait pas stocker tous les composants )
Ancienne Compilation en trois passes :
- Analyse lexicale
- Analyse syntaxique
- Edition de liens
Si je suis capable de passer du LS Inter Lingua et de Inter Lingua LC
opération d’analyse opération de synthèse
Passage par une étape intermédiaire, s’est une représentation interne de contenu du programme en
langage unique ( pivot )
Ce même schéma s’applique et fonctionne au Traitement Automatique de la Langue Naturelle ( TALN )
Pour des problèmes de traduction, on parle de Traduction Assistée par Ordinateur ( TAO )
La démarche est identique d’un langage à l’autre mais il y a une grande diversité des outils servant à
réaliser les différentes étapes mais les méthodes sont les mêmes, les techniques font appel à la même
théorie.
Programme écrit en
langage Source ( LS )
Compilation
Interprétation ( LI )
Programme écrit en
langage cible ( LC )
Diagnostics Langue
naturelle ( LN )
Théorie des Langages
Page 2
Origines de la ThL :
Origine double Linguistique ( avec CHOMSKY dans les années 1950 )
Informatique
Développement conjoint de la Théorie des Langages.
Premier compilateur au début des années 1950.
On pensait que c’était un problème difficile.
Pour le compilateur de FORTRAN ( FORmula TRANslator ) il a fallu 18 années / hommes.
Le premier compilateur a été créé par BACKUS avec son équipe en 1957.
Rappels sur les ensembles :
0 Généralités :
Définition :
- en extension E = {a, b, c }
- en compréhension F = { x | P(x) }
Appartenance a E
Ensemble vide
1 Réunion, Intersection, Différence :
Réunion :
Si = { x | x S1 … ou Si … ou Sn }
1 i n
Intersection :
Si = { x | x S1 … et Si … et Sn }
1 i n
Différence :
A B ou ( A \ B ) = { x | x A et x B }
Diagramme de VENN :
Inclusion Complément Partition
B
A B CB A
Union Intersection Différence
B
A
CBA
A
Théorie des Langages
Page 3
2 Produit cartésien de n ensembles :
Couple, paire : ( a1, a2 )
Triplet : ( a1, a2, a3 )
Qadruplet : ( a1, a2, a3, a4 )
N-Tuplet : ( a1,…,ai,…,an ) n 5
Définition :
S1SiSn = { ( a1,…,ai,…,an ) a1 S1…ai Si… an Sn }
3 Produit par concaténation :
Chaîne a1…ai…an = a1||…||ai||…||an
4 Relations
flexivité : a E, a R a
Antisymétrie : ( a, b ) E E, aRb et bRa  a = b
Symétrie : ( a, b ) E E, aRb bRa
Transitivité : ( a, b, c ) EEE, aRb et bRc aRc
Note : Antisymétrie Réflexivité
Représentation ensembliste : R = {(a,b) , (b,c) , (a,c) }
Représentation matricielle :
a b c
a
b
c
Cette matrice n’est pas réflexive car il n’y a pas de 1 sur la diagonale.
Pas antisymétrique
Pour le transitivité : Produit matriciel ( avec  ET, +  OU )
0 1 1
0 0 1
0 0 0
0 1 1
0 0 1
0 0 0
0 1 1
0 0 1
0 0 0
0 0 1
0 0 0
0 0 0
Théorie des Langages
Page 4
4.1 Relation d’ordre
Réflexive, antysymétrique, transitive
- Ordre partiel : il existe (a, b ) tel que ni aRb ni bRa
?
On peut comparer a et c, a et b mais pas b et c
- Ordre Total ( Je suis toujours capable de dire aRb OU bRa )
4.2 Relation d’équivalence
Réflexive, symétrique, transitive
5 Partition en classes d’équivalence
Si E /R n’a que deux classes, alors R est une propriété
6 Propriétés et opérations :
Opération interne : a E, b E = a o b E
Commutativité : a, b, a o b = b o a
Associativité : a,b,c (aob)oc = ao(boc)
Elément neutre : e a a o e = e o a = a
Elément symétrique : a b, a o b = b o a = e
Distributivité sur * sur o
à gauche a,b,c a*(boc) = (a*b) o (a*c)
à droite a,b,c (boc)*a = (b*a) o (c*a)
7 Structure de groupe
E non vide muni d’une opération notée o ayant les propriétés :
- Associativité
- Elément neutre
- Elément symétrique
8 Demi-groupe
E non vide muni d’une opération interne notée o ayant la propriété d’associativité
9.1 Monoïde libre ( les langages formels découlent des monoïdes libres )
E non vide muni d’une opération notée o ayant les propriétés suivantes :
- Associativité
- Elément neutre
a
b
Théorie des Langages
Page 5
9.2 Relation, fonction et application
- Une relation définie sur E F met a de E en relation avec 0, 1 ou plusieurs éléments de F
- Une fonction : a est en relation avec 0 ou 1 élément de F
- Une application : a est en relation avec 1 élément de F
10 Application
10.1 Surjection ( Spécialisation des applications )
Je couvre tout l’ensemble d’arrivée
E F
10.2 Injection
Des éléments de F ne sont pas image de E
E F
10.3 Bijective ( Surjection et injection )
E F
11 Ensemble fini ou infini
Définition :
Un ensemble E est fini s’il existe une bijection entre E et un segment ( intervalle) de type [1,n]
Cardinal : Card( E ) = n
1 / 37 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !