Cours 9: Automates finis

Save this PDF as:
 WORD  PNG  TXT  JPG

Dimension: px
Commencer à balayer dès la page:

Download "Cours 9: Automates finis"

Transcription

1 Cours 9: Automates finis Olivier Bournez LIX, Ecole Polytechnique INF421-a Bases de la programmation et de l algorithmique

2 Aujourd hui Rappels Déterminisation Automates et expressions régulières Langages non-réguliers Propriétés de clôture Le mot de la fin

3 3 Automate fini déterministe (DFA) q a a q q d a a q c a Un automate fini déterministe est un quintuplet (Q, Σ, δ, q 0, F ) où Σ est un alphaet. Q est un ensemle fini d états. δ : Q Σ Q est la fonction (partielle) de transition. q 0 est l état initial. F Q est un ensemle d états finaux. q e

4 Rappel. Langage accepté par un DFA: informellement 4 Un automate prend en entrée un mot w et l accepte ou le rejette: q a a q q d a q c On part à l état q 0 On lit les caractères du mot w un à un en suivant la transition correspondante (si il n y en a pas, on se loque = échec) Lorsque tous les caractères sont lus, on accepte si l on est sur un état final, on rejette sinon. a q e a Exemple: Le mot aa est accepté. Le mot aa est accepté. Le mot aaa n est pas accepté.

5 Langage accepté par un automate: Formellement On introduit la fonction ˆδ de transition étendue aux mots : A partir d un état q en lisant le mot vide ɛ on reste dans l état q, q a a q a q c q Q, ˆδ(q, ɛ) = q. A partir d un état q, en lisant le mot c = wa se terminant par a Σ, on a d aord lu w, puis effectué la transition correspondante à a q d ˆδ(q, wa) = δ(ˆδ(q, w), a), a q e a lorsque le memre droit existe. Le langage L(A) accepté par A est défini par L(A) = {m ˆδ(q 0, m) F }.

6 6 Automate fini non-déterministe (NFA) q a a q q d a a q c a Un automate fini non-déterministe est un quintuplet (Q, Σ, δ, q 0, F ) où Σ est un alphaet. Q est un ensemle fini d états. δ : Q Σ P(Q) est une fonction de Q Σ vers les parties Q. δ associe à tout état q Q, et symole c Σ un sous-ensemle δ(q, c) de Q. q 0 est l état initial. F Q est un ensemle d états finaux. q e

7 Langage accepté par un NFA: informellement Un automate prend en entrée un mot w et l accepte ou le rejette: q a a q q d a q e a q c a On part à l état q 0 On essaye de lire les caractères du mot w un à un (lorsqu il y a plusieurs possiilités, on en choisit une/ s il n y en a pas, on se loque = échec). S il existe une façon de lire tous les caractères et d arriver sur un état final, on accepte le mot. Sinon (il n y a pas de façon de lire tous les caractères et d arriver sur un état final), on rejette. Exemple: aaaa est accepté. a n est pas accepté.

8 Une façon de voir les exécutions Exemple: 0,1 sur w = q 1 0,1 0 q 1 q 2 Exécutions: q 0 q 0 q 0 q 0 q 0 q 0 q 0 q 1 q 1 q 1 q 1 q 2 q 2 q 2 On accepte un mot si et seulement s il y a une exécution sur ce mot partant de l état initial qui termine en un état de F.

9 Formellement: langage accepté par un automate On introduit la fonction ˆδ de transition étendue aux mots : A partir d un état q en lisant le mot vide ɛ on reste dans l état q, q Q, ˆδ(q, ɛ) = {q} A partir d un état q, en lisant le mot m = wa se terminant par a Σ, on a d aord lu w, puis effectué les transitions correspondantes à a ˆδ(q, wa) = δ(p, a). p ˆδ(q,w) Le langage L(A) accepté A est défini par L(A) = {m ˆδ(q 0, m) F }

10 Exercice Construire un automate fini déterministe qui accepte l ensemle des mots sur l alphaet {0, 1} 1. commençant par un 1 2. et qui, interprétés en inaire, sont multiples de 5. Par exemple: 101, 1010, et 1111 sont dans le langage. 0, 100 et 111 ne le sont pas.

11 Solution I/II L astuce est de réaliser que lire un nouveau it multiplie le nomre n lu jusqu à maintenant par 2 si on lit un 0; par 2 et ajoute 1 si on lit un 1. On ne mémorise pas n = 5a +, mais seulement le reste {0, 1, 2, 3, 4} de la division de n par 5. On taule alors en fonction de, la nouvelle valeur de. L état q i signifie que le nomre n vu jusque là est congru à i modulo 5: 0 1 q 0 q 0 q 1 q 1 q 2 q 3 q 2 q 4 q 0 q 3 q 1 q 2 q 4 q 3 q 4

12 Solution II/II Cependant cet automate accepte des mots qui commencent par des 0. On ajoute un état s initial, et un état mort d. Si dans l état s, on voit un 1 en premier, on se comporte comme q 0, c est-à-dire on va en q 1. on voit un 0, on n acceptera jamais, on va en d, qu on ne quittera jamais. 0 1 s d q 1 q 0 q 0 q 1 q 1 q 2 q 3 q 2 q 4 q 0 q 3 q 1 q 2 q 4 q 3 q 4 d d d

13 Aujourd hui Rappels Déterminisation Automates et expressions régulières Langages non-réguliers Propriétés de clôture Le mot de la fin

14 Déterminisation Théorème: Tout NFA peut être simulé par un DFA.

15 Déterminisation Théorème: Tout NFA peut être simulé par un DFA. Preuve: Soit (Q, Σ, δ, q 0, F ) un NFA. Il reconnaît le même langage que le DFA (Q, Σ, δ, {q 0 }, F ) avec: Q = P(Q): Q est constitué de tous les sous-ensemles de Q. F est constitué de tous les sous-ensemles de Q avec au moins un élément commun avec F. Pour tout S Q, et pour tout a Σ, δ (S, a) = q S δ(q, a).

16 Déterminisation Théorème: Tout NFA peut être simulé par un DFA. Preuve: Soit (Q, Σ, δ, q 0, F ) un NFA. Il reconnaît le même langage que le DFA (Q, Σ, δ, {q 0 }, F ) avec: Q = P(Q): Q est constitué de tous les sous-ensemles de Q. F est constitué de tous les sous-ensemles de Q avec au moins un élément commun avec F. Pour tout S Q, et pour tout a Σ, δ (S, a) = q S δ(q, a). Pourquoi: il est fait exactement pour que ˆδ (q 0, w) = ˆδ({q 0 }, w) pour tout mot w.

17 Exemple 1 Un NFA: 0,1 Le DFA équivalent: q 0 0 q 1 1 q 2

18 Exemple 1 15 Un NFA: 0,1 q 0 0 q 1 1 q 2 Le DFA équivalent: ,1 0 {q 0 } 0 {q 0, q 1 } 0 {q 0, q 2 } {q 1 } 0 {q 1, q 2 } ,1 1 {q 2 } 1 {q 0, q 1, q 2 }

19 Exemple 1: suite Le DFA: 0,1 q 0 0 q 1 1 q 2 La partie atteignale du DFA équivalent: {q 0 } {q 0, q 1 } {q 0, q 2 } 0 1

20 Exemple: un digicode 17 Réaliser un digicode (code secret 1794) par un NFA: Le DFA otenu (circuit électronique correspondant):

21 Exemple: un digicode Réaliser un digicode (code secret 1794) par un NFA: Le DFA otenu (circuit électronique correspondant): 1 0,2-9 0,2-6,8-9 {0} 1 {0, 1} {0, 2} 1 9 {0, 3} 4 {0, 4} 0,2-8 0,2,3,5-9 0,2-9 Tous les autres sous-ensemles de {0, 1, 2, 3, 4} ne sont pas atteignales: ils ne sont pas représentés ici. 17

22 18 Encore une extension: automate fini non-déterministe avec ɛ-transitions (NFA ɛ) q a a q q d a q e ɛ a q c a Le principe: 1. on autorise toujours plusieurs transitions avec le même symole. (non-déterminisme) 2. mais aussi les transitions spontanées : certaines transitions peuvent être étiquetées par le mot vide ɛ. Elles peuvent être prises sans lire de lettre. Exemple: le mot aaaaa est accepté.

23 NFA ɛ: formalisations Formalisation de la notion d automate: Formalisation de la notion de mot reconnu:

24 NFA ɛ: formalisations Formalisation de la notion d automate:... δ : Q (Σ {ɛ}) P(Q)... Formalisation de la notion de mot reconnu:

25 NFA ɛ: formalisations Formalisation de la notion d automate:... δ : Q (Σ {ɛ}) P(Q)... Formalisation de la notion de mot reconnu:... ˆδ(q, wa) = p ˆδ(q,w) ɛ clôture(δ(p, a)). ɛ clôture(q) = tous les états joignales à partir de q par une suite de n 0 transitions étiquetées par ɛ...

26 NFA ɛ: formalisations Formalisation de la notion d automate:... δ : Q (Σ {ɛ}) P(Q)... Formalisation de la notion de mot reconnu:... ˆδ(q, wa) = p ˆδ(q,w) ɛ clôture(δ(p, a)). ɛ clôture(q) = tous les états joignales à partir de q par une suite de n 0 transitions étiquetées par ɛ... Tout DFA peut être vu comme un NFA, tout NFA peut être vu comme un NFA ɛ.

27 NFA ɛ: formalisations Formalisation de la notion d automate:... δ : Q (Σ {ɛ}) P(Q)... Formalisation de la notion de mot reconnu:... ˆδ(q, wa) = p ˆδ(q,w) ɛ clôture(δ(p, a)). ɛ clôture(q) = tous les états joignales à partir de q par une suite de n 0 transitions étiquetées par ɛ... Tout DFA peut être vu comme un NFA, tout NFA peut être vu comme un NFA ɛ. Théorème: Tout NFA ɛ peut être simulé par un DFA.

28 NFA ɛ: formalisations Formalisation de la notion d automate:... δ : Q (Σ {ɛ}) P(Q)... Formalisation de la notion de mot reconnu:... ˆδ(q, wa) = p ˆδ(q,w) ɛ clôture(δ(p, a)). ɛ clôture(q) = tous les états joignales à partir de q par une suite de n 0 transitions étiquetées par ɛ... Tout DFA peut être vu comme un NFA, tout NFA peut être vu comme un NFA ɛ. Théorème: Tout NFA ɛ peut être simulé par un DFA.... même principe...

29 Un intérêt: permettre de cominer directement des automates. Exemple: à partir d un automate qui reconnaît pim p q 0 q i 1 q m 2 q 3 et d un automate qui reconnaît poum p r 0 r o 1 r u 2 r m 3 r 4 construire un automate qui reconnaît pim poum à coup de copier coller: s ɛ ɛ p q 0 q i 1 q m 2 q 3 p r 0 r o 1 r u 2 r m 3 r 4

30 Aujourd hui Rappels Déterminisation Automates et expressions régulières Langages non-réguliers Propriétés de clôture Le mot de la fin

31 Liens avec les expressions régulières Théorème de Kleene: L(DFA) = L(NFA) = L(NFA ɛ) = Langages réguliers. Autrement dit: les assertions suivantes sont équivalentes. L est accepté par un DFA. L est accepté par un NFA. L est accepté par un NFA ɛ. L est régulier: L = [[p]] pour un motif p.

32 Des expressions régulières aux automates: motifs de ase Étant donné un motif p, on peut construire un automate qui reconnaît [[p]]. Pour le motif : q 0 q 1 Pour le motif ɛ: q ɛ 0 q 1 Pour le motif c, c Σ: q c 0 q 1

33 Des expressions régulières aux automates: autres motifs Inductivement, si les motifs p 1 et p 2 correspondent à des automates, Pour le motif p 1.p 2 : p ɛ 1 p 2 Pour le motif p 1 p 2 : ɛ ɛ p 1 p 2 ɛ ɛ Pour le motif p 1 : ɛ ɛ ɛ p 1 ɛ

34 Des automates aux expressions régulières: un peu d algère Les identités (L 1 L 2 )L = L 1.L L 2.L et L.(L 1 L 2 ) = L.L 1 L.L 2 incitent à aussi noter + la disjonction: (L 1 + L 2 )L = L 1 L + L 2 L L(L 1 + L 2 ) = LL 1 + LL 2 Les identités L = L = L et {ɛ}l = L{ɛ} = L incitent à aussi noter 0 pour, et 1 pour {ɛ}: L + 0 = L 0 + L = L 1.L = L L.1 = L

35 Des automates aux expressions régulières: un peu d algère Passer d un automate à un langage... a 1 a 2 3 a... revient à résoudre un système d équations. X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax Cas général: X q est le langage constitué des mots w tel que ˆδ(q, w) F. X q = p K p,qx p + L q avec K p,q = {a Σ q δ(p, a)}, L q vaut 0 si q F, {1} sinon.

36 Des automates aux expressions régulières: résoudre des équations Si K ne contient pas le mot vide, l équation X = KX + L admet comme unique solution X = K L.

37 Des automates aux expressions régulières: résoudre des équations Si K ne contient pas le mot vide, l équation X = KX + L admet comme unique solution X = K L. Preuve: K L est ien solution, car K(K L) + L = (KK )L + L = (KK + 1)L = K L

38 Des automates aux expressions régulières: résoudre des équations On prouve par récurrence sur w que w K L implique w Y : Si w = 0, w L, car ɛ K. Donc w KY + L = Y. Si w = n + 1. Si w L, alors w KY + L = Y. Sinon, w = w w w, avec w K, w K, w L. Puisque w ɛ, w w n et par hypothèse de récurrence w w Y, et donc w = w w w KY KY + L = Y. Donc X Y. Si K ne contient pas le mot vide, l équation X = KX + L admet comme unique solution X = K L. Preuve: K L est ien solution, car K(K L) + L = (KK )L + L = (KK + 1)L = K L Soit Y une autre solution, prouvons que X = Y, pour X = K L.

39 Des automates aux expressions régulières: résoudre des équations Si K ne contient pas le mot vide, l équation X = KX + L admet comme unique solution X = K L. Et donc si K et L sont réguliers, X aussi.

40 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax 2 + 1

41 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax Remplaçons X 3 par ax

42 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = ax 2 + (ax 2 + 1) X 2 = ax 1 + (ax 2 + 1) + 1 X 3 = ax X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax Remplaçons X 3 par ax

43 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = (a + a)x 2 + X 2 = ax 1 + ax 2 + ( + 1) X 3 = ax X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax Remplaçons X 3 par ax Remplaçons X 1 par (a + a)x 2 +.

44 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax X 2 = a((a + a)x 2 + ) + ax 2 + ( + 1) X 1 = (a + a)x 2 + X 3 = ax Remplaçons X 3 par ax Remplaçons X 1 par (a + a)x 2 +.

45 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax X 2 = (aa + aa + a)x 2 + (a + + 1) X 1 = (a + a)x 2 + X 3 = ax Remplaçons X 3 par ax Remplaçons X 1 par (a + a)x 2 +. Résolvons l équation X 2 = (aa + aa + a)x 2 + (a + + 1).

46 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax X 2 = (aa + aa + a) (a + + 1) X 1 = (a + a)x 2 + X 3 = ax Remplaçons X 3 par ax Remplaçons X 1 par (a + a)x 2 +. Résolvons l équation X 2 = (aa + aa + a)x 2 + (a + + 1). Reportons.

47 Des automates aux expressions régulières: exemple a 1 a 2 3 a X 1 = ax 2 + X 3 X 2 = ax 1 + X X 3 = ax X 2 = (aa + aa + a) (a + + 1) X 1 = (a + a)(aa + aa + a) (a + + 1) + X 3 = a(aa + aa + a) (a + + 1) + 1 Remplaçons X 3 par ax Remplaçons X 1 par (a + a)x 2 +. Résolvons l équation X 2 = (aa + aa + a)x 2 + (a + + 1). Reportons. Le langage reconnu par l automate est donné par X 1, et donc vaut (a + a)(aa + aa + a) (a + + 1) +.

48 Aujourd hui Rappels Déterminisation Automates et expressions régulières Langages non-réguliers Propriétés de clôture Le mot de la fin

49 Le lemme de la pompe Pour tout langage régulier L, il existe un entier n tel que tout mot m de L de longueur m n se décompose en w = xyz avec y ɛ xy n et pour tout entier k, xy k z L.

50 Le lemme de la pompe Pour tout langage régulier L, il existe un entier n tel que tout mot m de L de longueur m n se décompose en w = xyz avec y ɛ xy n et pour tout entier k, xy k z L. Autrement dit, si m est dans L, on peut trouver un sous mot qui peut être répété un nomre aritraire de fois, sans changer l appartenance à L.

51 Pourquoi? I/II Soit L un langage régulier, et A un automate fini déterministe qui le reconnaît. Soit n le nomre d états de A. Soit m un mot du langage L avec m n. Considérons q i (m) l état de l automate après avoir lu les i premières lettres de m. Puisque m n, nécessairement on a du repasser au moins deux fois par le même état q (principe des tiroirs et des chaussettes/lemme des (trous de) pigeons).

52 Pourquoi? II/II Soient i < j tels que q i (m) = q j (m) = q. Soit x constitué des i premiers caractères de m: ˆδ(q 0, x) = q. Soit y constitué des j i caractères suivants de m: ˆδ(q 0, xy) = ˆδ(q, y) = q. Soit z constitué des caractères suivants de m: ˆδ(q 0, xyz) = ˆδ(q, z) F. Puisque ˆδ(q, y) = q, ˆδ(q, y k ) = q. On a donc ˆδ(q 0, xy k z) = ˆδ(q, y k z) = ˆδ(q, z) F.

53 Application Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier.

54 Application Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier. En effet

55 Application 33 Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier. En effet Soit n l entier donné par le lemme.

56 Application 33 Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons le mot w = a n n du langage.

57 Application 33 Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons le mot w = a n n du langage. Supposons w = xyz, avec y ɛ et xy n.

58 Application 33 Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons le mot w = a n n du langage. Supposons w = xyz, avec y ɛ et xy n. Puisque xy n, x et y ne sont constitués que de a.

59 Application 33 Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons le mot w = a n n du langage. Supposons w = xyz, avec y ɛ et xy n. Puisque xy n, x et y ne sont constitués que de a. Il existe un entier k tel que xy k z n est pas dans le langage.

60 Application 33 Le langage des mots sur Σ = {a, } qui contiennent autant de a que de n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons le mot w = a n n du langage. Supposons w = xyz, avec y ɛ et xy n. Puisque xy n, x et y ne sont constitués que de a. Il existe un entier k tel que xy k z n est pas dans le langage. Contradiction.

61 Autre application 34 Le langage {a n n n 0} n est pas régulier.

62 Autre application 34 Le langage {a n n n 0} n est pas régulier. En effet La même preuve (mot à mot) fonctionne.

63 Autre application Le langage {a n n est un entier premier} n est pas régulier.

64 Autre application Le langage {a n n est un entier premier} n est pas régulier. En effet

65 Autre application Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme.

66 Autre application Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2.

67 Autre application Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2. Le mot w = a p est dans le langage.

68 Autre application Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2. Le mot w = a p est dans le langage. Supposons w = xyz, avec y ɛ et xy n.

69 Autre application Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2. Le mot w = a p est dans le langage. Supposons w = xyz, avec y ɛ et xy n. Soit m = y.

70 Autre application Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2. Le mot w = a p est dans le langage. Supposons w = xyz, avec y ɛ et xy n. Soit m = y. On doit avoir xy p m z dans le langage, de longueur p m + (p m) m = (m + 1)(p m).

71 Autre application 35 Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2. Le mot w = a p est dans le langage. Supposons w = xyz, avec y ɛ et xy n. Soit m = y. On doit avoir xy p m z dans le langage, de longueur p m + (p m) m = (m + 1)(p m). Ce nomre n est pas premier, sauf si m + 1 = 1 ou p m = 1.

72 Autre application 35 Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2. Le mot w = a p est dans le langage. Supposons w = xyz, avec y ɛ et xy n. Soit m = y. On doit avoir xy p m z dans le langage, de longueur p m + (p m) m = (m + 1)(p m). Ce nomre n est pas premier, sauf si m + 1 = 1 ou p m = 1. Or m + 1 > 1 puisque m 0, et p m > 1 puique p n + 2.

73 Autre application 35 Le langage {a n n est un entier premier} n est pas régulier. En effet Soit n l entier donné par le lemme. Considérons p un nomre premier avec p n + 2. Le mot w = a p est dans le langage. Supposons w = xyz, avec y ɛ et xy n. Soit m = y. On doit avoir xy p m z dans le langage, de longueur p m + (p m) m = (m + 1)(p m). Ce nomre n est pas premier, sauf si m + 1 = 1 ou p m = 1. Or m + 1 > 1 puisque m 0, et p m > 1 puique p n + 2. Contradiction.

74 Autre application L ensemle des chaînes sur Σ = {(, )} ien parenthésées n est pas régulier. etc...

75 Aujourd hui Rappels Déterminisation Automates et expressions régulières Langages non-réguliers Propriétés de clôture Le mot de la fin

76 Propriétés de clôture 1. L union de deux langages réguliers est un langage régulier. 2. L étoile d un langage régulier est un langage régulier. 3. La concaténation de deux langages réguliers est un langage régulier. 4. Le complément d un langage régulier est un langage régulier. 5. L intersection de deux deux langages réguliers est un langage régulier. 6. La différence de deux langages réguliers est un langage régulier.

77 39 Preuve On se donne deux langages réguliers L 1 et L 2. L 1 correspond à un motif p 1, L 2 à un motif p 2. Alors: L 1 L 2 correspond au motif p 1 p 2.

78 39 Preuve On se donne deux langages réguliers L 1 et L 2. L 1 correspond à un motif p 1, L 2 à un motif p 2. Alors: L 1 L 2 correspond au motif p 1 p 2. L 1 au motif p 1

79 Preuve On se donne deux langages réguliers L 1 et L 2. L 1 correspond à un motif p 1, L 2 à un motif p 2. Alors: L 1 L 2 correspond au motif p 1 p 2. L 1 au motif p 1 L 1.L 2 au motif p 1.p 2

80 Preuve On se donne deux langages réguliers L 1 et L 2. L 1 correspond à un motif p 1, L 2 à un motif p 2. Alors: L 1 L 2 correspond au motif p 1 p 2. L 1 au motif p 1 L 1.L 2 au motif p 1.p 2 L 1 correspond à un automate fini déterministe (Q, Σ, δ, q 0, F ). Son complémentaire L c 1 à l automate fini déterministe (Q, Σ, δ, q 0, Q F ).

81 Preuve On se donne deux langages réguliers L 1 et L 2. L 1 correspond à un motif p 1, L 2 à un motif p 2. Alors: L 1 L 2 correspond au motif p 1 p 2. L 1 au motif p 1 L 1.L 2 au motif p 1.p 2 L 1 correspond à un automate fini déterministe (Q, Σ, δ, q 0, F ). Son complémentaire L c 1 à l automate fini déterministe (Q, Σ, δ, q 0, Q F ). L 1 L 2 s otient par les lois de Morgan (L 1 L 2 ) c = L c 1 L c 2

82 Preuve On se donne deux langages réguliers L 1 et L 2. L 1 correspond à un motif p 1, L 2 à un motif p 2. Alors: L 1 L 2 correspond au motif p 1 p 2. L 1 au motif p 1 L 1.L 2 au motif p 1.p 2 L 1 correspond à un automate fini déterministe (Q, Σ, δ, q 0, F ). Son complémentaire L c 1 à l automate fini déterministe (Q, Σ, δ, q 0, Q F ). L 1 L 2 s otient par les lois de Morgan L 1 L 2 s otient par L 1 L c 2. (L 1 L 2 ) c = L c 1 L c 2

83 Aujourd hui Rappels Déterminisation Automates et expressions régulières Langages non-réguliers Propriétés de clôture Le mot de la fin

84 Les points importants du cours ( INF 431) Programmer plus et mieux. Des structures de données dynamiques. Des algorithmes sur ces structures. Quelques considérations de complexité. Automates et langages.

85 La pale Tous les documents (poly, copie des transparents, notes) sont autorisés. Quand on vous demande d écrire du code: rarement plus de 15 lignes. Le poly est un sur-ensemle de ce que nous avons vu en amphis. Réviser aussi les TPs.

86 c est IMPORTANT. Le sondage

Théorie des Langages Formels Chapitre 5 : Automates minimaux

Théorie des Langages Formels Chapitre 5 : Automates minimaux Théorie des Langages Formels Chapitre 5 : Automates minimaux Florence Levé Florence.Leve@u-picardie.fr Année 2015-2016 1/29 Introduction Les algorithmes vus précédemment peuvent mener à des automates relativement

Plus en détail

Théorie des Langages

Théorie des Langages Théorie des Langages Automates Claude Moulin Université de Technologie de Compiègne Printemps 2013 Sommaire 1 Automate fini 2 Automate et langages réguliers 3 Automate à pile Automate fini déterministe

Plus en détail

Théorie des langages. Automates à pile. Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.

Théorie des langages. Automates à pile. Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes. Automates à pile Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.fr 1 / 62 Automates à pile Introduction Rappels sur les piles Automates à pile : définition Automates

Plus en détail

5. Equivalences d automates

5. Equivalences d automates 5. Equivalences d automates 5.1. Le problème du déterminisme 5.2. Différentes sortes d AEF 5.3. Déterminisation d un AEF 5.4. Déterminisation d un AEF avec ɛ-transitions 5.5. Minimisation d un AEF déterministe

Plus en détail

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée.

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée. A 2015 INFO. MP École des Ponts ParisTech, SUPAERO (ISAE), ENSTA ParisTech, Télécom ParisTech, Mines ParisTech, Mines de Saint-étienne, Mines Nancy, Télécom Bretagne, ENSAE ParisTech (filière MP), École

Plus en détail

Automates à états fnis Damien Nouvel

Automates à états fnis Damien Nouvel Automtes Automtes à étts fnis Automtes à étts fnis Pln Représenttion des utomtes (FSA) Défnition formelle (DFA) Équivlence DFA / NFA / ε-nfa Licence Informtique L1 Automtes 2 / 30 Automtes à étts fnis

Plus en détail

CHAPITRE 5 : ANALYSE LEXICALE

CHAPITRE 5 : ANALYSE LEXICALE CHAPITRE 5 : ANALYSE LEXICALE L analyse lexicale est un autre domaine fondamental d application des automates finis. Dans la plupart des langages de programmation, les unités lexicales (identificateurs,

Plus en détail

UNIVERSITE D ORLEANS SL01MA11, Groupes 1 et 5 Département de Mathématiques 2009-2010. N. El Hage Hassan S EXPRIMER EN MATHÉMATIQUES

UNIVERSITE D ORLEANS SL01MA11, Groupes 1 et 5 Département de Mathématiques 2009-2010. N. El Hage Hassan S EXPRIMER EN MATHÉMATIQUES UNIVERSITE D ORLEANS SL01MA11, Groupes 1 et 5 Département de Mathématiques 2009-2010 N. El Hage Hassan S EXPRIMER EN MATHÉMATIQUES 1 Les énoncés La plupart des phrases que l on rencontre dans un livre

Plus en détail

Formulaire Automates Sylvain Lombardy

Formulaire Automates Sylvain Lombardy Formulaire Automates Sylvain Lombardy Définition 1 Alphabet, mot, langage Un alphabet est un ensemble fini de symboles; chacun de ces symboles est appelé lettre. Un mot est une suite fini de lettres pris

Plus en détail

Fonctions homographiques

Fonctions homographiques Fonctions homographiques On donne ci-dessous deux définitions des fonctions homographiques, et on montre que ces deux définitions sont équivalentes. On décrit la courbe représentative d une fonction homographique.

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

Plus en détail

Arbres. Alphabet Σ = Σ 0 Σ k. Exemples

Arbres. Alphabet Σ = Σ 0 Σ k. Exemples Arbres Alphabet Σ = Σ 0 Σ k Σ i : alphabet fini de symboles de rang i (Σ i Σ j possible). Un arbre t de rang k est défini par un ensemble (fini) dom(t) {1,..., k} clos par préfixe (domaine de t) : si v,

Plus en détail

L2: cours I4c Langages et automates

L2: cours I4c Langages et automates L2: cours I4c Langages et automates Olivier Togni, LE2I (038039)3887 olivier.togni@u-bourgogne.fr Modifié le 31 mai 2007 Sommaire Utiles pour compilation, interprétation,... 1. Langages rationnels 2. Langages

Plus en détail

L équation. y = y x. Pierre Abbrugiati

L équation. y = y x. Pierre Abbrugiati { x L équation y = y x x < y Pierre Arugiati I Tale des matières 1 Introduction 1 1.1 Lemmes préliminaires........................ 1 2 Résolution dans N 2 3 3 Résolution dans Z 2 5 4 Résolutions dans Q

Plus en détail

et Automates de Büchi

et Automates de Büchi Cours 9: Propriétes ω-régulières et Automates de Büchi Francesco Belardinelli Laboratoire IBISC Remerciements à Alessio Lomuscio et Joost-Pieter Katoen 26 mars 2015 Cours 9 - Vue d Ensemble Motivation

Plus en détail

Polytechnique. Épreuve d Informatique 1998

Polytechnique. Épreuve d Informatique 1998 Polytechnique Épreuve d Informatique 1998 Corrigé rédigé par Martine Lannaud, Lycée Chaptal, Paris Pour toute remarque ou correction martine.lannaud@prepas.org Motifs et automates Question 1. Quelques

Plus en détail

Leçon 1: les entiers

Leçon 1: les entiers Leçon 1: les entiers L ensemble N des entiers naturels Compter, dresser des listes, classer et comparer des objets interviennent dans de multiples activités humaines. Les nombres entiers naturels sont

Plus en détail

Automate Fini Non-déterministe

Automate Fini Non-déterministe Automate Fini Non-déterministe Théorème de Kleene Systèmes Formels Master 1 ISIDIS Sébastien Verel verel@lisic.univ-littoral.fr http://www-lisic.univ-littoral.fr/~verel Université du Littoral Côte d Opale

Plus en détail

Un automate à états fini

Un automate à états fini Automates à états et langages Notion d automate Langage reconnu par un automate Automates non déterministes Expressions régulières et automates Limites des automates Notion d automate Objectif : définir

Plus en détail

Au menu. Cours 7: Classes Probabilistes. Application : Calcul de la médiane. Sous menu. Retours sur quelques algorithmes.

Au menu. Cours 7: Classes Probabilistes. Application : Calcul de la médiane. Sous menu. Retours sur quelques algorithmes. Au menu Cours 7: Classes Probabilistes Olivier Bournez bournez@lix.polytechnique.fr LIX, Ecole Polytechnique Retours sur quelques algorithmes Quelques résultats INF561 Algorithmes et Complexité 1 2 Sous

Plus en détail

Calculabilité Cours 2 : Machines de Turing

Calculabilité Cours 2 : Machines de Turing Calculabilité Cours 2 : Machines de Turing Introduction Un autre type de modèle de calcul Les fonctions récursives et les fonctions λ représentables définissent des modèles de calculs dans k N Nk N Nous

Plus en détail

TD 2 - Modèles de calcul

TD 2 - Modèles de calcul TD 2 - Modèles de calcul Remarques préliminaires Si ou désigne une relation binaire (de dérivation/transition suivant le contexte), on notera ou sa clôture transitive, comprendre la relation obenue en

Plus en détail

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 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étail

CHAPITRE 4 : BASES DE LEX

CHAPITRE 4 : BASES DE LEX CHAPITRE 4 : BASES DE LEX Analyse lexicale (rappel) L analyse lexicale consiste à déterminer le, «statut» de chaque mot, c est-à-dire l unité lexicale (ou token) qui lui correspond. Les unités lexicales

Plus en détail

Leçon 6. Savoir compter

Leçon 6. Savoir compter Leçon 6. Savoir compter Cette leçon est une introduction aux questions de dénombrements. Il s agit, d une part, de compter certains objets mathématiques (éléments, parties, applications,...) et, d autre

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 11 : Arbre couvrant Prétraitement Benjamin Wack 2015-2016 1 / 32 La dernière fois Rappels sur les graphes Problèmes classiques Algorithmes d optimisation

Plus en détail

Machines de Turing. Chapitre 14 14.1. DÉFINITION ET FONCTIONNEMENT

Machines de Turing. Chapitre 14 14.1. DÉFINITION ET FONCTIONNEMENT Chapitre 4 Machines de Turing Dans ce chapitre on présente un modèle de calcul introduit dans les années 3 par Turing, les machines de Turing. Ces machines formalisent la notion de calculabilité. La thèse

Plus en détail

Arithmétique. Préambule. 1. Division euclidienne et pgcd. Exo7. 1.1. Divisibilité et division euclidienne

Arithmétique. Préambule. 1. Division euclidienne et pgcd. Exo7. 1.1. Divisibilité et division euclidienne Exo7 Arithmétique Vidéo partie 1. Division euclidienne et pgcd Vidéo partie 2. Théorème de Bézout Vidéo partie 3. Nombres premiers Vidéo partie 4. Congruences Exercices Arithmétique dans Z Préambule Une

Plus en détail

Applications linéaires

Applications linéaires Bibliothèque d exercices Énoncés L1 Feuille n 18 Applications linéaires 1 Définition Exercice 1 Déterminer si les applications f i suivantes (de E i dans F i ) sont linéaires : f 1 : (x, y) R (x + y, x

Plus en détail

Chap. 2. Langages et automates

Chap. 2. Langages et automates Chapitre 2. Langages et automates 1. Quelques définitions et description d un langage. 2. Les expressions régulières. 3. Les automates fini déterministes et non-déterministes. 4. Construction automatique

Plus en détail

Exercices théoriques

Exercices théoriques École normale supérieure 2008-2009 Département d informatique Algorithmique et Programmation TD n 9 : Programmation Linéaire Avec Solutions Exercices théoriques Rappel : Dual d un programme linéaire cf.

Plus en détail

Les supports de cours suivants font référence au cours de Mr SOL et à son livre : "Accès à l'université" chez DUNOD

Les supports de cours suivants font référence au cours de Mr SOL et à son livre : Accès à l'université chez DUNOD Les supports de cours suivants font référence au cours de Mr SOL et à son livre : "Accès à l'université" chez DUNOD Les supports de cours ne sont pas complets, ils ne contiennent ni les démonstrations,

Plus en détail

Fondements de l informatique: Examen Durée: 3h

Fondements de l informatique: Examen Durée: 3h École polytechnique X2013 INF412 Fondements de l informatique Fondements de l informatique: Examen Durée: 3h Sujet proposé par Olivier Bournez Version 3 (corrigé) L énoncé comporte 4 parties (sections),

Plus en détail

Probabilités sur un univers fini

Probabilités sur un univers fini [http://mp.cpgedupuydelome.fr] édité le 10 août 2015 Enoncés 1 Proailités sur un univers fini Evènements et langage ensemliste A quelle condition sur (a,, c, d) ]0, 1[ 4 existe-t-il une proailité P sur

Plus en détail

Temps de transmission du document compressé

Temps de transmission du document compressé École de technologie supérieure INF-145 Travail pratique #3 Frédérick Henri Travail en équipe de 2 L algorithme de compression de LZW 1 Objectifs Retour sur les notions de pointeur, d enregistrement et

Plus en détail

Partiel INF242, 2009-2010

Partiel INF242, 2009-2010 Partiel INF242, 2009-2010 Stéphane Devismes Pascal Lafourcade Lundi 22 mars 2010 Total : 120 points Durée : 2h00 Documents autorisés : une feuille recto verso de notes personnelles format A4 Le arème des

Plus en détail

Licence de Sciences et Technologies. Fiche de cours 1 - Nombres réels.

Licence de Sciences et Technologies. Fiche de cours 1 - Nombres réels. Licence de Sciences et Technologies EM21 - Analyse Fiche de cours 1 - Nombres réels. On connaît les ensembles suivants, tous munis d une addition, d une multiplication, et d une relation d ordre compatibles

Plus en détail

Exo7. Topologie générale. Enoncés : M. Quéffelec Corrections : A. Bodin

Exo7. Topologie générale. Enoncés : M. Quéffelec Corrections : A. Bodin Enoncés : M. Quéffelec Corrections : A. Bodin Exo7 Topologie générale Exercice 1 1. Rappeler les définitions d une borne supérieure (inférieure) d un ensemble de nombres réels. Si A et B sont deux ensembles

Plus en détail

Automates. Lycée Louis-le-Grand Année 2003 2004. Automates. option informatique 1/74

Automates. Lycée Louis-le-Grand Année 2003 2004. Automates. option informatique 1/74 Lycée Louis-le-Grand Année 2003 2004 Automates option informatique 1/74 1 Sommaire notion d automate, leur intérêt et leurs usages ; calculs d un automate et langage reconnu ; déterminisme, comment s en

Plus en détail

LES FONCTIONS : GENERALITES ET VARIATIONS

LES FONCTIONS : GENERALITES ET VARIATIONS 1 sur 10 LES FONCTIONS : GENERALITES ET VARIATIONS Activité conseillée p42 n 1 : Évolution du climat Activité conseillée p22 n 1 : Évolution du climat p61 n 5 p74 n 82 p61 n 7 p43 n 19 p44 n 20 p44 n 21

Plus en détail

Systèmes linéaires. 1. Introduction aux systèmes d équations linéaires. Exo7. 1.1. Exemple : deux droites dans le plan

Systèmes linéaires. 1. Introduction aux systèmes d équations linéaires. Exo7. 1.1. Exemple : deux droites dans le plan Exo7 Systèmes linéaires Vidéo partie 1. Introduction aux systèmes d'équations linéaires Vidéo partie 2. Théorie des systèmes linéaires Vidéo partie 3. Résolution par la méthode du pivot de Gauss 1. Introduction

Plus en détail

MVA004 Automates, codes, graphes et matrices Cours n 6

MVA004 Automates, codes, graphes et matrices Cours n 6 MVA004 Automates, codes, graphes et matrices Cours n 6 cours n 5 1 Mots-clés Automate fini déterministe AFD Automate fini non déterministe AFN Déterminisation mots-clés 2 MVA004 Chapitre 22 Construction

Plus en détail

LOGIQUE COMBINATOIRE

LOGIQUE COMBINATOIRE MPI/PCI LOGIQUE COMBINATOIRE I. VARIABLE LOGIQUE. Rappel : structure d une chaine fonctionnelle d un système automatisé. Les ordres et les informations peuvent être : Analogique (par exemple une tension

Plus en détail

Base : une axiomatique

Base : une axiomatique Autour des groupes de réflexions Master 2 Mathématiques fondamentales Cours : Michel Broué Université Paris VII Denis Diderot TD : Vincent Beck Année 2005 2006 Base : une axiomatique a) D après (i), on

Plus en détail

Automates & Langages

Automates & Langages Automates & Langages Frédéric Olive 1 2010 / 2011 1. LIF/CMI, 39 rue joliot Curie, 13453 Marseille - 04 13 55 13 16 - frederic.olive@lif.univ-mrs.fr Table des matières Introduction 5 1 Langages réguliers

Plus en détail

Exo7. Applications linéaires. 1 Définition. 2 Image et noyau. Exercice 1 Déterminer si les applications f i suivantes sont linéaires :

Exo7. Applications linéaires. 1 Définition. 2 Image et noyau. Exercice 1 Déterminer si les applications f i suivantes sont linéaires : Exo7 Applications linéaires 1 Définition Exercice 1 Déterminer si les applications f i suivantes sont linéaires : f 1 : R R f 1 x,y = x + y,x y f : R R f x,y,z = xy,x,y f : R R f x,y,z = x + y + z,y z,x

Plus en détail

Langages hors-contexte

Langages hors-contexte Langages hors-contexte Au-delà des langages réguliers Les langages hors-contexte (angl. Context-Free Languages, CFL) ont de nomreuses applications dans l étude des langages naturels, en compilation (syntaxe

Plus en détail

Machine de Turing. Informatique II Algorithmique 1

Machine de Turing. Informatique II Algorithmique 1 Machine de Turing Nous avons vu qu un programme peut être considéré comme la décomposition de la tâche à réaliser en une séquence d instructions élémentaires (manipulant des données élémentaires) compréhensibles

Plus en détail

1 Définition et premières propriétés des congruences

1 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étail

Les mots de Sturm. Fathi BEN ARIBI 20 décembre 2008

Les mots de Sturm. Fathi BEN ARIBI 20 décembre 2008 Les mots de Sturm Fathi BEN ARIBI 20 décembre 2008 1 Objectifs Dans cette présentation, nous donnerons quelques résultats de combinatoire des mots. Avant tout, il est nécessaire d introduire quelques notations

Plus en détail

Chapitre 2 Le problème de l unicité des solutions

Chapitre 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étail

Solution - TD Feuille 2 - Automates finis et expressions rationnelles

Solution - TD Feuille 2 - Automates finis et expressions rationnelles Solution - TD Feuille 2 - Automtes finis et expressions rtionnelles Informtique Théorique 2 - Unité JINPW Licence 3 - Université Bordeux Solution de l exercice : Pour tout l exercice, on note A = {, }.

Plus en détail

Vidéo partie 1. Logique Vidéo partie 2. Raisonnements Exercices Logique, ensembles, raisonnements

Vidéo partie 1. Logique Vidéo partie 2. Raisonnements Exercices Logique, ensembles, raisonnements Exo7 Logique et raisonnements Vidéo partie 1. Logique Vidéo partie 2. Raisonnements Exercices Logique, ensembles, raisonnements Quelques motivations Il est important d avoir un langage rigoureux. La langue

Plus en détail

CH.6 Propriétés des langages non contextuels

CH.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étail

TOPOLOGIE DE LA DROITE REELLE

TOPOLOGIE DE LA DROITE REELLE TOPOLOGIE DE LA DROITE REELLE P. Pansu 16 mai 2005 1 Qu est-ce que la topologie? C est l étude des propriétés des objets qui sont conservées par déformation continue. Belle phrase, mais qui nécessite d

Plus en détail

Automates et langages: quelques algorithmes

Automates et langages: quelques algorithmes Automtes et lngges: quelques lgorithmes Eugene Asrin Sddek Benslem Avertissement Dns l étt ctuel ce document est rchi-sec et peut servir seulement d un ide-mémoire. Pour comprendre les lgorithmes ci-dessous

Plus en détail

Points fixes de fonctions à domaine fini

Points fixes de fonctions à domaine fini ÉCOLE POLYTECHNIQUE ÉCOLE NORMALE SUPÉRIEURE DE CACHAN ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES CONCOURS D ADMISSION 2013 FILIÈRE MP HORS SPÉCIALITÉ INFO FILIÈRE PC COMPOSITION D INFORMATIQUE

Plus en détail

Démonstrations. Chapitre 4. 4.1 Introduction

Démonstrations. Chapitre 4. 4.1 Introduction Chapitre 4 Démonstrations L objectif de ce chapitre est de commencer à aborder la question fondamentale suivante : qu est-ce qu une démonstration? Pour cela, plus précisément, on va se focaliser dans ce

Plus en détail

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application 1 Ordinateur Un

Plus en détail

Table des matières. 3 Suites de nombres réels 29. 3.2 Limites... 30

Table des matières. 3 Suites de nombres réels 29. 3.2 Limites... 30 Table des matières 1 Généralités 3 1.1 Un peu de logique................................. 3 1.1.1 Vocabulaire................................ 3 1.1.2 Opérations logiques............................ 4 1.1.3

Plus en détail

Image d un intervalle par une fonction continue

Image d un intervalle par une fonction continue DOCUMENT 27 Image d un intervalle par une fonction continue La continuité d une fonction en un point est une propriété locale : une fonction est continue en un point x 0 si et seulement si sa restriction

Plus en détail

Réalisabilité et extraction de programmes

Réalisabilité et extraction de programmes Mercredi 9 mars 2005 Extraction de programme: qu'est-ce que c'est? Extraire à partir d'une preuve un entier x N tel que A(x). π x N A(x) (un témoin) (En fait, on n'extrait pas un entier, mais un programme

Plus en détail

Marc Chemillier Master M2 Atiam (Ircam), 2011-2012

Marc Chemillier Master M2 Atiam (Ircam), 2011-2012 MMIM Modèles mthémtiques en informtique musicle Mrc Chemillier Mster M2 Atim (Ircm), 2011-2012 Notions théoriques sur les lngges formels - Définitions générles o Mots, lngges o Monoïdes - Notion d utomte

Plus en détail

Épreuve orale d Informatique Fondamentale

Épreuve orale d Informatique Fondamentale Épreuve orale d Informatique Fondamentale Patrick Baillot, Nicolas Ollinger, Alexis Saurin ULC MPI 2013 Résumé Ce document consiste en une sélection, à titre d exemples, de 3 sujets proposés à l épreuve

Plus en détail

Congruences et théorème chinois des restes

Congruences et théorème chinois des restes Congruences et théorème chinois des restes Michel Van Caneghem Février 2003 Turing : des codes secrets aux machines universelles #2 c 2003 MVC Les congruences Développé au début du 19ème siècle par Carl

Plus en détail

Cours3. Applications continues et homéomorphismes. 1 Rappel sur les images réciproques

Cours3. Applications continues et homéomorphismes. 1 Rappel sur les images réciproques Université de Provence Topologie 2 Cours3. Applications continues et homéomorphismes 1 Rappel sur les images réciproques Soit une application f d un ensemble X vers un ensemble Y et soit une partie P de

Plus en détail

Manuel d utilisation 26 juin 2011. 1 Tâche à effectuer : écrire un algorithme 2

Manuel 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étail

Fondamentaux pour les Mathématiques et l Informatique :

Fondamentaux pour les Mathématiques et l Informatique : Université Bordeaux 1 Licence de Sciences, Technologies, Santé Mathématiques, Informatique, Sciences de la Matière et Ingénierie M1MI1002 Fondamentaux pour les Mathématiques et l Informatique Fondamentaux

Plus en détail

DOCM 2013 http://docm.math.ca/ Solutions officielles. 1 2 10 + 1 2 9 + 1 2 8 = n 2 10.

DOCM 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étail

Extensions finies du corps F q (t) et automates finis

Extensions finies du corps F q (t) et automates finis Extensions finies du corps F q (t) et automates finis Christophe Rose Mémoire de M2 rédigé sous la direction de Federico Pellarin M2 «Algèbre et Géométrie» de l université Paris 6 Pierre et Marie Curie

Plus en détail

Cours 1: Introduction à l algorithmique

Cours 1: Introduction à l algorithmique 1 Cours 1: Introduction à l algorithmique Olivier Bournez bournez@lix.polytechnique.fr LIX, Ecole Polytechnique 2011-12 Algorithmique 2 Aujourd hui Calcul de x n Maximum Complexité d un problème Problème

Plus en détail

Un alphabet Un ensemble fini non vide s'appelle un alphabet. Langages réguliers et automates. Un mot. Un langage. {a,b} non. A.

Un alphabet Un ensemble fini non vide s'appelle un alphabet. Langages réguliers et automates. Un mot. Un langage. {a,b} non. A. Langages réguliers et automates finis A. Maurer Mars 09 Un alphabet Un ensemble fini non vide s'appelle un alphabet Ensemble Σ {a,b} {a,b,a,b} L'ensembledes nombres naturels pairs Alphabet? oui non oui

Plus en détail

Chapitre 3. Définitions récursives et induction structurelle

Chapitre 3. Définitions récursives et induction structurelle Chapitre 3 Définitions récursives et induction structurelle 114 Plan 1. Définitions récursives 2. Induction structurelle 3. Exemples Arbres Naturels Expressions arithmétiques Lectures conseillées : I MCS

Plus en détail

VI- Des transistors aux portes logiques. Conception de circuits

VI- Des transistors aux portes logiques. Conception de circuits 1 VI- Des transistors aux portes logiques. Conception de circuits Nous savons que l ordinateur traite uniquement des instructions écrites en binaire avec des 0 et des 1. Nous savons aussi qu il est formé

Plus en détail

Université Bordeaux 1 Master d informatique UE Bases de Données Sujet et correction de l examen du 27 mai 2004 8h00 9h30 (sans documents)

Université Bordeaux 1 Master d informatique UE Bases de Données Sujet et correction de l examen du 27 mai 2004 8h00 9h30 (sans documents) Numéro d anonymat: 1 Université Bordeaux 1 Master d informatique UE Bases de Données Sujet et correction de l examen du 27 mai 2004 8h00 9h30 (sans documents) Sauf mention contraire en caractères gras,

Plus en détail

CH.8 Décidabilité. Propriétés des langages récursifs : Fermés par complémentation, union et intersection. oui. non. oui M 1. non. oui M 2.

CH.8 Décidabilité. Propriétés des langages récursifs : Fermés par complémentation, union et intersection. oui. non. oui M 1. non. oui M 2. CH.8 Décidabilité 8.1 Les langages récursifs 8.2 La machine de Turing universelle 8.3 Des problèmes de langages indécidables 8.4 D'autres problèmes indécidables Automates ch8 1 8.1 Les langages récursifs

Plus en détail

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction

Bien lire l énoncé 2 fois avant de continuer - Méthodes et/ou Explications Réponses. Antécédents d un nombre par une fonction Antécédents d un nombre par une fonction 1) Par lecture graphique Méthode / Explications : Pour déterminer le ou les antécédents d un nombre a donné, on trace la droite (d) d équation. On lit les abscisses

Plus en détail

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France. La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of

Plus en détail

De 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

De 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étail

2.1 Comment implanter en C un reconnaisseur de mots? Aut2 q 0 q 1

2.1 Comment implanter en C un reconnaisseur de mots? Aut2 q 0 q 1 Lngges Automtes Non-déterminisme Grmmires Attiuées et Génértives Expressions régulières Correction Prtielle de Progrmmes Ceci n'est ps un cours de Lngge C++ 2.1 Comment implnter en C un reconnisseur de

Plus en détail

CH.1 Automates finis

CH.1 Automates finis CH.1 Automtes finis 1.1 Les utomtes finis déterministes 1.2 Les utomtes finis non déterministes 1. Les utomtes vec -trnsitions 1.4 Les expressions régulières 1.5 L'équivlence des modèles Automtes ch1 1

Plus en détail

TP Compilation Analyse lexicale

TP Compilation Analyse lexicale TP Compilation Analyse lexicale Eric Ramat ramat@lisic.univ-littoral.fr 9 mai 2014 Durée : 6 heures 1 Introduction Le but de cet TP est de vous donner les bases nécessaires afin de pouvoir écrire votre

Plus en détail

Support du cours de Probabilités IUT d Orléans, Département d informatique

Support du cours de Probabilités IUT d Orléans, Département d informatique Support du cours de Probabilités IUT d Orléans, Département d informatique Pierre Andreoletti IUT d Orléans Laboratoire MAPMO (Bât. de Mathématiques UFR Sciences) - Bureau 126 email: pierre.andreoletti@univ-orleans.fr

Plus en détail

iii. Soit N, on a : = 1, donc il existe N tel que =, à savoir = 1, ce qui montre que : est un diviseur de. Remarquons que l on exige 0 puisque on ne p

iii. Soit N, on a : = 1, donc il existe N tel que =, à savoir = 1, ce qui montre que : est un diviseur de. Remarquons que l on exige 0 puisque on ne p Troisième DEMONSTRATIONS Arithmétique Séquence 1 : division euclidienne Définition du quotient et du reste d une division euclidienne Soient et deux nomres entiers naturels, 0. Poser la division euclidienne

Plus en détail

Computix. Dans la colonne du 10, B choisit le 7 inférieur A 10 B 7

Computix. Dans la colonne du 10, B choisit le 7 inférieur A 10 B 7 Computix Matériel : grilles carrées comportant un nombre impair de cases. Quelques-unes sont données en annexe ; mais on peut aussi les construire soi-même, ou les faire construire par les élèves. Elles

Plus en détail

Continuité d une fonction de plusieurs variables

Continuité d une fonction de plusieurs variables Chapitre 2 Continuité d une fonction de plusieurs variables Maintenant qu on a défini la notion de limite pour des suites dans R n, la notion de continuité s étend sans problème à des fonctions de plusieurs

Plus en détail

Expressions rationnelles, automates, analyse lexicale

Expressions rationnelles, automates, analyse lexicale Chapitre 2 Expressions rationnelles, automates, analyse lexicale L analyse lexicale est la première phase d un compilateur ou d un interprète : elle consiste à identifier et à catégoriser les différents

Plus en détail

Cahier de vacances - Préparation à la Première S

Cahier de vacances - Préparation à la Première S Cahier de vacances - Préparation à la Première S Ce cahier est destiné à vous permettre d aborder le plus sereinement possible la classe de Première S. Je vous conseille de le travailler pendant les 0

Plus en détail

Introduction aux inégalités

Introduction aux inégalités Introduction aux inégalités -cours- Razvan Barbulescu ENS, 8 février 0 Inégalité des moyennes Faisons d abord la liste des propritétés simples des inégalités: a a et b b a + b a + b ; s 0 et a a sa sa

Plus en détail

Programmation en Python - Cours 2 : Premiers programmes

Programmation en Python - Cours 2 : Premiers programmes Programmation en Python - Cours 2 : Premiers programmes 2013/2014 Diverses utilisations de python Utilisation en mode interactif Ecriture d un programme python Saisie de données par l utilisateur : input(),

Plus en détail

Modèles de calculs. Chapitre 7

Modèles de calculs. Chapitre 7 Chapitre 7 Modèles de calculs Nous avons utilisé jusque-là à de multiples reprises la notion d algorithme, sans en avoir donné une définition formelle. Intuitivement, on peut se dire qu un algorithme est

Plus en détail

INF-130 Travail Pratique #2

INF-130 Travail Pratique #2 École de technologie supérieure INF-30 Travail Pratique #2 Travail individuel Tracé d un métro Francis Bourdeau, Frédérick Henri et Patrick Salois Remise à la 0 e semaine. Objectifs - Amener l étudiant

Plus en détail

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes

Plus en détail

Chapitre 2. Eléments pour comprendre un énoncé

Chapitre 2. Eléments pour comprendre un énoncé Chapitre 2 Eléments pour comprendre un énoncé Ce chapitre est consacré à la compréhension d un énoncé. Pour démontrer un énoncé donné, il faut se reporter au chapitre suivant. Les tables de vérité données

Plus en détail

Option Informatique Arbres binaires équilibrés

Option Informatique Arbres binaires équilibrés Option Informatique Arbres binaires équilibrés Sujet novembre 2 Partie II : Algorithmique et programmation en CaML Cette partie doit être traitée par les étudiants qui ont utilisé le langage CaML dans

Plus en détail

Cours fonctions, expressions algébriques

Cours fonctions, expressions algébriques I. Expressions algébriques, équations a) Développement factorisation Développer Développer un produit, c est l écrire sous forme d une somme. Réduire une somme, c est l écrire avec le moins de termes possibles.

Plus en détail

Automates et circuits : Automates

Automates et circuits : Automates et circuits : Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr Aix-Marseille Université Représenter un système par un automate But de ce cours Etre capable de représenter un système ou une machine

Plus en détail

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Exercices - Polynômes : corrigé. Opérations sur les polynômes Opérations sur les polynômes Exercice 1 - Carré - L1/Math Sup - Si P = Q est le carré d un polynôme, alors Q est nécessairement de degré, et son coefficient dominant est égal à 1. On peut donc écrire Q(X)

Plus en détail

Théorie des ensembles

Théorie des ensembles Théorie des ensembles Cours de licence d informatique Saint-Etienne 2002/2003 Bruno Deschamps 2 Contents 1 Eléments de théorie des ensembles 3 1.1 Introduction au calcul propositionnel..................

Plus en détail

Introduction à l étude des Corps Finis

Introduction à l étude des Corps Finis Introduction à l étude des Corps Finis Robert Rolland (Résumé) 1 Introduction La structure de corps fini intervient dans divers domaines des mathématiques, en particulier dans la théorie de Galois sur

Plus en détail