Langage Formel: Ensemble de chaînes de symboles contraintes par des règles

Cet article concerne les langages formels en informatique.

Un langage formel, en mathématiques, en informatique et en linguistique, est un ensemble de mots. L'alphabet d'un langage formel est l'ensemble des symboles, lettres ou lexèmes qui servent à construire les mots du langage ; souvent, on suppose que cet alphabet est fini. La théorie des langages formels a pour objectif de décrire les langages formels.

Langage Formel: Objectifs, Mots et langages, Familles de langages
Structure de la phrase Colorless green ideas sleep furiously qui est syntaxiquement bien formée, mais n'a pas de sens (exemple historique de Noam Chomsky, 1957).

Les mots sont des suites d'éléments de cet alphabet ; les mots qui appartiennent à un langage formel particulier sont parfois appelés mots bien formés ou formules bien formées. Un langage formel est souvent défini par une grammaire formelle, telle que les grammaires algébriques et analysé par des automates.

Objectifs

La théorie des langages formels étudie les aspects purement syntaxiques de tels langages, c'est-à-dire leur structure interne formelle. La théorie des langues est issue de la linguistique, comme moyen de comprendre les régularités syntaxiques de langues naturelles :

L'étude des langages formels comporte l'ensemble des moyens de description et d'analyse de ces langages, comme les grammaires formelles pour la génération et les automates pour la reconnaissance, mais elle s'intéresse aussi à l'apprentissage automatique et la traduction automatique des langages. Dans le domaine de la traduction, la théorie des langages s'applique aux compilateurs de langages de programmation.

Mots et langages

Définitions

On se donne un ensemble Langage Formel: Objectifs, Mots et langages, Familles de langages , appelé alphabet dont les éléments sont appelés des lettres.

  • Un mot de longueur k est une suite Langage Formel: Objectifs, Mots et langages, Familles de langages  de k lettres. En pratique, on utilise la notation condensée Langage Formel: Objectifs, Mots et langages, Familles de langages .
  • L'ensemble des mots sur l'alphabet Langage Formel: Objectifs, Mots et langages, Familles de langages  est noté Langage Formel: Objectifs, Mots et langages, Familles de langages .
  • Le mot vide, de longueur Langage Formel: Objectifs, Mots et langages, Familles de langages , est noté Langage Formel: Objectifs, Mots et langages, Familles de langages , ou parfois Langage Formel: Objectifs, Mots et langages, Familles de langages  (ou encore Langage Formel: Objectifs, Mots et langages, Familles de langages  pour le distinguer des Langage Formel: Objectifs, Mots et langages, Familles de langages -transitions dans les automates finis).
  • On définit sur Langage Formel: Objectifs, Mots et langages, Familles de langages , une loi de composition interne appelée concaténation. Elle associe à deux mots Langage Formel: Objectifs, Mots et langages, Familles de langages  et Langage Formel: Objectifs, Mots et langages, Familles de langages  le mot Langage Formel: Objectifs, Mots et langages, Familles de langages  (de longueur Langage Formel: Objectifs, Mots et langages, Familles de langages ).

Cette loi de composition interne est associative et admet le mot vide pour élément neutre (ce qui justifie la notation Langage Formel: Objectifs, Mots et langages, Familles de langages ). Par conséquent l'ensemble Langage Formel: Objectifs, Mots et langages, Familles de langages , muni de cette loi, est un monoïde. C'est un monoïde libre au sens de l'algèbre.

Un langage formel est un ensemble de mots sur un alphabet fini, c'est-à-dire une partie du monoïde libre sur cet alphabet.

Exemples

Quelques exemples de langages formels :

  • l'ensemble de tous les mots sur Langage Formel: Objectifs, Mots et langages, Familles de langages ,
  • l'ensemble des mots de la forme Langage Formel: Objectifs, Mots et langages, Familles de langages , où Langage Formel: Objectifs, Mots et langages, Familles de langages  est un nombre premier,
  • l'ensemble des programmes syntaxiquement corrects dans un langage de programmation donné,
  • l'ensemble des mots d'entrée sur lesquels une machine de Turing donnée s'arrête,
  • l'ensemble des 1000 mots les plus fréquents dans une langue donnée.

Construction d'un langage formel

Un langage formel peut être spécifié par différents moyens. Ce qui est recherché, c'est une méthode ou un mécanisme fini, et explicite, qui permet de produire ou d'analyser un langage en général infini. Parmi ces méthodes, il y a :

Appartenance, calculabilité et complexité

Des questions typiques que l'on se pose à propos d'un langage formel sont les suivantes :

  • Peut-on décider par algorithme si un mot donné appartient à ce langage ?
  • Si oui, quelle est la complexité algorithmique d'une telle réponse ?

Ces questions ont des liens avec la calculabilité et de la théorie de la complexité.

Familles de langages

Les langages sont regroupés en familles de langages. La Hiérarchie de Chomsky nous donne quatre types de grammaire, chaque type de grammaire générant une famille de langage.

Ces ensembles de langages sont tous inclus les uns dans les autres et sont ici donnés de l'ensemble le plus grand au plus petit. Donc, tout langage rationnel est algébrique, qui est lui-même contextuel, qui est lui-même récursivement énumérable.

Entre ces 4 familles de langages, on peut noter des familles qui ne font pas partie de la hiérarchie de Chomsky, mais qui restent remarquables par leurs définitions et leur propriétés.

Les langages algébriques déterministes sont les langages reconnaissables par les automates à pile déterministes, et sont donc strictement inclus dans la famille des langages algébriques.

Les langages récursifs sont les langages reconnus par une machine de Turing, et dont le complémentaire est aussi reconnu par une machine de Turing. Ils sont donc strictement inclus dans les langages récursivement énumérables.

Opérations sur les langages formels

Plusieurs opérations peuvent être utilisées pour fabriquer de nouveaux langages à partir de langages donnés. Supposons que L et M soient des langages sur un certain alphabet commun.

Opérations ensemblistes

Les opérations ensemblistes intersection, union et complémentation sont définies comme pour tout ensemble.

Concaténation ou produit

La concaténation de Langage Formel: Objectifs, Mots et langages, Familles de langages  et de Langage Formel: Objectifs, Mots et langages, Familles de langages , notée simplement Langage Formel: Objectifs, Mots et langages, Familles de langages  est l'ensemble des mots de la forme Langage Formel: Objectifs, Mots et langages, Familles de langages Langage Formel: Objectifs, Mots et langages, Familles de langages  est un mot de Langage Formel: Objectifs, Mots et langages, Familles de langages  et Langage Formel: Objectifs, Mots et langages, Familles de langages  est un mot de Langage Formel: Objectifs, Mots et langages, Familles de langages .

Quotients ou résiduels

Le quotient à gauche Langage Formel: Objectifs, Mots et langages, Familles de langages  de Langage Formel: Objectifs, Mots et langages, Familles de langages  par un mot Langage Formel: Objectifs, Mots et langages, Familles de langages  est l'ensemble des mots Langage Formel: Objectifs, Mots et langages, Familles de langages  tels que Langage Formel: Objectifs, Mots et langages, Familles de langages  appartient à Langage Formel: Objectifs, Mots et langages, Familles de langages . Le quotient à gauche est aussi appelé résiduel.

Le quotient à droite Langage Formel: Objectifs, Mots et langages, Familles de langages  de Langage Formel: Objectifs, Mots et langages, Familles de langages  par un mot Langage Formel: Objectifs, Mots et langages, Familles de langages  est défini symétriquement comme l'ensemble des mots Langage Formel: Objectifs, Mots et langages, Familles de langages  tels que Langage Formel: Objectifs, Mots et langages, Familles de langages  appartient à Langage Formel: Objectifs, Mots et langages, Familles de langages .

Le quotient à gauche et le quotient à droite s'étendent aux langages. Ainsi, le quotient à gauche de Langage Formel: Objectifs, Mots et langages, Familles de langages  par un langage Langage Formel: Objectifs, Mots et langages, Familles de langages , noté Langage Formel: Objectifs, Mots et langages, Familles de langages , est la réunion des langages Langage Formel: Objectifs, Mots et langages, Familles de langages  pour Langage Formel: Objectifs, Mots et langages, Familles de langages  dans Langage Formel: Objectifs, Mots et langages, Familles de langages .

Étoile de Kleene

L'étoile de Kleene de L est l'ensemble noté Langage Formel: Objectifs, Mots et langages, Familles de langages  composé des mots de la forme Langage Formel: Objectifs, Mots et langages, Familles de langages  avec Langage Formel: Objectifs, Mots et langages, Familles de langages  et Langage Formel: Objectifs, Mots et langages, Familles de langages . Cet ensemble contient le mot vide.

Retourné ou image miroir

Le renversé de L, noté Langage Formel: Objectifs, Mots et langages, Familles de langages  ou Langage Formel: Objectifs, Mots et langages, Familles de langages  contient les mots miroirs des mots de L, c'est-à-dire les mots de L lus de droite à gauche.

Mélange ou « shuffle »

Le mélange de L et M, noté L Ш M, est l'ensemble des mots pouvant s'écrire Langage Formel: Objectifs, Mots et langages, Familles de langages Langage Formel: Objectifs, Mots et langages, Familles de langages  et Langage Formel: Objectifs, Mots et langages, Familles de langages  sont des mots (éventuellement vides) tels que Langage Formel: Objectifs, Mots et langages, Familles de langages  soit un mot de L et Langage Formel: Objectifs, Mots et langages, Familles de langages  soit un mot de M. Par exemple Langage Formel: Objectifs, Mots et langages, Familles de langages  Ш Langage Formel: Objectifs, Mots et langages, Familles de langages .

Morphisme et morphisme inverse

Une application Langage Formel: Objectifs, Mots et langages, Familles de langages  est un morphisme ou homomorphisme si Langage Formel: Objectifs, Mots et langages, Familles de langages  pour tous mots Langage Formel: Objectifs, Mots et langages, Familles de langages  de Langage Formel: Objectifs, Mots et langages, Familles de langages . L'image homomorphe d'un langage Langage Formel: Objectifs, Mots et langages, Familles de langages  sur Langage Formel: Objectifs, Mots et langages, Familles de langages  est l'ensemble

    Langage Formel: Objectifs, Mots et langages, Familles de langages .

Par abus de langage, on appelle morphisme inverse l'inverse d'un morphisme. Le morphisme inverse de Langage Formel: Objectifs, Mots et langages, Familles de langages  est la fonction notée Langage Formel: Objectifs, Mots et langages, Familles de langages  de Langage Formel: Objectifs, Mots et langages, Familles de langages  dans l'ensemble des parties de Langage Formel: Objectifs, Mots et langages, Familles de langages  définie par

    Langage Formel: Objectifs, Mots et langages, Familles de langages .

Ce n'est en général pas un morphisme. L'image par un morphisme inverse d'un langage Langage Formel: Objectifs, Mots et langages, Familles de langages  sur Langage Formel: Objectifs, Mots et langages, Familles de langages  est le langage

    Langage Formel: Objectifs, Mots et langages, Familles de langages .

Un morphisme est non effaçant ou croissant ou, par imitation de l'anglais, ε-free si l'image d'une lettre n'est jamais le mot vide. Dans ce cas, la longueur de l'image d'un mot est supérieure ou égale à celle du mot.

Propriétés de clôture

Une question commune sur ces opérations est de connaitre les propriétés de clôture de chaque famille de langage pour chacune de ces opérations, c'est-à-dire si le langage issu d'une opération reste dans la même famille de langages que les langages dont il est issu.

Tableau des propriétés de clôture des familles de langages issus de la hiérarchie de Chomsky
Langages
rationnels
Langages algébriques
déterministes
Langages
algébriques
Langages
contextuels
Langages
récursifs
Langages récursivement
énumérables
Union Clos Pas de clôture Clos Clos Clos Clos
Intersection Clos Pas de clôture Pas de clôture Clos Clos Clos
Complémentaire Clos Clos Pas de clôture Clos Clos Pas de clôture
Concaténation Clos Pas de clôture Clos Clos Clos Clos
Etoile de Kleene Clos Pas de clôture Clos Clos Clos Clos
Miroir Clos Pas de clôture Clos Clos Clos Clos
Mélange Clos Pas de clôture Pas de clôture Pas de clôture Pas de clôture Pas de clôture
Morphisme Clos Pas de clôture Clos Pas de clôture Pas de clôture Clos
Morphisme croissant Clos Pas de clôture Clos Clos Clos Clos
Morphisme inverse Clos Clos Clos Clos Clos Clos

Notes et références

Voir aussi

Sur les autres projets Wikimedia :

Bibliographie

Articles connexes

Liens externes

Tags:

Langage Formel ObjectifsLangage Formel Mots et langagesLangage Formel Familles de langagesLangage Formel Opérations sur les langages formelsLangage Formel Notes et référencesLangage Formel Voir aussiLangage FormelFormalisation (mathématiques)

🔥 Trending searches on Wiki Français:

Napoléon IerBrigitte MacronListe des présidents de la République françaiseGitansLarry NassarFrédérick BousquetLigue des champions de l'UEFA 2024-2025Bruce WillisReal Madrid Club de FútbolJul (rappeur)Borussia DortmundCorée du NordPalestine (État)ÀFrédéric AntonettiMustapha El AtrassiAnne FrankVoltaireArménieIkeaMichael JacksonDua LipaListe des pays et territoires par superficieZinédine ZidaneRaëlGipsy KingsMarlon BrandoNeymarDavid HallydayListe des codes téléphoniques des wilayas d'AlgérieMaria Del RioDisparition inquiétante (série télévisée)Signe du zodiaqueSyndrome de la personne raideSang pour sang (album)Vladimir PoutineKendji GiracParvovirus B19Saints de glaceÉlection présidentielle américaine de 2024IndeRonaldoRobert OppenheimerChristophe DugarryGuy RitchieColiséeThe Gentlemen (série télévisée)AzerbaïdjanLa Planète des singes (franchise)BitcoinBernard ArnaultMachine (série télévisée)FootballRonaldinhoValérie HayerSadri FegaierSagrada FamíliaLigue des champions de l'UEFAMarion MaréchalJaponCharles QuintÉquipe de France de footballLittle RichardBrigitte LahaieChatSaison 1 de Secret StoryLa Fièvre (série télévisée)SOS FantômesCorée du SudAllemagneBillie EilishRégion françaiseMouloudia Club d'Alger (football)Meta (entreprise)Championnat d'Europe de football 2024Gervonta DavisSénégalFlorence PortelliAtalanta Bergame Calcio🡆 More