Transducteurs d arbres et (peut-être un peu) apprentissage

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

Download "Transducteurs d arbres et (peut-être un peu) apprentissage"

Transcription

1 Transducteurs d arbres et (peut-être un peu) apprentissage A. Lemay 2006

2 Taxonomie des transducteurs d arbres Syntax Directed translation (Irons 60) Attributed Tree Transducers (Knuth 68, Fülop 81) Rational Tree Transductions à TATA (Tatcher Wright 70) Relabeling Tree Transducers (Engelfriet 75) Macro Tree Transducers (Engelfriet 80,...) Tree Walking Transducers (Aho/Ullman 80) Pebble Tree Transducers (Milo, Suciu, Vianu 2000) MSO Tree Transducers (Engelfriet 91, Courcelle 92) + variantes diverses (Pebble Macro Tree Transducer,...)

3 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

4 Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

5 SD Transducers Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

6 SD Transducers SD Transducers : définition Définition (informelle) basée sur une grammaire context-free ( Deux grammaires Context-Free en parallèle) Règles de la forme : X ay (1) Y (2) cz {Y (1) dezy (2) } tous les non-terminaux se retrouvent dans la production pas de contraintes sur les terminaux la production se fait en déroulant le parse. Provient des travaux sur les compilateurs (origine ALGOL 60)

7 SD Transducers SD Transducers : exemple Passage infixe vers Suffixe S E {E} T T P {TP } E E + T {ET +} T T /P {TP/} E E T {ET } T P {P} E T {T } P i P {ip }

8 SD Transducers SD Transducers : Conclusion Conclusion Intérêt historique (vient des la compilation d ALGOL 60) Sous-famille de transductions rationnels

9 Attributed Tree Transducer Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

10 Attributed Tree Transducer Attributed Grammars : Principes Exemple : parcours dans l espace path ε step.path step N S O E Idée : associer des attributs (propriétés) aux non terminaux d une grammaire context-free Exemple : quelle est la longueur du chemin en nombre de pas? quel est le chemin parcouru sur la coordonnée x ou y?

11 Attributed Tree Transducer Attributed Grammar : Exemple 1 path.pos x : Coordonnée en x d un chemin step.dep x : Coordonnée en x d un pas Grammaire Grammaire Règle sémantique path ε path.pos x = 0 path step.path path.dep x = step.dep x + path.pos x step N S step.dep x = 0 step O step.dep x = 1 step E step.dep x = 1

12 Attributed Tree Transducer Attributed Grammar : Exemple 1 Chemin O. N. E. : path 0 step 1 path 1 O step 0 path 1 N step 1 path 0 E ε 0

13 Attributed Tree Transducer Attributed Grammar : Exemple 1 Chemin O. N. E. : path 0 + step 1 path O step 0 path N step 1 path E ε 0 Le calcul des attributs peut se voir comme une transformation

14 Attributed Tree Transducer Parenthèse ATT et requête Requête ATT : ATT dont l un des attributs est booléen même expressivité que MSO (Bloem Engelfriet 96)

15 Attributed Tree Transducer Attributed Grammars : attributs Deux types d attributs : attributs Synthétisés (Syn ) : valeur dépendante des descendants (ici Pos x et Dep x ) attributs hérités (Inh ) : valeur dépendante des parents ou des frères (du contexte).

16 Attributed Tree Transducer Attributed Grammar : exemple 2 Grammaire Infixe vers Suffixe Syn = {a S } Inh = {a I } Grammaire Règle sémantique S T S.a S = T.a S T.a I = ε T 1 T.a S = 1(T.a I ) T T 1 + T 2 T.a S = T 1.a S T 1.a I = T 2.a S T 2.a I = +(T.a I )

17 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A + B 1 C A.a S = B.a S, B.a I = C.a S, C.a I = +(A.a I ) 1 D 1 E

18 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A + B 1 C A.a S = D.a S, B.a I = C.a S, C.a I = +() 1 D 1 E

19 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A + B 1 D 1 E A.a S = D.a S, B.a I = C.a S, C.a I = +() 1 B.a S = D.a S, D.a I = E.a S, C E.a I = +(B.a I )

20 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A + B 1 D 1 E A.a S = D.a S, B.a I = C.a S, C.a I = +() 1 B.a S = D.a S, D.a I = E.a S, C E.a I = +(C.a S )

21 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A + B 1 D 1 E A.a S = D.a S, B.a I = C.a S, C.a I = +() 1 B.a S = D.a S, D.a I = E.a S, C E.a I = +(C.a S )

22 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = C.a S, C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 C E.a I = +(C.a S ) C.a S = 1(C.a I ) 1 D 1 E

23 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = C.a S, C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 C E.a I = +(C.a S ) C.a S = 1(+()) 1 D 1 E

24 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = 1(+()), C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 C E.a I = +(C.a S ) C.a S = 1(+()) 1 D 1 E

25 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = 1(+()), C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 C E.a I = +(C.a S ) C.a S = 1(+()) 1 D 1 E

26 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = 1(+()), C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 C E.a I = +(1(+())) C.a S = 1(+()) 1 D 1 E

27 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = 1(+()), C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 E.a I = +(1(+())) C C.a S = 1(+()) D.a S = 1(D.a I ) 1 D 1 E

28 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = 1(+()), C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 E.a I = +(1(+())) C C.a S = 1(+()) D.a S = 1(E.a S ) 1 D 1 E

29 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = 1(+()), C.a I = +() B.a S = D.a S, D.a I = E.a S, + B 1 E.a I = +(1(+())) C C.a S = 1(+()) D.a S = 1(E.a S ) 1 D 1 E

30 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = D.a S, B.a I = 1(+()), C.a I = +() B.a S = 1(E.a S ), D.a I = E.a S, + B 1 E.a I = +(1(+())) C C.a S = 1(+()) D.a S = 1(E.a S ) 1 D 1 E

31 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = 1(E.a S ), B.a I = 1(+()), C.a I = +() B.a S = 1(E.a S ), D.a I = E.a S, + B 1 E.a I = +(1(+())) C C.a S = 1(+()) D.a S = 1(E.a S ) 1 D 1 E

32 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = 1(E.a S ), B.a I = 1(+()), C.a I = +() B.a S = 1(E.a S ), D.a I = E.a S, + B 1 C E.a I = +(1(+())) C.a S = 1(+()) D.a S = 1(E.a S ) 1 D 1 E E.a S = 1(E.a I )

33 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = 1(E.a S ), B.a I = 1(+()), C.a I = +() B.a S = 1(E.a S ), D.a I = E.a S, + B 1 C E.a I = +(1(+())) C.a S = 1(+()) D.a S = 1(E.a S ) 1 D 1 E E.a S = 1(+(1(+())))

34 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = 1(E.a S ), B.a I = 1(+()), C.a I = +() B.a S = 1(E.a S ), D.a I = E.a S, + B 1 C E.a I = +(1(+())) C.a S = 1(+()) D.a S = 1(1(+(1(+())))) 1 D 1 E E.a S = 1(+(1(+())))

35 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = 1(E.a S ), B.a I = 1(+()), C.a I = +() B.a S = 1(1(+(1(+())))), D.a I = E.a S, + B 1 C E.a I = +(1(+())) C.a S = 1(+()) D.a S = 1(1(+(1(+())))) 1 D 1 E E.a S = 1(+(1(+())))

36 Attributed Tree Transducer Attributed Grammar : exemple 2 Règles S T S.a S = T.a S T T 1 + T 2 T.a S = T 1.a S T.a I = ε T 1.a I = T 2.a S T 1 T.a S = 1(T.a I ) T 2.a I = +(T.a I ) Exemple : (1 + 1) + 1 en A A.a S = 1(1(+(1(+())))), B.a I = 1(+()), C.a I = +() B.a S = 1(1(+(1(+())))), D.a I = E.a S, + B 1 C E.a I = +(1(+())) C.a S = 1(+()) D.a S = 1(1(+(1(+())))) 1 D 1 E E.a S = 1(+(1(+())))

37 Attributed Tree Transducer ATT (1) M = Syn, Inh, Σ,, a 0,, R Idée : Syn : attributs synthétisées (par le bas) Inh : attributs hérités (par le haut) a 0 : attribut initial ( Syn ) : symbole initial R : règles les transformations sont des attributs des noeuds l arbre de sortie est un attribut de la racine Syn permet une transformation ascendante Inh permet une transformation descendante Note : pas d états

38 Attributed Tree Transducer ATT (2) Définition M = Syn, Inh, Σ,, a 0,, R Règles de la forme : σ a(π) ν pour a Syn, σ Σ { }, ν RHS { } σ b(π i ) ν pour b Inh, σ Σ { }, ν RHS { } RHS (Right Hand Side) défini sur Syn Inh {π, π 1,..., π k } : a Syn : a(π i ) RHS (l attribut a du i-ème fils) b Inh : b(π) RHS (l attribut b du père) σ : σ(ν 1,..., ν k ) RHS avec ν i RHS

39 Attributed Tree Transducer ATT : exemple Passage notation infixe vers suffixe Syn = a S, Inh = a I Grammaire ATT S T S.a S = T.a S a S (π) a S (π 1 ) T.a I = ε a I (π 1 ) end T 1 T.a S = 1(T.a I ) a S (π) 1(a I (π)) T T 1 + T 2 T.a S = T 1.a S a S (π) a S (π 1 ) T 1.a I = T 2.a S a I (π 1 ) a S (π 2 ) T 2.a I = +, T.a I + a I (π 2 ) +(a I (π)) 1 + +

40 Attributed Tree Transducer ATT : Conclusion Attributed Tree Transducer basé sur les attributed grammars : grammaires CFG avec propriété sur les non-terminaux. l arbre de sortie est un attribut particulier (parmi d autres). Note ATT top-down : sans attributs hérités. ATT top-down ATT n-att (n+1)-att Apprentissage : improbable

41 MSO Tree transducers Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

42 MSO Tree transducers MSO dans les arbres formules atomiques : label σ (x) edge(x, y) x X leaf (x) root(x) MSO1 formules MSO avec une variable libre définit des propriétés sur les noeuds utile pour les requêtes unaires Exemple : Φ(x) = {lab f (x) x, edge(y, x), leaf (x)} Les noeuds étiquetés f dont l un des fils est une feuille. MSO2 Deux variables libres Φ(x, y) : définit des relations entre deux noeuds

43 MSO Tree transducers MSO Graph Transducers Définit une fonction partielle τ M : g = (E, V ) h = (E, V ) Definition (Courcelle 94) M = Copy, Φ, Ψ n, Ψ a avec : Copy : l ensemble de copie Φ : formule MSO1 sur Σ (le domaine) Ψ n c,σ : formule MSO1 (formule des noeuds) dépendante de c Copy et σ Ψ a c,c : formule MSO2 (formule des arcs) dépendante de c, c Copy

44 MSO Tree transducers MSO Graph Transducers Définit une fonction partielle τ M : g = (E, V ) h = (E, V ) défini si g Φ E = {(c, u) c Copy, u V, ψc,σ(u)} n V = {((c, u), (c, u )) c, c Copy, u V, ψc,c a (u, u )} Idées Φ est le domaine de la fonction Copy détermine le type des noeuds de h ψ n c,σ définit quels sont les noeuds de g copiés de type c et relabellés par σ ψ a c,c définit quels sont les relations entre noeuds de h nécessaires pour créer une arête dans h

45 MSO Tree transducers MSO Tree Transducers MSO Tree Transducer MSO Tree Transducer = MSO Graph Transducer sur les arbres (en entrées/sortie)

46 MSO Tree transducers MSO-Tree Transducer : Exemple HTML RACINE BODY ID ID Id TABLE... TEXTE TEXTE... TR TR TR TD TD TEXTE TEXTE Copy = {racine, id, nom, prenom}

47 MSO Tree transducers MSO-Tree Transducer : Exemple HTML BODY TABLE TR TR TR TD TEXTE TD TEXTE ID... RACINE ID TEXTE TEXTE Id... Ψ n racine,racine (x) = (root(x)) Ψ n id,id (x) = label TR(x) Ψ n nom,texte (x) = (fils d un TD premier fils d un TR) (x) = (fils d un TD second fils d un TR) Ψ n prenom,texte

48 MSO Tree transducers MSO-Tree Transducer : Exemple HTML BODY TABLE TR TR TR TD TEXTE TD TEXTE ID... RACINE ID TEXTE TEXTE Id... Ψ a racine,id Ψ a id,nom Ψ a id,prenom (x, y) = (true) (x, y) = x est le petit-fils de y (x, y) = x est le petit-fils de y

49 Transductions rationnelles Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

50 Transductions rationnelles Automate d Arbres : Notations M = Q, Σ, F, δ Q : ensemble fini d états Σ : alphabet ranked (d entrée) F : ensemble des états finaux (ou initiaux) δ : règles de la forme a q(a) f (q 1 (x 1 ),..., q n (x n )) q(f (x 1,..., x n )) (pour un ascendant) Pour les transductions : est l alphabet de sortie

51 Transductions rationnelles Relabeling Tree Transducers Transducteurs qui changent l étiquetage de l arbre de Σ vers. Équivalent aux transducteurs shape-preserving [Fulop & Gazdag 03 / Gazdag 04] Formes des règles a q(b) f (q 1 (x 1 ),..., q n (x n )) q(g(x 1,..., x k )) (souvent noté (f (q 1,..., q n )) q(g)) Node Selecting Tree Transducers : Relabeling fonctionnels avec Bool comme alphabet de sortie. Permettent de représenter les requêtes monadiques régulières (MSO, etc...)

52 Transductions rationnelles Relabeling : Exemple a q 1 (1) a q 2 (0) f (q 1, q 1 ) q 2 (0) f (q 2, q 2 ) q 1 (0) Final = {q 2 } f a f a a f a =

53 Transductions rationnelles Relabeling : Conclusion Avantages Permettent de représenter les requêtes monadiques régulières (via les NSTT) Apprenables [ICGI 04] Limitations Aucun changement de structure!

54 Transductions rationnelles Transducteurs d arbres à TATA Formes des règles a q(u) f (q 1 (x 1 ),..., q n (x n )) q(u) (noté (f (q 1,..., q n )) q(u)) avec u T X Peuvent être déterministes top-down ou bottom-up (en fonction de l automate d arbres support)

55 Transductions rationnelles Tree Transducers : Exemple D(+(x 1, x 2 )) +(D(x 1 ), D(x 2 )) D( (x 1, x 2 )) +( (D(x 1 ), I(x 2 )), (I(x 1 ), D(x 2 ))) I( (x 1, x 2 )) (I(x 1 ), I(x 2 )) D(sin(x 1 )) (cos(i(x 1 )), D(x 1 )) I(a) a I(y) y D(a) 0 D(y) 1... a D sin y Calcul de la dérivée d une fonction Alphabet : 0, 1, a, y, +,, sin, cos États : D (dérive), I (identité)

56 Transductions rationnelles Tree Transducers : Exemple D(+(x 1, x 2 )) +(D(x 1 ), D(x 2 )) D( (x 1, x 2 )) +( (D(x 1 ), I(x 2 )), (I(x 1 ), D(x 2 ))) I( (x 1, x 2 )) (I(x 1 ), I(x 2 )) D(sin(x 1 )) (cos(i(x 1 )), D(x 1 )) I(a) a I(y) y D(a) 0 D(y) 1... a cos I a y D y Calcul de la dérivée d une fonction Alphabet : 0, 1, a, y, +,, sin, cos États : D (dérive), I (identité)

57 Transductions rationnelles Tree Transducers : Exemple D(+(x 1, x 2 )) +(D(x 1 ), D(x 2 )) D( (x 1, x 2 )) +( (D(x 1 ), I(x 2 )), (I(x 1 ), D(x 2 ))) I( (x 1, x 2 )) (I(x 1 ), I(x 2 )) D(sin(x 1 )) (cos(i(x 1 )), D(x 1 )) I(a) a I(y) y D(a) 0 D(y) 1... a cos y D a I y + I a D y Calcul de la dérivée d une fonction Alphabet : 0, 1, a, y, +,, sin, cos États : D (dérive), I (identité)

58 Transductions rationnelles Tree Transducers : Exemple D(+(x 1, x 2 )) +(D(x 1 ), D(x 2 )) D( (x 1, x 2 )) +( (D(x 1 ), I(x 2 )), (I(x 1 ), D(x 2 ))) I( (x 1, x 2 )) (I(x 1 ), I(x 2 )) D(sin(x 1 )) (cos(i(x 1 )), D(x 1 )) I(a) a I(y) y D(a) 0 D(y) 1... a cos y 0 y + a 1 Calcul de la dérivée d une fonction Alphabet : 0, 1, a, y, +,, sin, cos États : D (dérive), I (identité)

59 Transductions rationnelles Tree Transducers : Conclusion avantages changements de structure possible non-linearité (copie), effacement de branches, permutation,... Inconvénients reste limité : difficile de remonter des branches

60 Transductions rationnelles Variante : avec look-ahead Composition avec un automate d arbre 1 L arbre est lu par un automate d arbre ascendant 2 les noeuds sont étiquetés par les états du run 3 le nouvel arbre est transformé par un transducteur descendant Le processus peut alors être déterministe

61 Transductions rationnelles Variante : avec algèbre de substitution l algèbre YIELD (ou SUBST) n symboles spéciaux α i Un symbole de substitution SUBST les α i sont substituées par les arguments de SUBST SUBST f b c YIELD f a c b a α 2 α 1 Transduction vers les trees avec SUBST puis YIELD : possibilité de déplacer des branches

62 Macro Tree Transducers Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

63 Macro Tree Transducers Macro Tree Transducers : Principes Même idée général qu un transducteur d arbres mais, utilisation de paramètres ( accumulateurs ) : bouts d arbres collectés lors du run dans une règle : possibilité de stocker un bout d arbre (passer en paramètre) possibilité d utiliser les arbres stockés dans les arbres de sortie Grosso-Modo la même chose qu un transducteur avec algèbre de YIELD

64 Macro Tree Transducers Macro Tree Transducers : Definition M = Q, Σ,, I, δ Formes des règles q(a, y 1,..., y m ) ξ q(f (x 1,..., x k ), y 1,..., y m ) ξ ξ : arbres tel que σ(t 1,..., t l ) ξ, pour tout σ, t j ξ arbre sur l alphabet de sortie q(x i, t 1,..., t l ), pour q Q, x i X, t j ξ copie de sous arbre d entrée, + accumulation y i ξ, pour tout y i Y copie de paramètre Attention : vision top-down Note : MTT sans paramètre = transducteur d arbre top-down

65 Macro Tree Transducers Macro Tree Transducers : Exemple Exemple : retirer les multiplications q 0 (+(x 1, x 2 )) +(q 0 (x 1 ), q 0 (x 2 )) q 0 (1) 1 q 0 ( (x 1, x 2 )) q(x 1, q 0 (x 2 )) q(+(x 1, x 2 ), y 1 ) +(q(x 1, y 1 ), q(x 2, y 1 )) q(1, y 1 ) y 1 q 0 ( (x 1, x 2 ), y 1 ) q(x 1, q(x 2, y 1 )) q

66 Macro Tree Transducers Macro Tree Transducers : Exemple Exemple : retirer les multiplications q 0 (+(x 1, x 2 )) +(q 0 (x 1 ), q 0 (x 2 )) q 0 (1) 1 q 0 ( (x 1, x 2 )) q(x 1, q 0 (x 2 )) q(+(x 1, x 2 ), y 1 ) +(q(x 1, y 1 ), q(x 2, y 1 )) q(1, y 1 ) y 1 q 0 ( (x 1, x 2 ), y 1 ) q(x 1, q(x 2, y 1 )) q q q 0 1

67 Macro Tree Transducers Macro Tree Transducers : Exemple Exemple : retirer les multiplications q 0 (+(x 1, x 2 )) +(q 0 (x 1 ), q 0 (x 2 )) q 0 (1) 1 q 0 ( (x 1, x 2 )) q(x 1, q 0 (x 2 )) q(+(x 1, x 2 ), y 1 ) +(q(x 1, y 1 ), q(x 2, y 1 )) q(1, y 1 ) y 1 q 0 ( (x 1, x 2 ), y 1 ) q(x 1, q(x 2, y 1 )) q q

68 Macro Tree Transducers Macro Tree Transducers : Exemple Exemple : retirer les multiplications q 0 (+(x 1, x 2 )) +(q 0 (x 1 ), q 0 (x 2 )) q 0 (1) 1 q 0 ( (x 1, x 2 )) q(x 1, q 0 (x 2 )) q(+(x 1, x 2 ), y 1 ) +(q(x 1, y 1 ), q(x 2, y 1 )) q(1, y 1 ) y 1 q 0 ( (x 1, x 2 ), y 1 ) q(x 1, q(x 2, y 1 ))

69 Macro Tree Transducers MTT with regular look-ahead MTT R M = Q, P, Σ,, I, δ,h Q, Σ,, I, δ, est un MTT particulier P, Σ, h est un automate d arbre (l automate look-ahead de M) Fonctionnement On fait un run avec le look-ahead automaton (les noeuds sont étiquetés par les états de P) Les règles du MTT dépendent des états des fils de l états courants. Règles de la forme : q, σ(p 1 (x 1 ),..., p n (x n )) ξ Note : MTT R = MTT (Engelfriet Vogler, 85)

70 Tree Walking et Pebble Tr. Tr. Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

71 Tree Walking et Pebble Tr. Tr. Tree Walking Transducer (1) Principes : Basé sur la notion de Tree Walking Automaton les règles impliquent un mouvement dans l arbre d entrée (up / down / stay ) (idem Tree Walking Automata) les règles produisent des bouts d arbres dans lesquelles il peut y avoir des branchements multiples (branching)

72 Tree Walking et Pebble Tr. Tr. Tree Walking Transducer (2) M = Q, Σ,, I, R Règles de la forme q, f ξ avec ξ : q, stay q, up (sauf si racine) q, down i (i : numéro du fils) σ( q 1, stay,..., q k, stay ) (relabeling + branching)

73 Tree Walking et Pebble Tr. Tr. TWT : exemple Exemple : explosion en largeur M = Q = {q}, Σ = {a 1, e 0 }, = {σ 2, e 0 }, I = {q}, R} avec R : q, a σ( q, down 1, q, down 1 ) q, e e a σ a a e

74 Tree Walking et Pebble Tr. Tr. TWT : exemple Exemple : explosion en largeur M = Q = {q}, Σ = {a 1, e 0 }, = {σ 2, e 0 }, I = {q}, R} avec R : q, a σ( q, down 1, q, down 1 ) q, e e a σ a σ σ a e

75 Tree Walking et Pebble Tr. Tr. TWT : exemple Exemple : explosion en largeur M = Q = {q}, Σ = {a 1, e 0 }, = {σ 2, e 0 }, I = {q}, R} avec R : q, a σ( q, down 1, q, down 1 ) q, e e a σ a σ σ a σ σ σ a e

76 Tree Walking et Pebble Tr. Tr. TWT : exemple Exemple : explosion en largeur M = Q = {q}, Σ = {a 1, e 0 }, = {σ 2, e 0 }, I = {q}, R} avec R : q, a σ( q, down 1, q, down 1 ) q, e e a a a σ σ a σ σ σ σ e e e e e e e e e

77 Tree Walking et Pebble Tr. Tr. Pebble Tree Transducer (1) Pebble = caillou Pebble Tree Transducer à n cailloux : n ptt Principe : on a n cailloux différents qui peuvent être déposés sur les noeuds (un de chaque type par noeud au max.) un vecteur de booléen sur chaque noeud les règles peuvent dépendre de la présence de cailloux les règles impliquent un mouvement dans l arbre d entrée (up / down / stay ) (idem Tree Walking Automata) les règles peuvent déposer (drop ) ou retirer (lift ) des cailloux

78 Tree Walking et Pebble Tr. Tr. Pebble Tree Transducer (2) M = Q, Σ,, I, R Règles de la forme q, f, b ξ avec b vecteur de cailloux (b {0, 1} n ) et ξ : σ( q 1, stay,..., q k, stay ) (relabeling + branching) q, stay q, up (sauf si racine) q, down i (i : numéro du fils) q, lift l (l : type de caillou) q, drop l (l : type de caillou, si présent)

79 Tree Walking et Pebble Tr. Tr. Pebble Tree Transducer (3) M = Q, Σ,, I, R Forme généralisée (Engelfriet & Maneth) q, f, b ξ avec b vecteur de cailloux (b {0, 1} n ), ξ T (Q {stay, up, down i, lift, drop })

80 Tree Walking et Pebble Tr. Tr. PTT : exemple

81 Tree Walking et Pebble Tr. Tr. Pebble Tree Transducer Notes 0-PTT : appelés Tree Walking Transducers n-ptt (n + 1)-PTT n-ptt = composition de n PTT n-dptt (deterministe) n-ptt (non-circulaires) 0-DPTT = ATT Inconvénients Apprentissage : Improbable (lien entre arbre d entrée et de sortie peu clair)

82 Récapitulatif Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

83 Récapitulatif Récapitulatif Compilation Automates d arbres Tree Walking MSO SD Transducers Transducteurs d arbres attribués Relabeling Transductions rationnelles Macro Tree Transducers Tree Walking Transducers Pebble Tree Transducers MSO Tree Transducers

84 Récapitulatif Récapitulatif : Expressivité Expressivité des différents modèles RTT SDT TT MTTsur R MSO TT ATTsur R ATT MTT = MTT R 0 PTT = TWT MTT n+1 n PTT = TWT n+1 MTT PTT ATT : Attributed Tree Transducer RTT : Relabeling Tree Transducer SDT : Syntax Directed Transducer PTT : Pebble tree transducer TWT : Tree Walking Tree Transducer MTT : Macro tree Transducers MSO-TT : Monadic Second Order Tree Transducer

85 Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

86 Principes Généraux Plan 1 Taxonomie des transducteurs d arbres Syntax Directed Transducers Attributed Tree Transducer MSO Tree transducers Transductions rationnelles Macro Tree Transducers Tree Walking/Pebble Tree Transducers Récapitulatif 2 Apprentissage de transducteurs Principes Généraux

87 Principes Généraux Idées les langages d arbres réguliers sont apprenables par RPNI par exemples positifs et négatifs. on se ramène donc à des langages d arbres. Utilisation de la fonctionnalité. Utilisation d exemples enrichis.

88 Principes Généraux Correspondance des noeuds : Principe HTML BODY TABLE TR TD TD = RACINE ID Jean Dupont Jean Dupont

89 Principes Généraux Correspondance des noeuds : Principe HTML BODY TABLE TR TD TD = RACINE ID TEXTE TEXTE TEXTE TEXTE Réduction du vocabulaire

90 Principes Généraux Correspondance des noeuds : Principe HTML BODY TABLE TR TD TD = RACINE ID TEXTE TEXTE TEXTE TEXTE Correspondance des noeuds

91 Principes Généraux Correspondance des noeuds : Principe HTML BODY RACINE TABLE TR = ID TD TD TEXTE Jean TEXTE Dupo TEXTE Jean TEXTE Dupont Correspondance des noeuds

92 Principes Généraux Correspondance des noeuds : Principe HTML BODY RACINE TABLE TR = ID TD TD TEXTE Jean TEXTE Dupo TEXTE Jean TEXTE Dupont Correspondance des noeuds

93 Principes Généraux Correspondance des noeuds : Principe Idées générales Tous les formalismes de transductions présentés ici peuvent générer une fonction de correspondance de noeuds. On peut obtenir facilement cette fonction sur les exemples (au moins en transformation de document).

94 Principes Généraux Correspondance des noeuds : Entrées/Sorties f h g c c h h a b a c

95 Principes Généraux Correspondance des noeuds : Entrées/Sorties f h f /h(x 2, x 1, h(x 2 )) g c c h h g/h(x 1 ) c/c a b a c a/a b/ε Transformation en langage d arbres

96 Principes Généraux Passage des transductions aux langages d arbres Notes : Règle d un transducteur d arbres : q(f (x 1, x 2 )) h(q 1 (x 2 ), q 2 (x 1 ), h(q 1 (x 2 ))) Règle correspondante dans l automate d arbres : q(f /h(x 2, x 1, h(x 2 ))(x 1, x 2 )) (f /h(x 2, h(x 1 ), x 2 ) )(q 2 (x 1 ), q 1 (x 2 )) Alphabet apparemment infini (Σ T X ), en réalité fini (limité à ce qui apparaît dans le transducteur cible) Restriction : même état lors des copies

97 Principes Généraux Apprentissage Exemple enrichi Exemple du langage d arbre Inférence Langage d arbres Transducteur d arbres

98 Principes Généraux Avec des exemples moins enrichis? f h a g b c c h h a c La fonction de correspondance n est connue que pour les feuilles (et la racine) 1 Complétion par défaut (le plus bas possible) 2 Lors d une fusion, possibilité de relever la fonction de correspondance

99 Principes Généraux Étendre l expressivité a f f b f c d a f f d f c b

100 Principes Généraux Étendre l expressivité a f f b f c d a f f d f c b Avec YIELD SUBST f a α 1 α 2 f f b c d

101 Principes Généraux Étendre l expressivité f f f d f b f c f c a b a d Avec MTT d et c sont stockés dans les paramètres ils sont utilisés lors du passage à b (A préciser...)

102 Classes apprenables à partir d exemples enrichis Affirmations gratuites Classe Apprenable? RTT OUI (copy-safe) TT OUI (très probablement) (copy-safe) MTT J y crois SDT OUI (sans doute?) ATT NON (sans doute) (copy-safe) MSO-TT Possible??

103 Bibliographie très succinte TATA 1997 Models of tree translations, S. Maneth, PhD thesis A Comparaison of Pebble Tree Transducers with Macro Tree Transducers, J. englefriet and S. Maneth, 2002 characterization of Properties and Relations defined in Monadic Second Order Logic on the nodes of Trees, R. Bloem and J. Engelfriet, 1997 Attribute Grammars and Monadic Second Order Logic, R. Bloem, 1996 Syntax-Directed Semantics - Formal Models based on Tree Transducers (Fülop/Vogler) Macro Tree Transducers in TREEBAG, K. Azab, 2005

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

Méthodes algébriques pour la théorie des automates

Méthodes algébriques pour la théorie des automates 1/28 Université Paris-Diderot Sciences mathématiques de Paris Centre Thèse de Doctorat Spécialité Informatique Méthodes algébriques pour la théorie des automates Luc Dartois 2/28 Exemple d automate : le

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

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2

Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101. Travail pratique #2 Université Laval Faculté des sciences et de génie Département d'informatique et de génie logiciel IFT-3101 Danny Dubé Hiver 2014 Version : 11 avril Questions Travail pratique #2 Traduction orientée-syntaxe

Plus en détail

Structures de données, IMA S6

Structures de données, IMA S6 Structures de données, IMA S6 Arbres Binaires d après un cours de N. Devésa, Polytech Lille. Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@polytech-lille.fr Université Lille 1 - Polytech

Plus en détail

Grammaires formelles, Automates

Grammaires formelles, Automates 1/39 Grammaires formelles, Automates Pierre Zweigenbaum LIMSI, CNRS pz@limsi.fr http://www.limsi.fr/~pz/ 2/39 1 Syntaxe : grammaire, analyse 2 Grammaires formelles Langage et grammaire Grammaires régulières

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

UPMC Master informatique 2 STL NI503 Conception de langages Notes I

UPMC Master informatique 2 STL NI503 Conception de langages Notes I UPMC Master informatique 2 STL NI503 Conception de langages Notes I 2012 1 Évaluer Un langage Le langage Logo est composé commandes permettant de diriger le déplacement d un point sur un plan cartésien

Plus en détail

Structures de données non linéaires

Structures de données non linéaires Structures de données non linéaires I. Graphes Définition Un graphe (simple) orienté G est un couple (S, A), où : S est un ensemble dont les éléments sont appelés les sommets. A est un ensemble de couples

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

Parcours d un arbre Arbres de recherche CHAPITRE 6. Arbres binaires. Karelle JULLIAN. MPSI, Option Info 2014/2015. Karelle JULLIAN

Parcours d un arbre Arbres de recherche CHAPITRE 6. Arbres binaires. Karelle JULLIAN. MPSI, Option Info 2014/2015. Karelle JULLIAN CHAPITRE 6 Arbres binaires Lycée Kléber MPSI, Option Info 2014/2015 1 Définitions 2 Parcours en largeur Parcours en profondeur Parcours préfixe, infixe, postfixe Reconstitution 3 Recherche Complexité Insertion

Plus en détail

Théorie des Langages

Théorie des Langages Théorie des Langages AntLR - Générateur d analyseurs Claude Moulin Université de Technologie de Compiègne Printemps 2015 Sommaire 1 Introduction 2 AntLR ANTLR : ANother Tool for Language Recognition URL

Plus en détail

Langages et Compilation. Analyse descendante prédictive

Langages et Compilation. Analyse descendante prédictive Langages et Compilation Analyse descendante prédictive 1 Introduction Grammaires LL(1) Une famille de grammaires analysables de façon ecace. Caractéristiques de l'analyse LL(1) analyse descendante Construction

Plus en détail

Les arbres Florent Hivert

Les arbres Florent Hivert 1 de 1 Algorithmique Les arbres Florent Hivert Mél : Florent.Hivert@lri.fr Page personnelle : http://www.lri.fr/ hivert 2 de 1 Algorithmes et structures de données La plupart des bons algorithmes fonctionnent

Plus en détail

Analyse syntaxique IFT-15752 Compilation et interpr etation c! Danny Dub e 2006

Analyse syntaxique IFT-15752 Compilation et interpr etation c! Danny Dub e 2006 Analyse syntaxique Introduction Les grammaires hors-contexte sont les outils que nous utiliserons pour spécifier la structure syntaxique des programmes. Les grammaires hors-contexte ont plusieurs avantages:

Plus en détail

Arbres binaires de recherche (ABR) Binary Search Trees (BST)

Arbres binaires de recherche (ABR) Binary Search Trees (BST) LSVIII-BIM Algorithmie, 2015 Arbres binaires de recherche (ABR) Binary Search Trees (BST) I. Arbres binaires 1. Structure 2. Parcours II. Arbres binaires de recherche 1. Définition 2. Opérations sur les

Plus en détail

Bases de Données Avancées

Bases de Données Avancées Bases de Données Avancées Enseignant / chargé de TD : Dario COLAZZO www.lri.fr/~colazzo Chargée de TP : Jesús CAMACHO-RODRIGUEZ www.lri.fr/~camacho Plan Tuning d index Concurrence Reprise sur panne Données

Plus en détail

Arbres Binaire. PSI DAKHLA Prof Youssef El marzak. 1 Prof Youssef Elmarzak

Arbres Binaire. PSI DAKHLA Prof Youssef El marzak. 1 Prof Youssef Elmarzak Arbres Binaire PSI DAKHLA Prof Youssef El marzak 1 Prof Youssef Elmarzak 1.introduction: Les arbre sont très utilisées en informatique, d une part parce que les informations sont souvent hiérarchisées,

Plus en détail

Analyse descendante LL(k)

Analyse descendante LL(k) Bureau 203 - M3 extension mirabelle.nebut at lifl.fr 2012-2013 Principes Factorisation à gauche Suppression de la récursivité à gauche 2/119 Objectif du cours Comprendre le fonctionnement des générateurs

Plus en détail

Compilation (INF 564)

Compilation (INF 564) Grammaires algébriques Analyse LL(1) Analyse LR(0) Quelques mots de l analyse LR(1) L outil Menhir 1 Compilation (INF 564) Analyse syntaxique François Pottier 16 décembre 2015 Grammaires algébriques Analyse

Plus en détail

Cours de compilation

Cours de compilation Cours de compilation 1 Introduction Un compilateur est un logiciel de traduction d un langage source vers un langage cible. D ordinaire le langage source est un langage de programmation évolué, comme C++

Plus en détail

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3 I Arbres binaires 2014-2015 Table des matières 1 Rappels 2 1.1 Définition................................................ 2 1.2 Dénombrements............................................ 2 1.3 Parcours.................................................

Plus en détail

Projet de Programmation Fonctionnelle

Projet de Programmation Fonctionnelle Projet de Programmation Fonctionnelle L objectif de ce projet est de concevoir, en Objective Caml, un évaluateur pour le langage mini-ml (un sous ensemble du langage Objective Caml). Votre programme devra

Plus en détail

Chap. VII : arbres binaires

Chap. VII : arbres binaires Chap. VII : arbres binaires 1. Introduction Arbre : collection d objets avec une structure hiérarchique Structure intrinsèque descendants d une personne (elle incluse) A ascendant connus d une personne

Plus en détail

Arbres binaires et codage de Huffman

Arbres binaires et codage de Huffman MP Option Informatique Premier TP Caml Jeudi 8 octobre 2009 Arbres baires et codage de Huffman 1 Arbres baires Soit E un ensemble non vide. On défit la notion d arbre baire étiqueté (aux feuilles) par

Plus en détail

Cours numéro 9 : arbres binaires et de recherche

Cours numéro 9 : arbres binaires et de recherche Cours numéro 9 : arbres binaires et de recherche LI213 Types et Structures de données Licence d Informatique Université Paris 6 Arbre Arbre Un arbre est un ensemble fini A d éléments, liés entre eux par

Plus en détail

Techniques de compilation

Techniques de compilation Département d Informatique Université de Nice Sophia Antipolis Master 1 Informatique Techniques de compilation XI. Générateurs de générateurs de code Jacques Farré email : Jacques.Farre@unice.fr 1 Introduction

Plus en détail

CH.3 LA TRADUCTION. Grammaire attribuée d une calculette. Traduction ch3 1. Traduction ch3 2

CH.3 LA TRADUCTION. Grammaire attribuée d une calculette. Traduction ch3 1. Traduction ch3 2 CH.3 LA TRADUCTION 3.1 Les grammaires attribuées 3.2 Les définitions S-attribuées 3.3 Les définitions L-attribuées 3.4 La traduction descendante 3.5 L évaluation ascendante des attributs hérités 3.6 L

Plus en détail

Arbres binaires de recherche

Arbres binaires de recherche Chapitre 1 Arbres binaires de recherche 1 Les arbre sont très utilisés en informatique, d une part parce que les informations sont souvent hiérarchisées, et peuvent être représentées naturellement sous

Plus en détail

gcc -Wall ansi o tp fichiers -lfl

gcc -Wall ansi o tp fichiers -lfl FLEX et BISON tp.l tp_l.c : - abréviations - expressions régulières et actions associées. tp.h : - définition de types - définition d étiquettes tp_y.h : codes symboliques pour les tokens FLEX Générateur

Plus en détail

1. Les fondements de l informatique 13

1. Les fondements de l informatique 13 Introduction à l'algorithmique 1. Les fondements de l informatique 13 1.1 Architecture de Von Neumann 13 1.2 La machine de Turing 17 1.3 Représentation interne des instructions et des données 19 1.3.1

Plus en détail

L2 - Algorithmique et structures de données (Année 2010/2011) Examen (2 heures)

L2 - Algorithmique et structures de données (Année 2010/2011) Examen (2 heures) L2 - lgorithmique et structures de données (nnée 2010/2011) Delacourt, Phan Luong, Poupet xamen (2 heures) Les documents (cours, TD, TP) sont autorisés. Les quatre exercices sont indépendants. À la fin

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

λ-calcul et typage Qu est-ce qu une fonction?

λ-calcul et typage Qu est-ce qu une fonction? λ-calcul et typage Nicolas Barnier, Pascal Brisset ENAC Avril 2009 Nicolas Barnier, Pascal Brisset (ENAC) λ-calcul et typage Avril 2009 1 / 1 Qu est-ce qu une fonction? Classiquement Pas de notation uniforme/standard

Plus en détail

Systèmes à base de règles

Systèmes à base de règles Systèmes à base de règles 1/100 Introduction Méthode classique de représentation de connaissances (1943, règles de production). Souvent utilisé en IA et dans les systèmes experts (semblable aux raisonnements

Plus en détail

Éléments de Programmation Cours 1 - Introduction

Éléments de Programmation Cours 1 - Introduction Éléments de Programmation Cours 1 - Introduction Romain Demangeon 1I001 - Section 11 PEIP 08/09/2015 Étudiants PEIP: Informatique au 1er et 3eme semestre. Section MIPI 11: 160 étudiants, 5 groupes de TD.

Plus en détail

Grammaires d unification

Grammaires d unification Cours sur le traitement automatique des langues (IV) Violaine Prince Université de Montpellier 2 LIRMM-CNRS Grammaires d unification Grammaire catégorielle Grammaire syntagmatique généralisée (GPSG) Les

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

1 Modélisation d être mauvais payeur

1 Modélisation d être mauvais payeur 1 Modélisation d être mauvais payeur 1.1 Description Cet exercice est très largement inspiré d un document que M. Grégoire de Lassence de la société SAS m a transmis. Il est intitulé Guide de démarrage

Plus en détail

Feuille 5 Algèbre Relationnelle et Calcul Relationnel

Feuille 5 Algèbre Relationnelle et Calcul Relationnel Université de Bordeaux M2 d Informatique, 2014-2015 Cours de Bases de Données Avancées Feuille 5 Algèbre Relationnelle et Calcul Relationnel On va définir les deux principaux langages de requêtes (équivalents)

Plus en détail

Épreuve d informatique 2011

Épreuve d informatique 2011 A 2011 INFO. MP ÉCOLE NATIONALE DES PONTS ET CHAUSSÉES, ÉCOLES NATIONALES SUPÉRIEURES DE L AÉRONAUTIQUE ET DE L ESPACE, DE TECHNIQUES AVANCÉES, DES TÉLÉCOMMUNICATIONS, DES MINES DE PARIS, DES MINES DE

Plus en détail

Sémantique des Langages de Programmation

Sémantique des Langages de Programmation Sémantique des Langages de Programmation Introduction Stefano Guerrini stefano.guerrini@univ-paris13.fr LIPN - Institut Galilée, Université Paris Nord 13 Sup Galillée Informatique, 1ère année 2009 2010

Plus en détail

RdF Reconnaissance des Formes Semaine 12 : Chaînes, langages et grammaires

RdF Reconnaissance des Formes Semaine 12 : Chaînes, langages et grammaires RdF Reconnaissance des Formes Semaine 12 : Chaînes, langages et grammaires Master ASE : http://master-ase.univ-lille1.fr/ Master Informatique : http://www.fil.univ-lille1.fr/ Spécialité IVI : http://master-ivi.univ-lille1.fr/

Plus en détail

Programme de la licence informatique, université de Caen http://www.info.unicaen.fr

Programme de la licence informatique, université de Caen http://www.info.unicaen.fr Programme de la licence informatique, université de Caen http://www.info.unicaen.fr Unité Systèmes d'information CM : 45h - TD : 60h - TP : 12h - Coeff 2 Systèmes de Gestion de Bases de Données Modéliser

Plus en détail

Introduction Basé sur la spécification ou l'interface du programme P On peut appliquer le critère de couverture complète du domaine

Introduction Basé sur la spécification ou l'interface du programme P On peut appliquer le critère de couverture complète du domaine Le test ''boîte noire'' LOG4500 Validation et tests de logiciels Professeur: John MULLINS Introduction asé sur la spécification ou l'interface du programme P On peut appliquer le critère de couverture

Plus en détail

Analyse syntaxique et application aux langues naturelles. Grammaires Lexicales Fonctionnelles (LFG)

Analyse syntaxique et application aux langues naturelles. Grammaires Lexicales Fonctionnelles (LFG) Université de Nice Sophia Antipolis Master 2 Recherche PLMT Analyse syntaxique et application aux langues naturelles Grammaires Lexicales Fonctionnelles (LFG) Jacques Farré et Sylvain Schmitz Analyse syntaxique

Plus en détail

Machines composées de (depuis 1940 env.) : http://cui.unige.ch/isi/cours/std/

Machines composées de (depuis 1940 env.) : http://cui.unige.ch/isi/cours/std/ données pr ogramme 11111101 11001101 01000101 b us disque ma gnétique processeur écran Structures de données et algorithmes Ordinateurs Gilles Falquet, printemps-été 2002 Machines composées de (depuis

Plus en détail

Bases de données cours 2 Éléments d algèbre relationnelle. Catalin Dima

Bases de données cours 2 Éléments d algèbre relationnelle. Catalin Dima Bases de données cours 2 Éléments d algèbre relationnelle Catalin Dima Qu est-ce qu une algèbre? Algèbre : ensemble de domaines et d opérations. Exemple : les nombres (naturels, réels, complexes). Leurs

Plus en détail

1 Valeur d une expression

1 Valeur d une expression PCSI Informatique: Cours2 1 VALEUR D UNE EXPRESSION Expressions et variables en informatique 1 Valeur d une expression Expression : suite de caractères qui a un sens pour la machine Valeur d une expression

Plus en détail

Introduction à la conception de sites web. Yannick Prié UFR Informatique Université Claude Bernard Lyon 1

Introduction à la conception de sites web. Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 Introduction à la conception de sites web Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 Objectifs Introduction aux langages à balises Introduction à (X)HTML / CSS Introduction à la gestion

Plus en détail

Management des Systèmes d information (SI) S1 - Gouvernance des SI

Management des Systèmes d information (SI) S1 - Gouvernance des SI 2015 / 2016 - Semestre 1&2 DSCG - UE5 Management des Systèmes d information (SI) S1 - Gouvernance des SI Module 5 - Gestion des Processus Métiers (BPM) Yves MEISTERMANN DSCG UE 5 - Bulletin officiel DSCG

Plus en détail

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

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

Une extension pour RDF/RDFS utilisant des relations procédurales

Une extension pour RDF/RDFS utilisant des relations procédurales Une extension pour RDF/RDFS utilisant des relations procédurales Jean-François Baget * * INRIA Sophia-Antipolis & LIRMM(CNRS - UM2) LIRMM, 161 rue Ada, 34392 Montpellier Cedex 5 baget@lirmm.fr RÉSUMÉ.

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

INFORMATIQUE. Licence 3 e année (L3) & Master (M1-M2) Centre d Etudes Suisse Romande Formation universitaire

INFORMATIQUE. Licence 3 e année (L3) & Master (M1-M2) Centre d Etudes Suisse Romande Formation universitaire Centre d Etudes Suisse Romande Formation universitaire INFORMATIQUE Licence 3 e année (L3) & Master (M1-M2) En collaboration avec l Université de Franche-Comté CTU de Besançon Unidistance 2 GÉNÉRALITÉS

Plus en détail

Introduction au model-checking et application à la vérification des protocoles cryptographiques

Introduction au model-checking et application à la vérification des protocoles cryptographiques Introduction au model-checking et application à la vérification des protocoles cryptographiques Prof. John MULLINS École Polytechnique de Montréal Prof. John MULLINS (École Polytechnique) Introduction

Plus en détail

Analyse syntaxique. Sections 4.1 à 4.4. IFT-3101 Compilation et interprétation Révision hiver 2014 p. 1

Analyse syntaxique. Sections 4.1 à 4.4. IFT-3101 Compilation et interprétation Révision hiver 2014 p. 1 Analyse syntaxique Sections 4.1 à 4.4 IFT-3101 Compilation et interprétation Révision hiver 2014 p. 1 * Contenu * Introduction Rôle et types d analyseurs syntaxiques Gestion des erreurs Langages hors-contexte

Plus en détail

Arbres de décision. Intelligence Artificielle et Systèmes Formels Master 1 I2L

Arbres de décision. Intelligence Artificielle et Systèmes Formels Master 1 I2L Arbres de décision Intelligence Artificielle et Systèmes Formels Master 1 I2L Sébastien Verel verel@lisic.univ-littoral.fr http://www-lisic.univ-littoral.fr/ verel Université du Littoral Côte d Opale Laboratoire

Plus en détail

INFO-F-302 Informatique Fondamentale Logique du premier ordre

INFO-F-302 Informatique Fondamentale Logique du premier ordre INFO-F-302 Informatique Fondamentale Logique du premier ordre Prof. Emmanuel Filiot Exercice 1 1. Soit un langage L = (p, q, r, s, t, f, g) où p, q sont des prédicats unaires, r, s, t sont des prédicats

Plus en détail

Cours de spécialité mathématiques en Terminale ES

Cours de spécialité mathématiques en Terminale ES Cours de spécialité mathématiques en Terminale ES O. Lader 2014/2015 Lycée Jean Vilar Spé math terminale ES 2014/2015 1 / 51 Systèmes linéaires Deux exemples de systèmes linéaires à deux équations et deux

Plus en détail

Introduction aux CRF via l annotation par des modèles graphiques. Isabelle Tellier. LIFO, Université d Orléans

Introduction aux CRF via l annotation par des modèles graphiques. Isabelle Tellier. LIFO, Université d Orléans Introduction aux CRF via l annotation par des modèles graphiques Isabelle Tellier LIFO, Université d Orléans Plan 1. Annoter pour quoi faire 2. Apprendre avec un modèle graphique 3. Annnoter des chaînes

Plus en détail

Systèmes d information et bases de données (niveau 1)

Systèmes d information et bases de données (niveau 1) Systèmes d information et bases de données (niveau 1) Cours N 1 Violaine Prince Plan du cours 1. Bibliographie 2. Introduction aux bases de données 3. Les modèles 1. Hiérarchique 2. Réseau 3. Relationnel

Plus en détail

Master d Informatique Examen janvier 2011

Master d Informatique Examen janvier 2011 Université de Provence Technologies XML Master d Informatique Examen janvier 2011 Année 2010-11 Notes de cours autorisées Vous rendrez vos réponses sur les copies anonymes que l on vous a distribuées.

Plus en détail

TD 1 - Structures de Traits et Unification

TD 1 - Structures de Traits et Unification TD 1 - Structures de Traits et Unification 1 Définitions Un trait (en: feature) est un couple attribut-valeur. Une structure de traits (en: feature structure) est un ensemble de traits. On peut les représenter

Plus en détail

Arbres binaires. Hélène Milhem. Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012

Arbres binaires. Hélène Milhem. Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012 Arbres binaires Hélène Milhem Institut de Mathématiques de Toulouse, INSA Toulouse, France IUP SID, 2011-2012 H. Milhem (IMT, INSA Toulouse) Arbres binaires IUP SID 2011-2012 1 / 35 PLAN Introduction Construction

Plus en détail

Tableaux (introduction) et types de base

Tableaux (introduction) et types de base Tableaux (introduction) et types de base A. Motivation..................................................... 4 B. Les tableaux.................................................... 5 C. Construction des tableaux.......................................

Plus en détail

Usage d un Tableur : Excel/OO

Usage d un Tableur : Excel/OO Usage d un Tableur : Excel/OO Fonctions d un tableur : Organiser et gérer un ensemble d informations mises sous la forme d un tableau. Informations numériques et textuelles Calculs sur ces informations

Plus en détail

Informatique en Degead 1. Présentation, modalités, objectifs (1/3)

Informatique en Degead 1. Présentation, modalités, objectifs (1/3) Informatique en Degead 1 Présentation, modalités, objectifs (1/3) Responsable : Denis Cornaz denis.cornaz@dauphine.fr 01 44 05 41 83 P 409 bis http://www.lamsade.dauphine.fr/ cornaz/enseignement/uv21-degead1/

Plus en détail

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année

Informatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année UFR Sciences et Techniques Licence S&T 1ère année Informatique UE 102 Architecture des ordinateurs et Algorithmique de base Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ UFR Sciences et Techniques

Plus en détail

Les principaux domaines de l informatique

Les principaux domaines de l informatique Les principaux domaines de l informatique... abordés dans le cadre de ce cours: La Programmation Les Systèmes d Exploitation Les Systèmes d Information La Conception d Interfaces Le Calcul Scientifique

Plus en détail

Partie 3. Gilles Lebrun (gilles.lebrun@unicaen.fr)

Partie 3. Gilles Lebrun (gilles.lebrun@unicaen.fr) Partie 3 Gilles Lebrun (gilles.lebrun@unicaen.fr) Les arbres binaires Définition : C est une structure arborescente ou hiérarchique ou récursive Chaque élément (nœud) constituant la structure de l arbre

Plus en détail

x n = x x n 1 Exercice 3 Le but de cet exercice est de modéliser les suites définies par récurrence de la façon suivante :

x n = x x n 1 Exercice 3 Le but de cet exercice est de modéliser les suites définies par récurrence de la façon suivante : Ocaml - Exercices Exercice Définir en Ocaml les fonctions suivantes:. f : x sin x + cos x. g : x x 3x+ x x 5 3. Fonction h calculant la moyenne géométrique de deux float positifs ( xy) Exercice Ecrire

Plus en détail

TP 4 -Arbres Binaires -

TP 4 -Arbres Binaires - L3 Informatique Programmation fonctionnelle OCaml Année 2013/2014 TP 4 -Arbres Binaires - Un arbre binaire est une structure de données qui peut se représenter sous la forme d une hiérarchie dont chaque

Plus en détail

Apprentissage de langages formels : théorie et pratique Stage de fin de licence

Apprentissage de langages formels : théorie et pratique Stage de fin de licence Apprentissage de langages formels : théorie et pratique Stage de fin de licence Jean-Marie Madiot sous la direction de Rémi Eyraud Juin, juillet 2009 LIF de Marseille, équipe BDAA CMI Remerciements Je

Plus en détail

Compilation. Introduction à la compilation. Termes Phases d'un compilateur Importance des grammaires Méthodes d'analyse. Termes. Termes.

Compilation. Introduction à la compilation. Termes Phases d'un compilateur Importance des grammaires Méthodes d'analyse. Termes. Termes. Compilation Enseignants : Stéphane Talbot Miguel Tomasena Volume horaire : 10.5 C / 12 TD / 12 TP langage source Traduction langage cible Contenu : Introduction à la compilation Analyse Lexicale Analyse

Plus en détail

Langages de spécification cours 4

Langages de spécification cours 4 Langages de spécification cours 4 Diagrammes de décision binaire(bdd) Catalin Dima Arbres de décision binaire Étant donnée une formule logique, on peut lui associer un arbre qui permet d évaluer la valeur

Plus en détail

Résolution générique à la volée de systèmes d équations booléennes et applications

Résolution générique à la volée de systèmes d équations booléennes et applications Résolution générique à la volée de systèmes d équations booléennes et applications Radu Mateescu INRIA Rhône-Alpes / VASY Plan Introduction Systèmes d équations booléennes d alternance 1 Algorithmes de

Plus en détail

Introduction à XPath

Introduction à XPath Introduction à XPath Introduction à XPath xml-xpath Code: xml-xpath Originaux url: http://tecfa.unige.ch/guides/tie/html/xml-xpath/xml-xpath.html url: http://tecfa.unige.ch/guides/tie/pdf/files/xml-xpath.pdf

Plus en détail

Programmer avec des Fonctions

Programmer avec des Fonctions Programmation Fonctionnelle I, 2009-2010 L1 Info&Math - Faculté des Sciences de Nice http://deptinfo.unice.fr/~roy Cours n 2 Programmer avec des Fonctions Calculer avec des Fonctions Un algorithme est

Plus en détail

Master 1 Rentrée 2015/2016

Master 1 Rentrée 2015/2016 Informations générales Semestre 1 Semestre 2 Master 1 Rentrée 2015/2016 Université du Littoral Cote d Opale 4 septembre 2015 (Université du Littoral Cote d Opale) Master 1 4 septembre 2015 1 / 24 Informations

Plus en détail

LIF4 - Optimisation à base de règles

LIF4 - Optimisation à base de règles LIF4 - Optimisation à base de règles Fabien Duchateau fabien.duchateau [at] univ-lyon1.fr Université Claude Bernard Lyon 1 2015-2016 http://liris.cnrs.fr/fabien.duchateau/ens/lif4/ Remerciements : Nicolas

Plus en détail

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas

Plus en détail

BAZIN Danil et PRIEZ Jean-Baptiste. LEX & YACC : Calculatrice Évoluée

BAZIN Danil et PRIEZ Jean-Baptiste. LEX & YACC : Calculatrice Évoluée BAZIN Danil et PRIEZ Jean-Baptiste LEX & YACC : Calculatrice Évoluée Table des matières 1 Introduction 3 2 Description 4 3 La grammaire utilisée 6 4 Lexèmes et FLEX 8 5 Analyse syntaxique et YACC 8 5.1

Plus en détail

Notation fonctionnelle : Union (R,S) ou OR (R, S) Chapitre 4 : Algèbre Relationnelle

Notation fonctionnelle : Union (R,S) ou OR (R, S) Chapitre 4 : Algèbre Relationnelle Chapitre 4 : IV. Qu est-ce que l algèbre relationnelle? Une collections d opérations, chacune agissant sur une ou deux relations et produisant une relation en résultat. Un langage pour combiner ces opérations.

Plus en détail

M3301-2: Méthodologie de la production de logiciels Modélisation et construction des logiciels (C. Attiogbé) Travaux dirigés/pratiques - 2015/2016

M3301-2: Méthodologie de la production de logiciels Modélisation et construction des logiciels (C. Attiogbé) Travaux dirigés/pratiques - 2015/2016 M3301-2: Méthodologie de la production de logiciels Modélisation et construction des logiciels (C. Attiogbé) Travaux dirigés/pratiques - 2015/2016 encadrés par Christian Attiogbé, Amine Aouadhi Cahier

Plus en détail

Plan du cours de Programmation logique

Plan du cours de Programmation logique Plan du cours de Programmation logique 1 Introduction 2 3 Igor Stéphan 1/ 64 La logique comme langage de programmation Un langage de programmation logique est défini par : un langage des données Ω; et

Plus en détail

F411 - Courbes Paramétrées, Polaires

F411 - Courbes Paramétrées, Polaires 1/43 Courbes Paramétrées Courbes polaires Longueur d un arc, Courbure F411 - Courbes Paramétrées, Polaires Michel Fournié michel.fournie@iut-tlse3.fr http://www.math.univ-toulouse.fr/ fournie/ Année 2012/2013

Plus en détail

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL

NVU, Notepad++ (ou le bloc-note), MySQL, PhpMyAdmin. HTML, PHP, cas d utilisation, maquettage, programmation connaissances en HTML, PHP et SQL Prise en main de NVU et Notepad++ (conception d application web avec PHP et MySql) Propriétés Intitulé long Formation concernée Matière Présentation Description Conception de pages web dynamiques à l aide

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

Théorie des langages. compilation. Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.fr 1 / 59

Théorie des langages. compilation. Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.fr 1 / 59 et compilation Elise Bonzon http://web.mi.parisdescartes.fr/ bonzon/ elise.bonzon@parisdescartes.fr 1 / 59 et compilation et compilation Structure d un compilateur Analyse lexicale Analyse syntaxique Analyse

Plus en détail

2A-SI 4 - Bases de Données 4.4 - Normalisation de schémas relationnels

2A-SI 4 - Bases de Données 4.4 - Normalisation de schémas relationnels 2A-SI 4 - Bases de Données 4.4 - Normalisation de schémas relationnels Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Avec l aide du cours de Y. Bourda Intérêt de la «normalisation»

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

Apport des Méthodes formelles pour la certification du Falcon 7X Division DÉFENSE

Apport des Méthodes formelles pour la certification du Falcon 7X Division DÉFENSE Apport des Méthodes formelles pour la certification du Falcon 7X février 04 1 Les analyses Sdf utilisées dans le cadre d une certification aéronautique civile; un processus précis et réglementé Normes

Plus en détail

Les arbres binaires. Terminologie avancée (1) TAD arbre binaire. Terminologie avancée (2) Terminologie avancée (3)

Les arbres binaires. Terminologie avancée (1) TAD arbre binaire. Terminologie avancée (2) Terminologie avancée (3) Les arbres Structures les plus importantes et les plus utilisées en informatique Liste = cas dégénéré d arbre Eemples: Arbres généalogiques Arbres de classification Arbres d epression / - Traduction de

Plus en détail

Apprentissage d automates sur les protéines

Apprentissage d automates sur les protéines Apprentissage d automates sur les protéines Approche par fusion de fragments significativement similaires (Jobim 04) François Coste, Goulven Kerbellec, Boris Idmont, Daniel Fredouille Christian Delamarche

Plus en détail

2 Profil : paramétrage de WinDesign

2 Profil : paramétrage de WinDesign Manuel Utilisateur 2 Profil : Paramétrages de WinDesign Date dernière révision : 02/2011 La documentation utilisateur de WinDesign se décompose en : U5 manuels généraux 1 Installation Administration Organisation

Plus en détail

- Mobiliser les résultats sur le second degré dans le cadre de la résolution d un problème.

- Mobiliser les résultats sur le second degré dans le cadre de la résolution d un problème. Mathématiques - classe de 1ère des séries STI2D et STL. 1. Analyse On dote les élèves d outils mathématiques permettant de traiter des problèmes relevant de la modélisation de phénomènes continus ou discrets.

Plus en détail

Informatique. Programmation en Python.

Informatique. Programmation en Python. BCPST 1 B 13 septembre 2015 Informatique. Programmation en Python. Ce document est un support de cours, il vous permet d avoir sa structure et ses éléments les plus importants. Au cours des séances en

Plus en détail

Master Informatique Fondamentale - M1 Compilation

Master Informatique Fondamentale - M1 Compilation Master Informatique Fondamentale - M1 Compilation Analyse Statique Paul Feautrier ENS de Lyon Paul.Feautrier@ens-lyon.fr perso.ens-lyon.fr/paul.feautrier 12 mai 2007 1 / 38 Indécidabilité de la Terminaison

Plus en détail