Langages formels, automates et grammaires formelles
|
|
- Tristan Boudreau
- il y a 7 ans
- Total affichages :
Transcription
1 Langages formels, automates et grammaires formelles N. Prcovic Langages formels, automates et grammaires formelles p.1/94
2 Contenu général du cours Etude des langages formels selon deux manières de les modéliser : les machines abstraites (automates et machines de Turing) les grammaires formelles. Langages formels, automates et grammaires formelles p.2/94
3 Intérêt des langages formels Résolution des problèmes de décision : "est-ce que [ceci] est une solution à [tel problème]?" (-> oui ou non). Langages formels, automates et grammaires formelles p.3/94
4 Intérêt des langages formels Résolution des problèmes de décision : "est-ce que [ceci] est une solution à [tel problème]?" (-> oui ou non). Est-ce que ce nombre est premier? Est ce que ce texte est un programme C syntaxiquement correct? Langages formels, automates et grammaires formelles p.3/94
5 ien entre pbs de décision et lang. formels Un langage formel se définit comme un ensemble de suites de symboles. Lien : solution du problème élément du langage. Langages formels, automates et grammaires formelles p.4/94
6 ien entre pbs de décision et lang. formels Un langage formel se définit comme un ensemble de suites de symboles. Lien : solution du problème élément du langage. Est-ce que cette suite de chiffres représente un nombre premier? Langages formels, automates et grammaires formelles p.4/94
7 ien entre pbs de décision et lang. formels Un langage formel se définit comme un ensemble de suites de symboles. Lien : solution du problème élément du langage. Est-ce que cette suite de chiffres représente un nombre premier? Est ce que cette suite de caractères correspond à un programme C syntaxiquement correct? Langages formels, automates et grammaires formelles p.4/94
8 ien entre pbs de décision et lang. formels Un langage formel se définit comme un ensemble de suites de symboles. Lien : solution du problème élément du langage. Est-ce que cette suite de chiffres représente un nombre premier? Est ce que cette suite de caractères correspond à un programme C syntaxiquement correct? De façon générale : "Est-ce que [cette suite de symboles] appartient à [l ensemble des suites de symboles qui correspondent à une solution de mon problème]?". Langages formels, automates et grammaires formelles p.4/94
9 Historique Machine de Turing (années 30) pour modéliser une machine qui résout le plus de problèmes possibles. Langages formels, automates et grammaires formelles p.5/94
10 Historique Machine de Turing (années 30) pour modéliser une machine qui résout le plus de problèmes possibles. Automates (années 40 et 50) pour modéliser certaines fonctionnalités du cerveau. Langages formels, automates et grammaires formelles p.5/94
11 Historique Machine de Turing (années 30) pour modéliser une machine qui résout le plus de problèmes possibles. Automates (années 40 et 50) pour modéliser certaines fonctionnalités du cerveau. Grammaires formelles (fin des années 50, Chomsky) pour modéliser les langues naturelles. Actuellement : pour la compilation. Langages formels, automates et grammaires formelles p.5/94
12 Equivalences entre machines abstraites et grammaires formelles Langage formel Machine abstraite Grammaire récursiv. énum. Machines de Turing non restreintes contextuels MdT bornées linéair. contextuelles hors contexte Automates à pile hors contexte rationnels Automates régulières Langages formels, automates et grammaires formelles p.6/94
13 Les langages formels Les langages formels représentent uniquement l aspect syntaxique des langages et non la sémantique qu on pourrait leur associer (comme on le ferait avec les langues naturelles). Langages formels, automates et grammaires formelles p.7/94
14 Les langages formels Définition Alphabet Un alphabet Σ est un ensemble fini, non vide, de symboles. Langages formels, automates et grammaires formelles p.8/94
15 Les langages formels Définition Alphabet Un alphabet Σ est un ensemble fini, non vide, de symboles. Ex : l ensemble {0, 1} des 2 chiffres binaires, l ensemble des 10 chiffres arabes, l ensemble des 26 lettres de l alphabet français, l ensemble des caractères ASCII, etc. Langages formels, automates et grammaires formelles p.8/94
16 Les langages formels Définition Mot (ou chaîne) Un mot w est une suite de symboles d un alphabet donné. La longueur d un mot w, noté w est le nombre de symboles qu il contient. Le mot vide, noté ǫ, est le mot de longueur nulle. Langages formels, automates et grammaires formelles p.9/94
17 Les langages formels Définition Mot (ou chaîne) Un mot w est une suite de symboles d un alphabet donné. La longueur d un mot w, noté w est le nombre de symboles qu il contient. Le mot vide, noté ǫ, est le mot de longueur nulle. Ex : est un mot créé à partir de l alphabet {0, 1} et a pour longueur 5, tous les fichiers ASCII sont des mots créés à partir des caractères ASCII. Langages formels, automates et grammaires formelles p.9/94
18 Les langages formels Définition Sous-mot Un sous-mot v est une sous-suite de la suite des symboles d un mot w. Langages formels, automates et grammaires formelles p.10/94
19 Les langages formels Définition Sous-mot Un sous-mot v est une sous-suite de la suite des symboles d un mot w. Ex : si w = abcd alors abd, cd, ac, b, abcd et ǫ sont des exemples de sous-mots de w. Langages formels, automates et grammaires formelles p.10/94
20 Les langages formels Définition Concaténation de mots La concaténation de 2 mots w et w est le mot égal à la suite des symboles de w suivi de la suite des symboles de w. Elle se note w.w ou ww. Langages formels, automates et grammaires formelles p.11/94
21 Les langages formels Définition Concaténation de mots La concaténation de 2 mots w et w est le mot égal à la suite des symboles de w suivi de la suite des symboles de w. Elle se note w.w ou ww. Ex : La concaténation de w = abc et de w = fg est w.w = abcfg. Langages formels, automates et grammaires formelles p.11/94
22 Les langages formels Définition Facteur d un mot Le facteur v d un mot w est un mot tel qu il existe des mots u et u tels que w = u.v.u. Un facteur gauche (ou préfixe) est un facteur tel que u = ǫ. Un facteur droit (ou suffixe) est un facteur tel que u = ǫ. Une occurence d un facteur est l apparition de ce facteur a une position précise dans le mot. Langages formels, automates et grammaires formelles p.12/94
23 Les langages formels Définition Facteur d un mot Le facteur v d un mot w est un mot tel qu il existe des mots u et u tels que w = u.v.u. Un facteur gauche (ou préfixe) est un facteur tel que u = ǫ. Un facteur droit (ou suffixe) est un facteur tel que u = ǫ. Une occurence d un facteur est l apparition de ce facteur a une position précise dans le mot. Remarque : un facteur est un sous-mot mais l inverse n est pas vrai en général. Langages formels, automates et grammaires formelles p.12/94
24 Les langages formels Définition Produit de 2 alphabets On note Σ 1 l ensemble des mots de longueur 1 constitués à partir de chacun des symboles de Σ. Le produit de 2 alphabets Σ et Σ est l ensemble de mots défini par Σ.Σ = { w.w w Σ 1, w Σ 1 }. Langages formels, automates et grammaires formelles p.13/94
25 Les langages formels Définition Produit de 2 alphabets On note Σ 1 l ensemble des mots de longueur 1 constitués à partir de chacun des symboles de Σ. Le produit de 2 alphabets Σ et Σ est l ensemble de mots défini par Σ.Σ = { w.w w Σ 1, w Σ 1 }. Ex : si Σ = {a, b} et Σ = {c, d} alors Σ.Σ = {ac, ad, bc, bd}. Langages formels, automates et grammaires formelles p.13/94
26 Les langages formels Définition Puissance d un alphabet La k eme puissance d un alphabet Σ, notée Σ k, se définit par : Σ 0 = {ǫ} et k > 0, Σ k = Σ k 1.Σ 1. C est l ensemble de tous les mots de longueur k que l on peut former à partir de Σ. Langages formels, automates et grammaires formelles p.14/94
27 Les langages formels Définition Puissance d un alphabet La k eme puissance d un alphabet Σ, notée Σ k, se définit par : Σ 0 = {ǫ} et k > 0, Σ k = Σ k 1.Σ 1. C est l ensemble de tous les mots de longueur k que l on peut former à partir de Σ. Ex : si Σ = {a,b} alors Σ 0 = {ǫ}, Σ 1 = {a,b}, Σ 2 = {aa,ab,ba,bb}, etc. Langages formels, automates et grammaires formelles p.14/94
28 Les langages formels Définition Puissance d un alphabet La k eme puissance d un alphabet Σ, notée Σ k, se définit par : Σ 0 = {ǫ} et k > 0, Σ k = Σ k 1.Σ 1. C est l ensemble de tous les mots de longueur k que l on peut former à partir de Σ. Ex : si Σ = {a,b} alors Σ 0 = {ǫ}, Σ 1 = {a,b}, Σ 2 = {aa,ab,ba,bb}, etc. On appelle étoile d un alphabet Σ = Σ 0 Σ 1 Σ 2... C est l ensemble de tous les mots qu on peut former à partir de Σ. On note Σ + le même ensemble mais privé du mot vide : Σ = Σ + {ǫ}. Langages formels, automates et grammaires formelles p.14/94
29 Les langages formels Définition Langage Un langage L se définit à partir d un alphabet Σ comme étant un sous-ensemble de Σ. Langages formels, automates et grammaires formelles p.15/94
30 Les langages formels Définition Langage Un langage L se définit à partir d un alphabet Σ comme étant un sous-ensemble de Σ. Tout sous-ensemble de Σ est potentiellement un langage, y compris le langage vide (ne contenant aucun mot), le langage {ǫ} (contenant uniquement le mot vide) et le langage égal à Σ. Langages formels, automates et grammaires formelles p.15/94
31 Les langages formels Définition Langage Un langage L se définit à partir d un alphabet Σ comme étant un sous-ensemble de Σ. Tout sous-ensemble de Σ est potentiellement un langage, y compris le langage vide (ne contenant aucun mot), le langage {ǫ} (contenant uniquement le mot vide) et le langage égal à Σ. Ex : le langage des chiffres binaires pairs (c-a-d se terminant par 0), le langage des nombres entiers décimaux inférieurs à 100, le langage des mots français du Larousse, etc. Langages formels, automates et grammaires formelles p.15/94
32 Les langages formels En général, on définira un langage en utilisant une notation ensembliste de la forme {w propriété sur w}, qui signifie "l ensemble des mots w (de Σ ) tels qu ils respectent une certaine propriété". Ex : {w w se termine par a}, {w 2 w 5}. Langages formels, automates et grammaires formelles p.16/94
33 Les langages formels En général, on définira un langage en utilisant une notation ensembliste de la forme {w propriété sur w}, qui signifie "l ensemble des mots w (de Σ ) tels qu ils respectent une certaine propriété". Ex : {w w se termine par a}, {w 2 w 5}. Remarque : l ensemble des parties de Σ, noté P(Σ ) ou 2 Σ, est l ensemble de tous les langages sur Σ. Langages formels, automates et grammaires formelles p.16/94
34 Les langages formels Définition Produit de langages Le produit (de concaténation) de 2 langages L et L est défini par : L.L = {w.w w L, w L }. Langages formels, automates et grammaires formelles p.17/94
35 Les langages formels Définition Puissance d un langage La k eme puissance d un langage L, notée L k, se définit par : L 0 = {ǫ} et k > 0, L k =L k 1.L. Langages formels, automates et grammaires formelles p.18/94
36 Les langages formels Définition Puissance d un langage La k eme puissance d un langage L, notée L k, se définit par : L 0 = {ǫ} et k > 0, L k =L k 1.L. Ex : si L= {ab,cd} alors L 0 = {ǫ}, L 1 = {ab,cd}, L 2 = {abab,abcd,cdab,cdcd}, etc. Langages formels, automates et grammaires formelles p.18/94
37 Les langages formels Définition Puissance d un langage La k eme puissance d un langage L, notée L k, se définit par : L 0 = {ǫ} et k > 0, L k =L k 1.L. Ex : si L= {ab,cd} alors L 0 = {ǫ}, L 1 = {ab,cd}, L 2 = {abab,abcd,cdab,cdcd}, etc. On appelle étoile d un langage, le langage L = L 0 L 1 L 2... Il contient tous les mots qu on peut obtenir en concaténant un nombre quelconque de mots de L. On appelle étoile propre de L et on note L + le même langage mais privé du mot vide : L + = L /{ǫ}. Langages formels, automates et grammaires formelles p.18/94
38 Les langages formels Définition Puissance d un langage La k eme puissance d un langage L, notée L k, se définit par : L 0 = {ǫ} et k > 0, L k =L k 1.L. Ex : si L= {ab,cd} alors L 0 = {ǫ}, L 1 = {ab,cd}, L 2 = {abab,abcd,cdab,cdcd}, etc. On appelle étoile d un langage, le langage L = L 0 L 1 L 2... Il contient tous les mots qu on peut obtenir en concaténant un nombre quelconque de mots de L. On appelle étoile propre de L et on note L + le même langage mais privé du mot vide : L + = L /{ǫ}. Remarque : l étoile d un langage fini est un langage infini dénombrable. Langages formels, automates et grammaires formelles p.18/94
39 Automates d états finis Automate : machine abstraite qui modélise un système discret dont l état va varier au cours du temps à cause d influences externes. Langages formels, automates et grammaires formelles p.19/94
40 Automates d états finis Automate : machine abstraite qui modélise un système discret dont l état va varier au cours du temps à cause d influences externes. On peut représenter un automate par un graphe dont chaque sommet est un état et chaque arc, étiqueté par un nom d action, est une transition possible d un état vers un autre. Langages formels, automates et grammaires formelles p.19/94
41 Automates d états finis Automate : machine abstraite qui modélise un système discret dont l état va varier au cours du temps à cause d influences externes. On peut représenter un automate par un graphe dont chaque sommet est un état et chaque arc, étiqueté par un nom d action, est une transition possible d un état vers un autre. Un automate possède un état initial et un nombre quelconque d états finaux (désirés pour le système). Langages formels, automates et grammaires formelles p.19/94
42 Automates d états finis Automate : machine abstraite qui modélise un système discret dont l état va varier au cours du temps à cause d influences externes. On peut représenter un automate par un graphe dont chaque sommet est un état et chaque arc, étiqueté par un nom d action, est une transition possible d un état vers un autre. Un automate possède un état initial et un nombre quelconque d états finaux (désirés pour le système). L automate vérifie si la suite d actions permet de passer de l état initial à un état final. Langages formels, automates et grammaires formelles p.19/94
43 Exemple On veut modéliser un système simple composé d un coffre-fort et d un document top secret. On peut agir sur le système en ouvrant ou en fermant le coffre ou en plaçant ou en retirant le document du coffre. Le système peut avoir 4 états : (0) coffre fermé et vide, (1) coffre ouvert et vide, (2) coffre ouvert et plein et (3) coffre fermé et plein. Etat final (désiré) : mettre en sûreté notre document (état 4). Etat initial : état 0. Problème (de décision) : est-ce que [cette suite d actions] permet de mettre le document en sécurité? Langages formels, automates et grammaires formelles p.20/94
44 Automates d états finis déterministes Définition Automate d états finis déterministe Un automate d états finis déterministe (AEFD) est un quintuplet (Q, Σ, δ, q 0, F) où : Langages formels, automates et grammaires formelles p.21/94
45 Automates d états finis déterministes Définition Automate d états finis déterministe Un automate d états finis déterministe (AEFD) est un quintuplet (Q, Σ, δ, q 0, F) où : Q est un ensemble fini d états. Langages formels, automates et grammaires formelles p.21/94
46 Automates d états finis déterministes Définition Automate d états finis déterministe Un automate d états finis déterministe (AEFD) est un quintuplet (Q, Σ, δ, q 0, F) où : Q est un ensemble fini d états. Σ est un alphabet contenant des symboles d entrée. Langages formels, automates et grammaires formelles p.21/94
47 Automates d états finis déterministes Définition Automate d états finis déterministe Un automate d états finis déterministe (AEFD) est un quintuplet (Q, Σ, δ, q 0, F) où : Q est un ensemble fini d états. Σ est un alphabet contenant des symboles d entrée. δ : Q Σ Q est la fonction de transition telle que δ(q i, s) = q j ssi dans l état q i la lecture du symbole s fait passer dans l état q j. Langages formels, automates et grammaires formelles p.21/94
48 Automates d états finis déterministes Définition Automate d états finis déterministe Un automate d états finis déterministe (AEFD) est un quintuplet (Q, Σ, δ, q 0, F) où : Q est un ensemble fini d états. Σ est un alphabet contenant des symboles d entrée. δ : Q Σ Q est la fonction de transition telle que δ(q i, s) = q j ssi dans l état q i la lecture du symbole s fait passer dans l état q j. q 0 est l état initial. Langages formels, automates et grammaires formelles p.21/94
49 Automates d états finis déterministes Définition Automate d états finis déterministe Un automate d états finis déterministe (AEFD) est un quintuplet (Q, Σ, δ, q 0, F) où : Q est un ensemble fini d états. Σ est un alphabet contenant des symboles d entrée. δ : Q Σ Q est la fonction de transition telle que δ(q i, s) = q j ssi dans l état q i la lecture du symbole s fait passer dans l état q j. q 0 est l état initial. F Q est l ensemble des états finaux. Langages formels, automates et grammaires formelles p.21/94
50 Représentations d un automate On peut représenter un automate par une table de transition. Cette table contient : en ligne les états possibles de l automate. en colonne les symboles de Σ. L état initial est préfixé par une flèche. Les états finaux sont préfixés par une astérisque. Chaque case du tableau contient l état résultant de la lecture du symbole en colonne à partir de l état en ligne. Langages formels, automates et grammaires formelles p.22/94
51 Représentations d un automate On peut représenter un automate par une table de transition. Cette table contient : en ligne les états possibles de l automate. en colonne les symboles de Σ. L état initial est préfixé par une flèche. Les états finaux sont préfixés par une astérisque. Chaque case du tableau contient l état résultant de la lecture du symbole en colonne à partir de l état en ligne. o f p r q 0 q 1 q 1 q 0 q 2 q 2 q 3 q 1 a b *q 0 q 1 q 1 q 1 q 2 q 1 Langages formels, automates et grammaires formelles p.22/94 *q q
52 Représentations d un automate On peut aussi représenter un AEFD par un diagramme de transition. Il s agit d un graphe dont : les sommets sont les états de Q, les arcs étiquetés par des symboles de Σ sont les transitions d un état à un autre suite à la lecture d un symbole. l état initial est signalé par une flèche entrante. les états finaux sont cerclés. Langages formels, automates et grammaires formelles p.23/94
53 AEFD Définition Extension aux mots de la fonction de transition La fonction de transition peut être étendue aux mots. Son extension δ est définie sur Q Σ Q avec : δ(q i, ǫ) = q i. w Σ, c Σ: δ(q i, w.c) = δ( δ(q i, w), c). Langages formels, automates et grammaires formelles p.24/94
54 AEFD Définition Extension aux mots de la fonction de transition La fonction de transition peut être étendue aux mots. Son extension δ est définie sur Q Σ Q avec : δ(q i, ǫ) = q i. w Σ, c Σ: δ(q i, w.c) = δ( δ(q i, w), c). δ(q i, w) = q j signifie que la lecture du mot w à partir de l état q i mène à l état q j. Langages formels, automates et grammaires formelles p.24/94
55 AEFD Définition Mot accepté par un automate Un mot w Σ est dit accepté par un automate (Q, Σ, δ, q 0, F) si δ(q 0, w) F. Langages formels, automates et grammaires formelles p.25/94
56 AEFD Définition Mot accepté par un automate Un mot w Σ est dit accepté par un automate (Q, Σ, δ, q 0, F) si δ(q 0, w) F. En d autres termes, un mot est accepté par un automate si la lecture des symboles de w à partir de q 0 mène à un état final de l automate. Langages formels, automates et grammaires formelles p.25/94
57 AEFD Définition Langage reconnu par un automate Un langage reconnu par un automate A est défini par : L(A) = {w Σ δ(q 0, w) F}. Langages formels, automates et grammaires formelles p.26/94
58 AEFD Définition Langage reconnu par un automate Un langage reconnu par un automate A est défini par : L(A) = {w Σ δ(q 0, w) F}. En d autres termes, le langage reconnu par un automate est l ensemble des mots qu il accepte. Langages formels, automates et grammaires formelles p.26/94
59 AEFD Définition Langage reconnaissable Un langage est dit reconnaissable s il existe un AEFD le reconnaissant. Langages formels, automates et grammaires formelles p.27/94
60 AEFD Définition Langage reconnaissable Un langage est dit reconnaissable s il existe un AEFD le reconnaissant. Déterminisme : Un automate d états finis est dit déterministe si, étant donné un mot qu on lui donne à lire, on est toujours sûr que l automate transite toujours par la même séquence d états. Langages formels, automates et grammaires formelles p.27/94
61 Automates d états finis non déterministes Contrairement aux AEFD, les automates d états finis non déterministes (AEFND) peuvent se retrouver dans plusieurs états en même temps après avoir lu un symbole à partir d un état donné. Langages formels, automates et grammaires formelles p.28/94
62 Automates d états finis non déterministes Contrairement aux AEFD, les automates d états finis non déterministes (AEFND) peuvent se retrouver dans plusieurs états en même temps après avoir lu un symbole à partir d un état donné. Définition AEFND Un automate d états finis non déterministe est un quintuplet (Q, Σ, q 0, δ, F) où Q, Σ, q 0 et F ont la même signification que pour un AEFD mais où δ est défini par : δ : Q Σ 2 Q δ(q i, c) = Q j avec Q j Q. Langages formels, automates et grammaires formelles p.28/94
63 Automates d états finis non déterministes Contrairement aux AEFD, les automates d états finis non déterministes (AEFND) peuvent se retrouver dans plusieurs états en même temps après avoir lu un symbole à partir d un état donné. Définition AEFND Un automate d états finis non déterministe est un quintuplet (Q, Σ, q 0, δ, F) où Q, Σ, q 0 et F ont la même signification que pour un AEFD mais où δ est défini par : δ : Q Σ 2 Q δ(q i, c) = Q j avec Q j Q. Ainsi, après avoir lu une suite de symboles, un AEFND peut se trouver au même moment dans plusieurs états différents. Langages formels, automates et grammaires formelles p.28/94
64 AEFND Définition Extension aux mots de la fonction de transition La fonction de transition peut être étendue aux mots. Son extension δ est définie sur Q Σ 2 Q avec : δ(q i, ǫ) = {q i }. w Σ, c Σ: δ(q i, w.c) = δ(q j, c). q j b δ(q i,w) Langages formels, automates et grammaires formelles p.29/94
65 AEFND Définition Extension aux mots de la fonction de transition La fonction de transition peut être étendue aux mots. Son extension δ est définie sur Q Σ 2 Q avec : δ(q i, ǫ) = {q i }. w Σ, c Σ: δ(q i, w.c) = δ(q j, c). q j b δ(q i,w) δ(q i, w) = Q j signifie que la lecture du mot w à partir de l état q i mène à tous les états de Q j en même temps. Langages formels, automates et grammaires formelles p.29/94
66 AEFND Définition Mot accepté par un AEFND Un mot w Σ est dit accepté par un AEFND (Q, Σ, δ, q 0, F) si δ(q 0, w) F. Langages formels, automates et grammaires formelles p.30/94
67 AEFND Définition Mot accepté par un AEFND Un mot w Σ est dit accepté par un AEFND (Q, Σ, δ, q 0, F) si δ(q 0, w) F. En d autres termes, un mot est accepté par un automate si la lecture des symboles de w à partir de q 0 mène à un ensemble d états dont au moins un est final. Langages formels, automates et grammaires formelles p.30/94
68 AEFND Définition Mot accepté par un AEFND Un mot w Σ est dit accepté par un AEFND (Q, Σ, δ, q 0, F) si δ(q 0, w) F. En d autres termes, un mot est accepté par un automate si la lecture des symboles de w à partir de q 0 mène à un ensemble d états dont au moins un est final. Définition Langage reconnu par un AEFND Un langage reconnu par un AEFND A est défini par : L(A) = {w Σ δ(q 0, w) F }. Langages formels, automates et grammaires formelles p.30/94
69 Avantage d un AEFND sur un AEFD L intérêt des AEFND est qu ils permettent plus facilement de définir un automate reconnaissant un langage donné. q0 a q1 q0 a q1 a,b b b a Le langage {w.a w Σ } reconnu par un AEFND (à gauche) et un AEFD (à droite). Langages formels, automates et grammaires formelles p.31/94
70 Equivalence entre AEFD et AEFND Bien que les AEFND aient l air plus puissant que les AEFD en terme de possibilité de reconnaître un langage, il s avère que leur puissance leur est égale. Langages formels, automates et grammaires formelles p.32/94
71 Equivalence entre AEFD et AEFND Bien que les AEFND aient l air plus puissant que les AEFD en terme de possibilité de reconnaître un langage, il s avère que leur puissance leur est égale. Il est évident que tout AEFD est aussi un AEFND. Langages formels, automates et grammaires formelles p.32/94
72 Equivalence entre AEFD et AEFND Bien que les AEFND aient l air plus puissant que les AEFD en terme de possibilité de reconnaître un langage, il s avère que leur puissance leur est égale. Il est évident que tout AEFD est aussi un AEFND. Théoreme Tout langage reconnu par un AEFND peut aussi être reconnu par un AEFD. Langages formels, automates et grammaires formelles p.32/94
73 Preuve Preuve constructive : on va démontrer que si A N = (Q N, Σ, δ N, q 0, F N ) est un AEFND alors le langage qu il reconnaît est aussi reconnu par l AEFD A D = (Q D, Σ, δ D, {q 0 }, F D ) où : Q D = 2 Q N est l ensemble des sous-ensembles de Q N. F D est l ensemble des états de Q D qui contiennent un état de F N, c-a-d les états dont l intersection avec F N est non vide. S Q N et c Σ : δ D (S,c) = δ N (s, c). s S Langages formels, automates et grammaires formelles p.33/94
74 Preuve Démontrons d abord que w, δ D ({q 0 }, w) = δ N (q 0, w). Preuve par récurrence sur w : Pour w = 0, c-a-d w = ǫ, δ D ({q 0 }, ǫ) = δ N (q 0, ǫ) = {q 0 }. Posons que pour tout mot w de longueur n, on a δ D ({q 0 }, w) = δ N (q 0, w) = {p 1, p 2,...p k }. c Σ, δ D ({q 0 }, w.c) = δ D ( δ D ({q 0 }, w), c) = δ D ({p 1, p 2,...p k }, c) = δ N (p i, c) = δ N (q 0, w.c). 1 i k On a alors δ D ({q 0 }, w) = δ N (q 0, w) qui est aussi vérifiée pour tous les mots de longueur n+1. Langages formels, automates et grammaires formelles p.34/94
75 Preuve On a donc L(A D ) = {w Σ δ D ({q 0 }, w) F D } = {w Σ δ D ({q 0 }, w) F N } = {w Σ δ N (q 0, w) F N } = L(A N ). Langages formels, automates et grammaires formelles p.35/94
76 struction d un AEFD à partir d un AEF En pratique, quand c est possible, on ne générera pas 2 n états d un AEFD à partir des n états d un AEFND : on se contentera de générer tous les états accessibles depuis {q 0 }. La procédure de génération de tous ces états consiste à maintenir l ensemble Q des états qu on a généré mais dont on a pas encore généré les successeurs. Au début, Q = {{q 0 }}. Tant que Q n est pas vide, on retire un état q de Q et on ajoute à Q tous les états directement accessibles depuis q et qui n ont pas déjà été générés précédemment. Langages formels, automates et grammaires formelles p.36/94
77 AEFND avec ǫ-transitions On peut étendre le modèle de l AEFND en lui permettant des ǫ-transitions, c est-à -dire des transitions sans lecture de symbole. L intérêt est, une fois encore, de faciliter la construction d automates reconnaissant un langage donné. Langages formels, automates et grammaires formelles p.37/94
78 AEFND avec ǫ-transitions Définition AEFND avec ǫ-transitions Un AEFND avec ǫ-transitions est un quintuplet (Q, Σ, q 0, δ, F) où Q, Σ, q 0, δ et F ont la même signification que pour un AEFND mais où δ est définie sur Q Σ {ǫ} 2 Q. Langages formels, automates et grammaires formelles p.38/94
79 ǫ-fermeture Définition ǫ-fermeture q Q, ǫ-fermeture(q) est un ensemble d états tel que : q ǫ-fermeture(q). si r ǫ-fermeture(q) alors {r Q r = δ(r,ǫ)} ǫ-fermeture(q). Langages formels, automates et grammaires formelles p.39/94
80 ǫ-fermeture Définition ǫ-fermeture q Q, ǫ-fermeture(q) est un ensemble d états tel que : q ǫ-fermeture(q). si r ǫ-fermeture(q) alors {r Q r = δ(r,ǫ)} ǫ-fermeture(q). L ǫ-fermeture se définit aussi sur un ensemble d états : S Q, ǫ-fermeture(s) = s S ǫ-fermeture(s) Langages formels, automates et grammaires formelles p.39/94
81 ǫ-fermeture Définition ǫ-fermeture q Q, ǫ-fermeture(q) est un ensemble d états tel que : q ǫ-fermeture(q). si r ǫ-fermeture(q) alors {r Q r = δ(r,ǫ)} ǫ-fermeture(q). L ǫ-fermeture se définit aussi sur un ensemble d états : S Q, ǫ-fermeture(s) = s S ǫ-fermeture(s) En d autres termes, ǫ-fermeture(q) est l ensemble de tous états accessibles depuis q en suivant une suite d ǫ-transitions. Langages formels, automates et grammaires formelles p.39/94
82 AEFND avec ǫ-transitions Définition Extension aux mots de la fonction de transition L extension aux mots δ de la fonction de transition est définie sur Q Σ 2 Q avec : δ(q i, ǫ) = ǫ-fermeture(q i ). w Σ, c Σ: δ(q i, w.c) = ǫ-fermeture(δ(q j, c)). q j b δ(q i,w) Langages formels, automates et grammaires formelles p.40/94
83 Equivalence entre AEFD et ǫ-aefnd Bien que les ǫ-aefnd aient l air plus puissants que les AEFD en terme de possibilité de reconnaître un langage, il s avère que leur puissance leur est égale. Langages formels, automates et grammaires formelles p.41/94
84 Equivalence entre AEFD et ǫ-aefnd Bien que les ǫ-aefnd aient l air plus puissants que les AEFD en terme de possibilité de reconnaître un langage, il s avère que leur puissance leur est égale. Tout AEFD est aussi un ǫ-aefnd. Langages formels, automates et grammaires formelles p.41/94
85 Equivalence entre AEFD et ǫ-aefnd Bien que les ǫ-aefnd aient l air plus puissants que les AEFD en terme de possibilité de reconnaître un langage, il s avère que leur puissance leur est égale. Tout AEFD est aussi un ǫ-aefnd. Théorème Tout langage reconnu par un ǫ-aefnd peut aussi être reconnu par un AEFD. Langages formels, automates et grammaires formelles p.41/94
86 Preuve Preuve constructive : on va démontrer que si A E = (Q E, Σ, δ E, q 0, F E ) est un ǫ-aefnd alors le langage qu il reconnaît est aussi reconnu par l AEFD A D = (Q D, Σ, δ D, q D, F D ) où : Q D = 2 Q E. q D = ǫ-fermeture(q 0 ). F D est l ensemble des états de Q D qui contiennent un état de F E, c-a-d les états dont l intersection avec F N est non vide. S Q N et c Σ : δ D (S,c) = ǫ-fermeture( δ E (s, c)). s S Langages formels, automates et grammaires formelles p.42/94
87 Preuve Démontrons d abord que w, δ D (q D, w) = δ N (q 0, w). Preuve par récurrence sur w : Pour w = 0, c-a-d w = ǫ, δ D (q D, ǫ) = δ E (q 0, ǫ) = ǫ-fermeture(q 0 ). Posons que pour tout mot w de longueur n, on a δ D (q D, w) = δ E (q 0, w) = {p 1, p 2,...p k }. c Σ, δ D (q D, w.c) = δ D ( δ D (q D, w), c) = δ D ({p 1, p 2,...p k }, c) = ǫ-fermeture( δ E (p i, c)) = 1 i k 1 i k ǫ-fermeture(δ E (p i, c)) = δ E (q 0, w.c). On a alors δ D (q D, w) = δ E (q 0, w) qui est aussi vérifiée pour tous les mots de longueur n+1. Langages formels, automates et grammaires formelles p.43/94
88 Preuve On a donc L(A D ) = {w Σ δ D (q D, w) F D } (définition d un AEFD) = {w Σ δ D (q D, w) F E } (définition de A E ) = {w Σ δ E (q 0, w) F E } (démontré juste avant) = L(A E ) (définition d un ǫ-aefnd) Langages formels, automates et grammaires formelles p.44/94
89 Les langages réguliers/rationnels Le but de ce chapitre est de présenter les langages réguliers (ou rationnels), les expressions régulières, qui sont leur représentation, de montrer qu ils constituent l ensemble des langages reconnaissables (par des AEFD) Langages formels, automates et grammaires formelles p.45/94
90 Les langages rationnels Définition Langages rationnels Etant donné un alphabet Σ, les langages rationnels sont des langages définis récursivement par :, {ǫ} et c Σ 1, {c} sont des langages rationnels. Si L et L sont des langages rationnels alors L L, L.L et L sont des langages rationnels. Langages formels, automates et grammaires formelles p.46/94
91 Expressions régulières Définition Expressions régulières Etant donné un alphabet Σ, les expressions régulières sur Σ sont définies récursivement par : est une expression régulière représentant l ensemble vide. ǫ et c Σ 1, c sont des expressions régulières représentant respectivement {ǫ} et {c}. Si r et s sont des expressions régulières représentant les langages R et S alors (r+s), (r.s) ou (rs) et r représentent respectivement les langages R S, R.S et R. Langages formels, automates et grammaires formelles p.47/94
92 Expressions régulières Définition Expressions régulières Etant donné un alphabet Σ, les expressions régulières sur Σ sont définies récursivement par : est une expression régulière représentant l ensemble vide. ǫ et c Σ 1, c sont des expressions régulières représentant respectivement {ǫ} et {c}. Si r et s sont des expressions régulières représentant les langages R et S alors (r+s), (r.s) ou (rs) et r représentent respectivement les langages R S, R.S et R. Priorité : * est prioritaire sur. qui est prioritaire sur +. Langages formels, automates et grammaires formelles p.47/94
93 Expressions régulières On note r + l expression r.r. Langages formels, automates et grammaires formelles p.48/94
94 Expressions régulières On note r + l expression r.r. Définition Langage d une expression régulière Etant donné une expression régulière r, L(r) désigne le langage représenté par r. Langages formels, automates et grammaires formelles p.48/94
95 Propriétés r,s,t : r+s = s+r (commutativité de l union) (r+s)+t = r+(s+t) (associativité de l union) (r.s).t = r.(s.t) (associativité du produit) r.(s+t) = r.s+r.t et (r+s).t = r.t+s.t (distributivité du produit par rapport à l union) = ǫ, (r ) = r, (ǫ+r) = r, (r.s ) = (r+s). Langages formels, automates et grammaires formelles p.49/94
96 uivalence entre AEFD et langages régulie Nous allons montrer que tout langage régulier est reconnaissable par un AEFD et qu un AEFD ne peut reconnaître qu un langage régulier. Pour ceci, il nous suffira de montrer que tout langage régulier est reconnaissable par un AEFND avec ǫ-transitions (car on a déjà vu l équivalence avec un AEFD) puis que tout langage reconnaissable par un AEFD est régulier. Langages formels, automates et grammaires formelles p.50/94
97 Exp. reg. -> AEFD Théorème Tout langage défini par une expression régulière est reconnaissable par un AEFND avec ǫ-transition. Preuve constructive : on montre comment créer l automate à partir de l expression régulière. Plus précisément, on montre que l on peut construire un AEFND avec ǫ-transition tel que : aucun arc n arrive vers son état initial aucun arc ne part de son unique état final. Cette preuve se fait par induction sur le nombre k d opérateurs de l expression régulière. Langages formels, automates et grammaires formelles p.51/94
98 Induction (preuve) : cas de base Pour k=0 : Langages formels, automates et grammaires formelles p.52/94
99 Induction (preuve) : cas de base Pour k=0 : est reconnu par ({q 0, q f }, Σ, δ, q 0, {q f }) avec δ définie nulle part. Langages formels, automates et grammaires formelles p.52/94
100 Induction (preuve) : cas de base Pour k=0 : est reconnu par ({q 0, q f }, Σ, δ, q 0, {q f }) avec δ définie nulle part. {ǫ} est reconnu par ({q 0, q f }, Σ, δ, q 0, {q f }) avec δ(ǫ) = q f. Langages formels, automates et grammaires formelles p.52/94
101 Induction (preuve) : cas de base Pour k=0 : est reconnu par ({q 0, q f }, Σ, δ, q 0, {q f }) avec δ définie nulle part. {ǫ} est reconnu par ({q 0, q f }, Σ, δ, q 0, {q f }) avec δ(ǫ) = q f. {c} est reconnu par ({q 0, q f }, Σ, δ, q 0, {q f }) avec δ(c) = q f. Langages formels, automates et grammaires formelles p.52/94
102 Induction (preuve) : cas général Posons que le théorème est vrai pour les expressions avec au plus k opérateurs. Soit r une expression ayant k opérateurs. Cette expression peut avoir 3 formes : r = r 1 + r 2. r = r 1.r 2. r = r 1. Soient A 1 = (Q 1, Σ 1, δ 1, q 1, {f 1 }) et A 2 = (Q 2, Σ 2, δ 2, q 2, {f 2 }) tels que L(A 1 ) = L(r 1 ) et L(A 2 ) = L(r 2 ) et Q 1 et Q 2 sont disjoints. Langages formels, automates et grammaires formelles p.53/94
103 r = r 1 + r 2 Soit A = (Q 1 Q 2 {q 0, f 0 }, Σ 1 Σ 2, δ, q 0, {f 0 }) où δ est défini par : δ(q 0, ǫ) = {q 1, q 2 }. q Q 1 \ {f 1 }, c Σ 1 {ǫ} : δ(q, c) = δ 1 (q, c). q Q 2 \ {f 2 }, c Σ 2 {ǫ} : δ(q, c) = δ 2 (q, c). δ(f 1, ǫ) = δ(f 1, ǫ) = {f 0 }. Soient A 1 = (Q 1, Σ 1, δ 1, q 1, {f 1 }) et A 2 = (Q 2, Σ 2, w (Σ 1 Σ 2 ), {f 0 } δ(q 0, w) si et seulement si {f 1 } δ(q 1, w) ou {f 2 } δ(q 2, w) donc L(A) = L(A 1 ) L(A 2 ). Langages formels, automates et grammaires formelles p.54/94
104 r = r 1.r 2 Soit A = (Q 1 Q 2, Σ 1 Σ 2, δ, q 1, {f 2 }) où δ est défini par : q Q 1 \ {f 1 }, c Σ 1 {ǫ} : δ(q, c) = δ 1 (q, c). q Q 2 \ {f 2 }, c Σ 2 {ǫ} : δ(q, c) = δ 2 (q, c). δ(f 1, ǫ) = {q 2 }. w (Σ 1 Σ 2 ), δ(q 1, w) = {f 2 } si et seulement si w 1 Σ 1, w 2 Σ 2 : w = w 1.w 2 et δ(q 1, w 1 ) = {f 1 } et δ(q 2, w 2 ) = {f 2 } donc L(A) = L(A 1 ).L(A 2 ). Langages formels, automates et grammaires formelles p.55/94
105 r = r 1 Soit A = (Q 1 {q 0, f 0 }, Σ 1, δ, q 0, {f 0 }) où δ est défini par : δ(q 0, ǫ) = δ(f 1, ǫ) = {q 1, f 0 }. q Q 1 \ {f 1 }, c Σ 1 {ǫ} : δ(q, c) = δ 1 (q, c). w Σ 1, n 0, δ(q 0, w n ) = {f 0 } si et seulement si δ(q 1, w) = {f 1 } donc L(A) = L(A 1 ). Langages formels, automates et grammaires formelles p.56/94
106 Conclusion (preuve) On en déduit que le théorème est aussi vrai si r possède k opérateurs. r1 c q1 f1 c q0 qf r1+r2 q0 c q2 r2 f2 c qf c q0 c qf r1 r2 r1.r2 q1 f1 c q2 f2 c q0 c qf r1 c r1* q0 c q1 f1 c qf c Langages formels, automates et grammaires formelles p.57/94
107 AEFD -> Exp. reg. Théorème Tout langage reconnaissable par un AEFD est régulier. Preuve constructive, récursive Langages formels, automates et grammaires formelles p.58/94
108 Preuve Soit un AEFD A = ({q 0, q 1,...q n }, Σ, δ, q 0, F). On considère les AEFD suivants : i,j,k, A (k) i,j = ({q 0, q 1,...q k } {q i, q j }, Σ, δ (k) i,j, q i, {q j }) où δ (k) i,j est définie sur {q 0, q 1,...q k } {q i, q j } Σ {q 0, q 1,...q k } {q i, q j } et c Σ, q {q 0, q 1,...q k } {q i, q j }, δ (k) i,j (q, c) = δ(q, c). Langages formels, automates et grammaires formelles p.59/94
109 Preuve Soit un AEFD A = ({q 0, q 1,...q n }, Σ, δ, q 0, F). On considère les AEFD suivants : i,j,k, A (k) i,j = ({q 0, q 1,...q k } {q i, q j }, Σ, δ (k) i,j, q i, {q j }) où δ (k) i,j est définie sur {q 0, q 1,...q k } {q i, q j } Σ {q 0, q 1,...q k } {q i, q j } et c Σ, q {q 0, q 1,...q k } {q i, q j }, δ (k) i,j (q, c) = δ(q, c). A (k) i,j est l automate A qui ne conserve que les états {q 0, q 1,...q k } {q i, q j }, qui a pour état initial q i et pour état final q j. Langages formels, automates et grammaires formelles p.59/94
110 Preuve Appelons L (k) i,j le langage {w Σ δ (k) i,j (q i, w) = q j }. On va démontrer par récurrence sur k que i,j,k, L (k) i,j est régulier. (que c est vrai pour k = -1, puis que si c est vrai pour k 1 alors c est vrai pour k+1). Langages formels, automates et grammaires formelles p.60/94
111 Preuve : cas où k = -1 Pour k = -1, A ( 1) i,j ne possède que les états q i et q j. Langages formels, automates et grammaires formelles p.61/94
112 Preuve : cas où k = -1 Pour k = -1, A ( 1) i,j ne possède que les états q i et q j. Si i = j, il y a un seul état et L ( 1) i,i = {ǫ} X avec X l ensemble (éventuellement vide) de symboles permettant les transitions de q i à q i. Langages formels, automates et grammaires formelles p.61/94
113 Preuve : cas où k = -1 Pour k = -1, A ( 1) i,j ne possède que les états q i et q j. Si i = j, il y a un seul état et L ( 1) i,i = {ǫ} X avec X l ensemble (éventuellement vide) de symboles permettant les transitions de q i à q i. Si i j alors L ( 1) i,j = (W X.Y.Z).X.Y avec W, X, Y, Z les ensembles (éventuellement vides) de symboles permettant les transitions respectivement de q i à q i, de q i à q j, de q j à q j et de q j à q i. Langages formels, automates et grammaires formelles p.61/94
114 Preuve : cas où k = -1 Pour k = -1, A ( 1) i,j ne possède que les états q i et q j. Si i = j, il y a un seul état et L ( 1) i,i = {ǫ} X avec X l ensemble (éventuellement vide) de symboles permettant les transitions de q i à q i. Si i j alors L ( 1) i,j = (W X.Y.Z).X.Y avec W, X, Y, Z les ensembles (éventuellement vides) de symboles permettant les transitions respectivement de q i à q i, de q i à q j, de q j à q j et de q j à q i. Dans tous les cas, L ( 1) i,j est bien un langage régulier. Langages formels, automates et grammaires formelles p.61/94
115 Preuve : cas général Posons que L (k 1) i,j est régulier. L automate A (k) i,j possède l état supplémentaire q k par rapport à A (k 1) i,j. Pour déduire le langage L (k) i,j à partir de L (k 1) i,j, il nous faut rajouter les mots qui sont reconnus si on passe par l état q k. On a alors 3 cas : Il n existe pas de chemin partant de q i, menant à q j et passant par q k. Il existe au moins un chemin partant de q i, menant à q j et passant par q k et il n existe pas de circuit dans l automate A (k) i,j contenant q k. Il existe au moins un chemin partant de q i, menant à q j et passant par q k et il existe au moins un circuit (k) Langages formels, automates et grammaires formelles p.62/94
116 Cas 1 Il n existe pas de chemin partant de q i, menant à q j et passant par q k. Langages formels, automates et grammaires formelles p.63/94
117 Cas 1 Il n existe pas de chemin partant de q i, menant à q j et passant par q k. On a alors L (k) i,j = L(k 1) i,j. Langages formels, automates et grammaires formelles p.63/94
118 Cas 2 Il existe au moins un chemin partant de q i, menant à q j et passant par q k et il n existe pas de circuit dans l automate A (k) i,j contenant q k. Langages formels, automates et grammaires formelles p.64/94
119 Cas 2 Il existe au moins un chemin partant de q i, menant à q j et passant par q k et il n existe pas de circuit dans l automate A (k) i,j contenant q k. On a alors L (k) i,j = L(k 1) i,k.l (k 1) k,j L (k 1) i,j. Langages formels, automates et grammaires formelles p.64/94
120 Cas 3 Il existe au moins un chemin partant de q i, menant à q j et passant par q k et il existe au moins un circuit dans l automate A (k) i,j contenant q k. Langages formels, automates et grammaires formelles p.65/94
121 Cas 3 Il existe au moins un chemin partant de q i, menant à q j et passant par q k et il existe au moins un circuit dans l automate A (k) i,j contenant q k. On a alors L (k) i,j = L(k 1) i,k.(l (k 1) k,k ).L (k 1) k,j L (k 1) i,j. Langages formels, automates et grammaires formelles p.65/94
122 Preuve : conclusion Dans tous les cas L (k) i,j est régulier. Langages formels, automates et grammaires formelles p.66/94
123 Preuve : conclusion Dans tous les cas L (k) i,j est régulier. Le langage de l automate A est l union des langages L (n) 0,j pour toutes les valeurs de j telles que q j F. Ce langage est donc régulier. Langages formels, automates et grammaires formelles p.66/94
124 Preuve : conclusion Dans tous les cas L (k) i,j est régulier. Le langage de l automate A est l union des langages L (n) 0,j pour toutes les valeurs de j telles que q j F. Ce langage est donc régulier. Cette preuve indique un moyen de déduire l expression régulière du langage reconnu par un AEFD. Il existe une méthode plus pratique d arriver au même résultat. Langages formels, automates et grammaires formelles p.66/94
125 Méthode par élimination d état Idée : éliminer un par un les états internes (ni initial ni finaux) d un AEFD pour produire finalement un AEFD équivalent qui ne contient plus d état interne et dont les arcs sont étiquetés par des expressions régulières. Langages formels, automates et grammaires formelles p.67/94
126 Méthode par élimination d état Idée : éliminer un par un les états internes (ni initial ni finaux) d un AEFD pour produire finalement un AEFD équivalent qui ne contient plus d état interne et dont les arcs sont étiquetés par des expressions régulières. Départ : remplacer les étiquettes "a,b,c,..." par des expressions régulières "a+b+c+...". Langages formels, automates et grammaires formelles p.67/94
127 Méthode par élimination d état Idée : éliminer un par un les états internes (ni initial ni finaux) d un AEFD pour produire finalement un AEFD équivalent qui ne contient plus d état interne et dont les arcs sont étiquetés par des expressions régulières. Départ : remplacer les étiquettes "a,b,c,..." par des expressions régulières "a+b+c+...". Pour éliminer un état s, il faut considérer les prédécesseurs q 1, q 2,...q n de s et les successeurs p 1, p 2,...p m de s. i,j, on remplace les arcs (q i,s) étiqueté X, (s,s) étiqueté Y, (s,p j ) étiqueté Z et (q i,p j ) étiqueté W par un arc (q i,p j ) étiqueté X.Y.Z+W. Langages formels, automates et grammaires formelles p.67/94
128 Langages non rationnels Tous les langages ne sont pas réguliers. Nous allons voir un moyen de démontrer que certains langages ne sont pas réguliers grâce au lemme du facteur itérant. Lemme Lemme du facteur itérant Pour tout langage régulier L, il existe une constante n (dépendant de L) telle que pour tout mot w de L de longueur supérieure ou égale à n, il existe les mots x, y et z tels que (1) w = x.y.z, (2) y ǫ, (3) x.y n et (4) k 0 : x.y k.z L. Langages formels, automates et grammaires formelles p.68/94
129 Preuve du lemme Soit L un langage rationnel et un AEFD A = (Q, Σ, δ, q 0, F) qui reconnaît L. Soit n le nombre d états de A. Soit w=c 1 c 2...c m un mot de L tel que i c i Σ et m>n. Il existe forcément deux valeurs i et j telles que 0 i < j n et δ(q 0, c 1 c 2...c i ) = δ(q 0, c 1 c 2...c j ) car il y a moins d états dans l automate que de facteurs gauches dans w. Soit x = c 1...c i, y = c i+1...c j et z = c j+1...c m. On a bien w = x.y.z, y ǫ (car i < j), x.y n (car j n) et x.y k.z L (car k, δ(q i, y) = δ(q i, y k )). Langages formels, automates et grammaires formelles p.69/94
130 Intérêt du lemme Ce lemme signifie que, dans tout langage rationnel, il existe une taille n de mot telle que tous les mots de taille supérieure possède un facteur non vide qui, s il apparaissait plusieurs fois à cet endroit dans le mot (au lieu d une seule fois), ferait que le mot appartiendrait encore au langage. On utilise en général le lemme du facteur itérant pour montrer qu un certain langage L n est pas rationnel : il faut montrer que quel que soit n, on peut trouver un mot w qui dépend de n et est de la forme w = x.y.z où x.y n et y ǫ mais qu il existe une valeur k telle que x.y k.z L. Langages formels, automates et grammaires formelles p.70/94
131 Exemple Démontrons que L = {a m b m m 0} n est pas régulier. Si L était régulier, il existerait une constante n tel que pour tout mot w de L, on aurait w qui répond aux critères donnés dans le lemme du facteur itérant. Or, si on choisit w = a n b n, qui est de longueur supérieure à n, sachant qu il faut que w = x.y.z, que x.y n et y ǫ, on a forcément x.y qui ne contient que des symboles a et z qui contient n symboles b (et peut-être des symboles a devant). Donc, il est faux que k 0, on a x.y k.z L : par exemple, pour k=0, on a x.y 0.z = x.z qui contient au maximum n-1 symboles a et exactement n symboles b donc il n appartient pas à L. Langages formels, automates et grammaires formelles p.71/94
132 Machine de Turing Une machine de Turing (MT) est une machine abstraite qui permet de modéliser un ordinateur : les calculs qu ils peuvent effectuer sont les mêmes. Langages formels, automates et grammaires formelles p.72/94
133 Machine de Turing Une machine de Turing (MT) est une machine abstraite qui permet de modéliser un ordinateur : les calculs qu ils peuvent effectuer sont les mêmes. Une MT est en quelque sorte un automate d états finis qui lit et écrit des symboles sur les cases d un ruban de longueur infinie et peut potentiellement changer le sens de sa lecture (déplacement d une case vers la gauche ou vers la droite) après chaque lecture de symbole. Langages formels, automates et grammaires formelles p.72/94
134 MT : définition informelle Une MT peut se voir comme étant composé d un système de contrôle, d une tête de lecture/écriture et d un ruban de longueur infini. Langages formels, automates et grammaires formelles p.73/94
135 MT : définition informelle Une MT peut se voir comme étant composé d un système de contrôle, d une tête de lecture/écriture et d un ruban de longueur infini. Le système de contrôle détermine ce que sera le prochain état de la machine en fonction de l état courant et du symbole du ruban pointé par la tête de lecture, ce que sera le symbole qu il faudra écrire à l emplacement pointé par la tête de lecture dans quel sens (une case à gauche ou à droite) déplacer la tête de lecture. Langages formels, automates et grammaires formelles p.73/94
136 MT : définition informelle Une MT peut se voir comme étant composé d un système de contrôle, d une tête de lecture/écriture et d un ruban de longueur infini. Le système de contrôle détermine ce que sera le prochain état de la machine en fonction de l état courant et du symbole du ruban pointé par la tête de lecture, ce que sera le symbole qu il faudra écrire à l emplacement pointé par la tête de lecture dans quel sens (une case à gauche ou à droite) déplacer la tête de lecture. Initialement, la tête de lecture pointe sur le 1er symbole d une suite finie de symboles encadrée à gauche et à droite par deux suites infinies de cases vides. Langages formels, automates et grammaires formelles p.73/94
137 MT : définition formelle Définition Une machine de Turing est un septuplet M = (Q, Σ, Γ, δ, q 0,, F) où : Q est l ensemble des états de la machine. Σ est l ensemble des symboles d entrée de la machine. Γ est l ensemble des symboles du ruban. Σ Γ. δ est définie sur Q Γ Q Γ {, } telle que δ(q,c) = (q,c, D) avec q, le nouvel état de la machine, c le symbole qui remplace c sur le ruban D = ou, le sens de déplacement de la tête de lecture (gauche ou droite). q 0 est l état initial. Γ est le symbole de la case vide. F est l ensemble des états finaux. Langages formels, automates et grammaires formelles p.74/94
138 Représentation de l état global d une MT On indique par c 1 c 2...c i 1 qc i...c k que le ruban contient le mot c 1...c k encadré par des cases vides tandis que le système de contrôle se trouve dans l état q et que la tête de lecture pointe sur c i. Langages formels, automates et grammaires formelles p.75/94
139 Succession d états globaux d une MT αqβ α q β désigne une transition élémentaire de l état global αqβ à l état global α q β par la lecture du premier symbole de β, son remplacement par un nouveau symbole et un déplacement de la tête de lecture à gauche ou à droite. On désignera par la fermeture transitive et réflexive de. Langages formels, automates et grammaires formelles p.76/94
INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies
INF 232: Langages et Automates Travaux Dirigés Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies Année Académique 2013-2014 Année Académique 2013-2014 UNIVERSITÉ JOSEPH
Plus en détailLe théorème de Thalès et sa réciproque
Le théorème de Thalès et sa réciproque I) Agrandissement et Réduction d une figure 1) Définition : Lorsque toutes les longueurs d une figure F sont multipliées par un même nombre k on obtient une autre
Plus en détailCalcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.
1 Définitions, notations Calcul matriciel Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes. On utilise aussi la notation m n pour le
Plus en détailAC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =
LE NOMBRE D OR Présentation et calcul du nombre d or Euclide avait trouvé un moyen de partager en deu un segment selon en «etrême et moyenne raison» Soit un segment [AB]. Le partage d Euclide consiste
Plus en détailDe même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que
Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer
Plus en détailCH.6 Propriétés des langages non contextuels
CH.6 Propriétés des langages non contetuels 6.1 Le lemme de pompage 6.2 Les propriétés de fermeture 6.3 Les problèmes de décidabilité 6.4 Les langages non contetuels déterministes utomates ch6 1 6.1 Le
Plus en détailChapitre 2. Matrices
Département de mathématiques et informatique L1S1, module A ou B Chapitre 2 Matrices Emmanuel Royer emmanuelroyer@mathuniv-bpclermontfr Ce texte mis gratuitement à votre disposition a été rédigé grâce
Plus en détail2.4 Représentation graphique, tableau de Karnaugh
2 Fonctions binaires 45 2.4 Représentation graphique, tableau de Karnaugh On peut définir complètement une fonction binaire en dressant son tableau de Karnaugh, table de vérité à 2 n cases pour n variables
Plus en détail1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Plus en détailLogique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.
Logique binaire I. L'algèbre de Boole L'algèbre de Boole est la partie des mathématiques, de la logique et de l'électronique qui s'intéresse aux opérations et aux fonctions sur les variables logiques.
Plus en détailDOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.
A1 Trouvez l entier positif n qui satisfait l équation suivante: Solution 1 2 10 + 1 2 9 + 1 2 8 = n 2 10. En additionnant les termes du côté gauche de l équation en les mettant sur le même dénominateur
Plus en détailChap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1
Chap 4: Analyse syntaxique 1 III- L'analyse syntaxique: 1- Le rôle d'un analyseur syntaxique 2- Grammaires non contextuelles 3- Ecriture d'une grammaire 4- Les méthodes d'analyse 5- L'analyse LL(1) 6-
Plus en détailIFT1215 Introduction aux systèmes informatiques
Introduction aux circuits logiques de base IFT25 Architecture en couches Niveau 5 Niveau 4 Niveau 3 Niveau 2 Niveau Niveau Couche des langages d application Traduction (compilateur) Couche du langage d
Plus en détailLes droites (d 1 ) et (d 2 ) sont sécantes en A Le point A est le point d intersection des 2 droites
I Droites perpendiculaires Lorsque deux droites se coupent, on dit qu elles sont sécantes Les droites (d 1 ) et (d 2 ) sont sécantes en A Le point A est le point d intersection des 2 droites Lorsque deux
Plus en détailInitiation à LabView : Les exemples d applications :
Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple
Plus en détailNote de cours. Introduction à Excel 2007
Note de cours Introduction à Excel 2007 par Armande Pinette Cégep du Vieux Montréal Excel 2007 Page: 2 de 47 Table des matières Comment aller chercher un document sur CVMVirtuel?... 8 Souris... 8 Clavier
Plus en détailModèles de Calcul. Yassine Lakhnech. 2007/08 Université Joseph Fourier Lab.: VERIMAG. Yassine.Lakhnech@imag.fr. Modèles de Calcul Start p.
Modèles de Calcul Yassine Lakhnech Yassine.Lakhnech@imag.fr 2007/08 Université Joseph Fourier Lab.: VERIMAG Modèles de Calcul Start p.1/81 Équipe pédagogique Cours : Saddek Bensalem et Yassine Lakhnech
Plus en détailCORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»
Corrigé Cours de Mr JULES v3.3 Classe de Quatrième Contrat 1 Page 1 sur 13 CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!» «Correction en rouge et italique.» I. Les nombres décimaux relatifs.
Plus en détailPROBLEME(12) Première partie : Peinture des murs et du plafond.
PROBLEME(12) Une entreprise doit rénover un local. Ce local a la forme d'un parallélépipède rectangle. La longueur est 6,40m, la largeur est 5,20m et la hauteur est 2,80m. Il comporte une porte de 2m de
Plus en détailCours Premier semestre
C.Belleudy, D.Gaffé Université de Nice-Sophia Antipolis DEUG Première année SM,MP,MI UECS EEA Électronique Numérique Cours Premier semestre C. Belleudy, D.Gaffé version 3. 2 Électronique Numérique Chapitre
Plus en détailFondements de l informatique Logique, modèles, et calculs
Fondements de l informatique Logique, modèles, et calculs Cours INF423 de l Ecole Polytechnique Olivier Bournez Version du 20 septembre 2013 2 Table des matières 1 Introduction 9 1.1 Concepts mathématiques........................
Plus en détailMachines virtuelles Cours 1 : Introduction
Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une
Plus en détail«Aucune investigation humaine ne peut être qualifiée de science véritable si elle ne peut être démontrée mathématiquement.
«Aucune investigation humaine ne peut être qualifiée de science véritable si elle ne peut être démontrée mathématiquement.» Léonard de Vinci MATHEMATIQUES Les mathématiques revêtaient un caractère particulier
Plus en détailIntroduction à la théorie des graphes. Solutions des exercices
CAHIERS DE LA CRM Introduction à la théorie des graphes Solutions des exercices Didier Müller CAHIER N O 6 COMMISSION ROMANDE DE MATHÉMATIQUE 1 Graphes non orientés Exercice 1 On obtient le graphe biparti
Plus en détailInformatique Théorique : Théorie des Langages, Analyse Lexicale, Analyse Syntaxique Jean-Pierre Jouannaud Professeur
Université Paris-Sud Licence d Informatique Informatique Théorique : Théorie des Langages, Analyse Lexicale, Analyse Syntaxique Jean-Pierre Jouannaud Professeur Adresse de l auteur : LIX École Polytechnique
Plus en détailPlus courts chemins, programmation dynamique
1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique
Plus en détailDurée de L épreuve : 2 heures. Barème : Exercice n 4 : 1 ) 1 point 2 ) 2 points 3 ) 1 point
03 Mai 2013 Collège Oasis Durée de L épreuve : 2 heures. apple Le sujet comporte 4 pages et est présenté en livret ; apple La calculatrice est autorisée ; apple 4 points sont attribués à la qualité de
Plus en détailManuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2
éducalgo Manuel d utilisation 26 juin 2011 Table des matières 1 Tâche à effectuer : écrire un algorithme 2 2 Comment écrire un algorithme? 3 2.1 Avec quoi écrit-on? Avec les boutons d écriture........
Plus en détailRésolution d équations non linéaires
Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique
Plus en détailLa mesure de Lebesgue sur la droite réelle
Chapitre 1 La mesure de Lebesgue sur la droite réelle 1.1 Ensemble mesurable au sens de Lebesgue 1.1.1 Mesure extérieure Définition 1.1.1. Un intervalle est une partie convexe de R. L ensemble vide et
Plus en détailFonctions de deux variables. Mai 2011
Fonctions de deux variables Dédou Mai 2011 D une à deux variables Les fonctions modèlisent de l information dépendant d un paramètre. On a aussi besoin de modéliser de l information dépendant de plusieurs
Plus en détailCHAPITRE 10. Jacobien, changement de coordonnées.
CHAPITRE 10 Jacobien, changement de coordonnées ans ce chapitre, nous allons premièrement rappeler la définition du déterminant d une matrice Nous nous limiterons au cas des matrices d ordre 2 2et3 3,
Plus en détail1 Introduction au codage
CélestineOscarDésiréAnatoleGastonEugène 1 Introduction au codage 1.1 Les ensembles L ensemble de tout les ensembles est Dieu lui-même. Kantor Ensemble des parties d un ensemble désigne l ensemble des sous-ensembles
Plus en détailMesure d angles et trigonométrie
Thierry Ciblac Mesure d angles et trigonométrie Mesure de l angle de deux axes (ou de deux demi-droites) de même origine. - Mesures en degrés : Divisons un cercle en 360 parties égales définissant ainsi
Plus en détailIntroduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique
Introduction à la Programmation par Contraintes (PPC) Ruslan Sadykov LIX, École Polytechnique Contenu Introduction Modélisation Problèmes de satisfaction des contraintes Exemples des modèles PPC simples
Plus en détailEnoncé et corrigé du brevet des collèges dans les académies d Aix- Marseille, Montpellier, Nice Corse et Toulouse en 2000. Énoncé.
Enoncé et corrigé du brevet des collèges dans les académies d Aix- Marseille, Montpellier, Nice Corse et Toulouse en 2000. Énoncé. I- ACTIVITES NUMERIQUES (12 points) Exercice 1 (3 points) On considère
Plus en détail1S Modèles de rédaction Enoncés
Par l équipe des professeurs de 1S du lycée Parc de Vilgénis 1S Modèles de rédaction Enoncés Produit scalaire & Corrigés Exercice 1 : définition du produit scalaire Soit ABC un triangle tel que AB, AC
Plus en détailQuelques contrôle de Première S
Quelques contrôle de Première S Gilles Auriol auriolg@free.fr http ://auriolg.free.fr Voici l énoncé de 7 devoirs de Première S, intégralement corrigés. Malgré tout les devoirs et 5 nécessitent l usage
Plus en détailArchitecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Plus en détailObjectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)
Objectifs du cours d aujourd hui Informatique II : Cours d introduction à l informatique et à la programmation objet Complexité des problèmes Introduire la notion de complexité d un problème Présenter
Plus en détailALGORITHMIQUE ET PROGRAMMATION En C
Objectifs ALGORITHMIQUE ET PROGRAMMATION Une façon de raisonner Automatiser la résolution de problèmes Maîtriser les concepts de l algorithmique Pas faire des spécialistes d un langage Pierre TELLIER 2
Plus en détailProbabilités sur un univers fini
[http://mp.cpgedupuydelome.fr] édité le 7 août 204 Enoncés Probabilités sur un univers fini Evènements et langage ensembliste A quelle condition sur (a, b, c, d) ]0, [ 4 existe-t-il une probabilité P sur
Plus en détailUEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
Plus en détailLa programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique
La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation
Plus en détailCalculabilité Cours 3 : Problèmes non-calculables. http://www.irisa.fr/lande/pichardie/l3/log/
Calculabilité Cours 3 : Problèmes non-calculables http://www.irisa.fr/lande/pichardie/l3/log/ Problèmes et classes de décidabilité Problèmes et classes de décidabilité Nous nous intéressons aux problèmes
Plus en détailExo7. Calculs de déterminants. Fiche corrigée par Arnaud Bodin. Exercice 1 Calculer les déterminants des matrices suivantes : Exercice 2.
Eo7 Calculs de déterminants Fiche corrigée par Arnaud Bodin Eercice Calculer les déterminants des matrices suivantes : Correction Vidéo ( ) 0 6 7 3 4 5 8 4 5 6 0 3 4 5 5 6 7 0 3 5 4 3 0 3 0 0 3 0 0 0 3
Plus en détailInformatique Générale
Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) guillaume.hutzler@ibisc.univ-evry.fr Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html
Plus en détailChapitre 6. Fonction réelle d une variable réelle
Chapitre 6 Fonction réelle d une variable réelle 6. Généralités et plan d étude Une application de I dans R est une correspondance entre les éléments de I et ceu de R telle que tout élément de I admette
Plus en détailCONJUGUÉ D'UN POINT PAR RAPPORT À UN TRIANGLE
CONJUGUÉ D'UN POINT PAR RAPPORT À UN TRIANGLE Jean Luc Bovet, Auvernier L'article de Monsieur Jean Piquerez (Bulletin de la SSPMP No 86), consacré aux symédianes me paraît appeler une généralisation. En
Plus en détailThéorie des Langages
Théorie des Langages Analyse syntaxique descendante Claude Moulin Université de Technologie de Compiègne Printemps 2010 Sommaire 1 Principe 2 Premiers 3 Suivants 4 Analyse 5 Grammaire LL(1) Exemple : Grammaire
Plus en détailLimites finies en un point
8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,
Plus en détailExcel 2007 Niveau 3 Page 1 www.admexcel.com
Excel 2007 Niveau 3 Page 1 TABLE DES MATIERES UTILISATION DE LISTES DE DONNEES... 4 REMARQUES PREALABLES SUR LES LISTES DE DONNEES... 4 METTRE EN FORME LE TABLEAU... 6 METTRE LA LISTE A JOUR... 7 a/ Directement
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailBaccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé
Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e
Plus en détail3. Conditionnement P (B)
Conditionnement 16 3. Conditionnement Dans cette section, nous allons rappeler un certain nombre de définitions et de propriétés liées au problème du conditionnement, c est à dire à la prise en compte
Plus en détailLogiciel de Base. I. Représentation des nombres
Logiciel de Base (A1-06/07) Léon Mugwaneza ESIL/Dépt. Informatique (bureau A118) mugwaneza@univmed.fr I. Représentation des nombres Codage et représentation de l'information Information externe formats
Plus en détailReprésentation d un entier en base b
Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir
Plus en détailTexte Agrégation limitée par diffusion interne
Page n 1. Texte Agrégation limitée par diffusion interne 1 Le phénomène observé Un fût de déchets radioactifs est enterré secrètement dans le Cantal. Au bout de quelques années, il devient poreux et laisse
Plus en détailCHAPITRE 1. Suites arithmetiques et géometriques. Rappel 1. On appelle suite réelle une application de
HAPITRE 1 Suites arithmetiques et géometriques Rappel 1 On appelle suite réelle une application de dans, soit est-à-dire pour une valeur de la variable appartenant à la suite prend la valeur, ie : On notera
Plus en détailI - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES
I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES Théorème - Définition Soit un cercle (O,R) et un point. Une droite passant par coupe le cercle en deux points A et
Plus en détailLe seul ami de Batman
Le seul ami de Batman Avant de devenir un héros de cinéma en 1989, Batman est depuis plus de 50 ans un fameux personnage de bandes dessinées aux États-Unis. Il fut créé en mai 1939 dans les pages de Détective
Plus en détailExprimer ce coefficient de proportionnalité sous forme de pourcentage : 3,5 %
23 CALCUL DE L INTÉRÊT Tau d intérêt Paul et Rémi ont reçu pour Noël, respectivement, 20 et 80. Ils placent cet argent dans une banque, au même tau. Au bout d une année, ce placement leur rapportera une
Plus en détailMPI Activité.10 : Logique binaire Portes logiques
MPI Activité.10 : Logique binaire Portes logiques I. Introduction De nombreux domaines font appel aux circuits logiques de commutation : non seulement l'informatique, mais aussi les technologies de l'asservissement
Plus en détailCours d Analyse. Fonctions de plusieurs variables
Cours d Analyse Fonctions de plusieurs variables Licence 1ère année 2007/2008 Nicolas Prioux Université de Marne-la-Vallée Table des matières 1 Notions de géométrie dans l espace et fonctions à deux variables........
Plus en détailCours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Plus en détailBaccalauréat ES/L Amérique du Sud 21 novembre 2013
Baccalauréat ES/L Amérique du Sud 21 novembre 2013 A. P. M. E. P. EXERCICE 1 Commun à tous les candidats 5 points Une entreprise informatique produit et vend des clés USB. La vente de ces clés est réalisée
Plus en détailCHAPITRE VIII : Les circuits avec résistances ohmiques
CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On
Plus en détail3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes
PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason
Plus en détailChapitre 2 Le problème de l unicité des solutions
Université Joseph Fourier UE MAT 127 Mathématiques année 2011-2012 Chapitre 2 Le problème de l unicité des solutions Ce que nous verrons dans ce chapitre : un exemple d équation différentielle y = f(y)
Plus en détailMATLAB : COMMANDES DE BASE. Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */.
Page 1 de 9 MATLAB : COMMANDES DE BASE Note : lorsqu applicable, l équivalent en langage C est indiqué entre les délimiteurs /* */. Aide help, help nom_de_commande Fenêtre de travail (Command Window) Ligne
Plus en détailUtilisation des tableaux sémantiques dans les logiques de description
Utilisation des tableaux sémantiques dans les logiques de description IFT6281 Web Sémantique Jacques Bergeron Département d informatique et de recherche opérationnelle Université de Montréal bergerja@iro.umontreal.ca
Plus en détailCodage d information. Codage d information : -Définition-
Introduction Plan Systèmes de numération et Représentation des nombres Systèmes de numération Système de numération décimale Représentation dans une base b Représentation binaire, Octale et Hexadécimale
Plus en détailPremiers exercices d Algèbre. Anne-Marie Simon
Premiers exercices d Algèbre Anne-Marie Simon première version: 17 août 2005 version corrigée et complétée le 12 octobre 2010 ii Table des matières 1 Quelques structures ensemblistes 1 1.0 Ensembles, relations,
Plus en détailAlgorithmique et Programmation Fonctionnelle
Algorithmique et Programmation Fonctionnelle RICM3 Cours 9 : Lambda-calcul Benjamin Wack Polytech 2014-2015 1 / 35 La dernière fois Typage Polymorphisme Inférence de type 2 / 35 Plan Contexte λ-termes
Plus en détailIntroduction à MATLAB R
Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d
Plus en détail6. Les différents types de démonstrations
LES DIFFÉRENTS TYPES DE DÉMONSTRATIONS 33 6. Les différents types de démonstrations 6.1. Un peu de logique En mathématiques, une démonstration est un raisonnement qui permet, à partir de certains axiomes,
Plus en détailAlgèbre binaire et Circuits logiques (2007-2008)
Université Mohammed V Faculté des Sciences Département de Mathématiques et Informatique Filière : SMI Algèbre binaire et Circuits logiques (27-28) Prof. Abdelhakim El Imrani Plan. Algèbre de Boole 2. Circuits
Plus en détailRaisonnement par récurrence Suites numériques
Chapitre 1 Raisonnement par récurrence Suites numériques Terminale S Ce que dit le programme : CONTENUS CAPACITÉS ATTENDUES COMMENTAIRES Raisonnement par récurrence. Limite finie ou infinie d une suite.
Plus en détailAlgorithmique et Programmation, IMA
Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions
Plus en détailLes indices à surplus constant
Les indices à surplus constant Une tentative de généralisation des indices à utilité constante On cherche ici en s inspirant des indices à utilité constante à définir un indice de prix de référence adapté
Plus en détailCorrection : E = Soit E = -1,6. F = 12 Soit F = -6 3 + 45. y = 11. et G = -2z + 4y G = 2 6 = 3 G = G = -2 5 + 4 11
Correction : EXERCICE : Calculer en indiquant les étapes: (-6 +9) ( ) ( ) B = -4 (-) (-8) B = - 8 (+ 6) B = - 8 6 B = - 44 EXERCICE : La visite médicale Calcul de la part des élèves rencontrés lundi et
Plus en détailExo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.
Exo7 Matrice d une application linéaire Corrections d Arnaud odin. Exercice Soit R muni de la base canonique = ( i, j). Soit f : R R la projection sur l axe des abscisses R i parallèlement à R( i + j).
Plus en détail1 Définition et premières propriétés des congruences
Université Paris 13, Institut Galilée Département de Mathématiques Licence 2ème année Informatique 2013-2014 Cours de Mathématiques pour l Informatique Des nombres aux structures Sylviane R. Schwer Leçon
Plus en détailProblème 1 : applications du plan affine
Problème 1 : applications du plan affine Notations On désigne par GL 2 (R) l ensemble des matrices 2 2 inversibles à coefficients réels. Soit un plan affine P muni d un repère (O, I, J). Les coordonnées
Plus en détailReprésentation géométrique d un nombre complexe
CHAPITRE 1 NOMBRES COMPLEXES 1 Représentation géométrique d un nombre complexe 1. Ensemble des nombres complexes Soit i le nombre tel que i = 1 L ensemble des nombres complexes est l ensemble des nombres
Plus en détailCours d Informatique
Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V elbenani@hotmail.com sayah@fsr.ac.ma 2007/2008 Info2, 1ère année SM/SMI 1
Plus en détailCorrection du baccalauréat ES/L Métropole 20 juin 2014
Correction du baccalauréat ES/L Métropole 0 juin 014 Exercice 1 1. c.. c. 3. c. 4. d. 5. a. P A (B)=1 P A (B)=1 0,3=0,7 D après la formule des probabilités totales : P(B)=P(A B)+P(A B)=0,6 0,3+(1 0,6)
Plus en détailMEMOIRES MAGNETIQUES A DISQUES RIGIDES
MEMOIRES MAGNETIQUES A DISQUES RIGIDES PARTIE ELECTRONIQUE Le schéma complet de FP5 est donnée en annexe. Les questions porterons sur la fonction FP5 dont le schéma fonctionnel de degré 2 est présenté
Plus en détailArithmétique binaire. Chapitre. 5.1 Notions. 5.1.1 Bit. 5.1.2 Mot
Chapitre 5 Arithmétique binaire L es codes sont manipulés au quotidien sans qu on s en rende compte, et leur compréhension est quasi instinctive. Le seul fait de lire fait appel au codage alphabétique,
Plus en détailDéroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009
Déroulement Algorithmes et structures de données Cours 1 et 2 Patrick Reuter http://www.labri.fr/~preuter/asd2009 CM mercredi de 8h00 à 9h00 (Amphi Bât. E, 3 ème étage) ED - Groupe 3 : mercredi, 10h30
Plus en détailPrésentation du langage et premières fonctions
1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en
Plus en détailChapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme
Chapitre 3 Quelques fonctions usuelles 1 Fonctions logarithme et eponentielle 1.1 La fonction logarithme Définition 1.1 La fonction 7! 1/ est continue sur ]0, +1[. Elle admet donc des primitives sur cet
Plus en détailCours d électricité. Circuits électriques en courant constant. Mathieu Bardoux. 1 re année
Cours d électricité Circuits électriques en courant constant Mathieu Bardoux mathieu.bardoux@univ-littoral.fr IUT Saint-Omer / Dunkerque Département Génie Thermique et Énergie 1 re année Objectifs du chapitre
Plus en détailMicrosoft Excel. Tableur
Microsoft Excel Tableur 1 Introduction à la notion du tableur Un tableur est un logiciel permettant de manipuler des données numériques et d'effectuer automatiquement des calculs sur des nombres stockés
Plus en détailCapacité d un canal Second Théorème de Shannon. Théorie de l information 1/34
Capacité d un canal Second Théorème de Shannon Théorie de l information 1/34 Plan du cours 1. Canaux discrets sans mémoire, exemples ; 2. Capacité ; 3. Canaux symétriques ; 4. Codage de canal ; 5. Second
Plus en détailINSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX
TABLE DES MATIERES Livret Utilisateur Excel 2007 Niveau 2 INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX... 4 Les tableaux croisés dynamiques... 4 Création d un tableau croisé... 5 Comparer des
Plus en détailModel checking temporisé
Model checking temporisé Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS berard@lamsade.dauphine.fr ETR 07, 5 septembre 2007 1/44 Nécessité de vérifier des systèmes... 2/44 Nécessité de vérifier
Plus en détailLogique. Plan du chapitre
Logique Ce chapitre est assez abstrait en première lecture, mais est (avec le chapitre suivant «Ensembles») probablement le plus important de l année car il est à la base de tous les raisonnements usuels
Plus en détailPremière partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015
Énoncé Soit V un espace vectoriel réel. L espace vectoriel des endomorphismes de V est désigné par L(V ). Lorsque f L(V ) et k N, on désigne par f 0 = Id V, f k = f k f la composée de f avec lui même k
Plus en détail