← Retour

La théorie des langages

par: Salem Khemliche
Disponible
Pages 224
Dimensions 16*23,5
Publication 2017-04-03
Éditeur —
Papier : 950.00 DA Numérique: 475.00 DA

Ce livre est une introduction aux langages formels, qui constituent un des fondements de la science informatique. Il existe d’excellents ouvrages en anglais traitant de ce sujet, mais très peu en français, conciliant à la fois, le cours, les exercices, et leurs solutions. Celui-ci tente humblement de donner les éléments nécessaires aux lecteurs intéressés dans le domaine, tout en proposant à la fin de chaque chapitre une série d’exercices avec leurs corrigés. Aussi, il couvre la totalité des programmes des étudiants informaticiens en ingéniorat et en LMD. Il s’adresse également aux étudiants en mathématiques discrètes. La théorie des langages est à l’origine de différents domaines d’applications, tels que la compilation des langages de programmation évolués, la modélisation dans la vérification et la validation des systèmes physiques. Par le mot ‘formel’, on comprend que le concept est exprimé dans un langage mathématique, ou dans un formalisme rigoureusement défini, en faisant abstraction de son sens, c'est-à-dire en ne tenant compte que de son aspect syntaxique. Le premier chapitre traite des rappels mathématiques, utilisés dans la suite du cours. Le deuxième chapitre présente les concepts fondamentaux de la théorie des langages formels, ainsi que des notions de la combinatoire des mots. Dans le troisième chapitre sont introduits les systèmes de réécriture, avec comme corollaire les grammaires formelles, ainsi que la typologie des grammaires telle qu’elle est définie par Noam Chomsky. Le quatrième chapitre étudie la classe des langages réguliers, qui est la plus petite classe, au sens de l’inclusion des langages. Ce chapitre a pour objet l’étude des différentes formes d’automates d’états finis, appelés aussi automates de Rabin-Scott. Il montre l’équivalence entre les automates de Rabin-Scott et les grammaires régulières à droite pour montrer que la classe des langages réguliers est égale à la classe des langages acceptés par les automates d’états finis. Il est à noter que les automates de Rabin-Scott sont très utilisés dans la partie analyse lexicale d’un compilateur, et dans la modélisation pour la validation et la vérification de propriétés des systèmes physiques réels. Ce chapitre est clôturé par l’étude des propriétés de fermeture de la classe des langages réguliers. Le but du cinquième chapitre est de présenter le concept d’expression régulière, afin de montrer son équivalence avec l’automate de Rabin –Scott et donc aussi avec les grammaires régulières à droite. Le sixième chapitre est consacré aux langages à contexte libre. Il est fondamental pour les bases de la compilation, notamment dans sa partie analyse syntaxique, puisque c’est dans ce chapitre que l’automate à pile est présenté. L’automate à pile est une extension de l’automate de Rabin-Scott, et il est utilisé dans la plupart des méthodes d’analyse syntaxique en compilation. Ce chapitre consacre également une bonne partie pour la transformation des grammaires à contexte libre pour les préparer à l’analyse syntaxique. Le septième chapitre porte sur les langages à contexte lié, où l’automate à bornes linéaires, qui constitue un cas particulier de la machine de Turing, est présenté. Le huitième et dernier chapitre introduit des notions de calculabilité en définissant la machine de Turing et le problème de Post.

Afficher la table des matières
Avant propos 03
Table de matières 05
Chapitre1: Rappels de quelques notions utiles de
mathématiques 09
1 - Notations de logique mathématiques 10
2- Ensembles et relations 10
3- Applications 17
4- Monoïde 19
5- Morphisme de monoïdes 19
 Travaux dirigés 21
 Solutions 24
Chapitre 2:Notions de base de la théorie des langages 27
1. Introduction 28
2. Définitions des notions fondamentales de la théorie des
langages formels 28
3. Equation associée aux langages (Théorème de Arden) 47
4. Les codes
 Travaux dirigés
 Solutions 54
Chapitre3: Systèmes de réécriture et typologie
des grammaires 65
1. Introduction intuitive aux grammaires formelles 66
2. Système de réécriture 67
3. Grammaire formelle 68
4. Classification des grammaires et des langages par Chomsky 73
 Travaux dirigés 77
 Solutions 81
Chapitre4 : Les langages réguliers 87
1. Introduction 88
2. Automate de Rabin-Scott 89
3. Modifications de l’automate de Rabin-Scott 91
4. Automate de Rabin-Scott et grammaire régulière à droite 100
5. Propriétés de fermeture de la classe des langages réguliers 106
6. Critères de régularité des langages (caractéristiques
algébriques des langages réguliers) 112
 Travaux dirigés 119
 Solutions
Chapitre5 : Expressions régulières et automate minimal 129
1. Introduction 130
2. Les expressions régulières 130
3. Automates de Rabin-Scott et expressions régulières 133
4. Automate déterministe minimal 138
 Travaux dirigés 144
 Solutions 147
Chapitre6 : Les langages à contexte libre 155
1. Introduction 156
2. Automate à pile 157
3. Automates à pile et grammaires à contexte libre 162
4. Transformations des grammaires à contexte libre 168
5. Formes normales 174
6. Arbre de dérivation, ambiguïté et lemme de Bar-Hillel 178
7. Propriétés de fermeture de la classe des langages à contexte
libre 184
 Travaux dirigés
 Solutions
Chapitre7: Les langages sensibles au contexte (à contexte lié) 199
1. Introduction 200
2. Automate à bornes linéaires 200
3. Les grammaires à contexte lié et les grammaires monotones 205
4. Propriétés de fermeture de la classe des langages à contexte lié 208
 Travaux dirigés 210
 Solutions 211
Chapitre 8 : Langages de type ‘0’ et éléments
de la théorie de la calculabilité 213
1. Machine de Turing 214
2. Eléments de la théorie de la calculabilité 216
 Travaux dirigés 220
 Solutions Bibliographie

Avis des lecteurs

Aucun avis pour le moment.