1 / 58

Langages - Grammaires - Automates Spécification et Preuve Formelle

Langages - Grammaires - Automates Spécification et Preuve Formelle. J.Y. Lafaye jylafaye@univ-lr.fr 05 46 51 39 60. Introduction. L'informatique traite de l'Information L'information s'exprime par des LANGAGES Les langages sont soumis à des règles de GRAMMAIRE

cathy
Télécharger la présentation

Langages - Grammaires - Automates Spécification et Preuve Formelle

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Langages - Grammaires - Automates Spécification et Preuve Formelle J.Y. Lafaye jylafaye@univ-lr.fr 05 46 51 39 60 Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  2. Introduction • L'informatique traite de l'Information • L'information s'exprime par des LANGAGES • Les langages sont soumis à des règles de GRAMMAIRE • Les grammaires (hors contexte) se représentent par des AUTOMATES • Les automates sont des MACHINES à ETATS ( i.e. : des PROGRAMMES) • La METHODE "B" s'appuie sur un langage de machines à états pour spécifier et PROUVER la CORRECTION de programmes : • Machines Abstraites • Raffinements • Implémentations Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  3. Plan du cours 1 : Concepts fondamentaux • Grammaires • Terminologie • Typologie des grammaires • Grammaires hors contexte et grammaires régulières • Automates • Automates finis • propriétés • Automates et grammaires • Expressions régulières (rationnelles - regexp) • Produit synchronisé • Automates et vérification du logiciel Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  4. Plan du cours 2 : Concepts opérationnels • Méthode B • Spécification Formelle en B • Preuve formelle • Pratique de l'AtelierB (spécification, obligations de preuve, preuve, génération de code) Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  5. Grammaires Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  6. Grammaires : Exemple Introductif • Un ensemble de TERMINAUX {le, la, lièvre, tortue, retard, rattrape, voit, dort} • VARIABLES {PH, GN, VT, VI, DT, NM } • REGLES de dérivation PH  GN VT GN PH  GN VI GN  DT NM VT  "rattrape" VT  "voit" VI  "dort" NM  "lièvre" NM "tortue" NM  retard DT  "le" DT  "la" • Productions : Phrase_1 : le lièvre voit la tortue Phrase_2 : la tortue dort Phrase_3 : la tortue rattrape le retard etc… Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  7. Grammaires : Exemple Introductif • Syntaxe et Sémantique • La validité syntaxique dépend de la grammaire le lièvre voit la tortue SYNT  SEM le retard rattrape le lièvre SYNT ¬SEM la lièvre voit le tortue SYNT ¬SEM lièvre le la dort ¬SYNT • La validité sémantique dépend d'un Système Formel A partir - d'axiomes - de séquents (règles de production de mots / phrases) - de règles de production de séquents (méta-langage) - de règles d'inférence (raisonnement) On PROUVE FORMELLEMENT (si décidable) la validité sémantique des productions du langage Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  8. Grammaires : Exemple Introductif • La frontière entre syntaxe et sémantique est floue • REGLES de dérivation PH  GN VT GN PH  GN VI GN "le" NMM GN "la" NMF VT  "rattrape" VT  "voit" VI  "dort" NMM"lièvre" NMM "retard" NMF"tortue" Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  9. Grammaire : Définitions • Définitions • Un alphabet est un ensemble fini de "lettres" La taille d'un alphabet est le nombre de ses éléments T = {a,b,c} #T = 3 • Un mot(phrase) est une séquence de lettres La taille d'un mot(fini) est la longueur de la séquence m = <a,a,c,b> #m = 4 qui s'écrit : m = aacb ou : a2cb • e représente le mot videe = < > Convention : a : T  a0 = e • Opérations sur les mots  opération sur les séquences (concaténation, retournement, …) aussi : a+ et a* (mots infinis) Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  10. Grammaire : Définitions • Grammaire G G = {T, V, D, S} • T : Terminaux • V : Variables • D : Règles de dérivation D : (V  T)* V+(V  T)* (V  T)* • S : Symbole de départ (axiome) (S  V) • On dénote quelquefois par  l'ensemble V  T (symboles) et donc : D :  * V +* * Fermeture pour la concaténation (élément vide exclu) Idem avec élément vide Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  11. Opérations sur les langages  Opérations sur les ensembles Grammaire : Définitions • Dérivation Directe L'élément v : *dérive directement de u : *( i.e. : u  v)ssi  x,y,u',v' :* | (u', v')   u = x u' y  v = x v' y • Dérivation Récursive L'élément v : *dérive indirectement de u : *ssi  s : seq (*)  u = head(s)  v = last(s)  (  i : 2..#s  (s(i-1)  s(i)) ) On note u * v • Langage Le langage (L) généré par une grammaire est l'ensemble des mots formés de terminaux, qui peuvent être obtenus par itération des règles de dérivation : L  T* Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  12. le DT lièvre GN NM voit VT PH le DT lièvre GN NM Analyse syntaxique • L'analyse syntaxique permet de construire l'arbre de dérivation d'un mot (d'une phrase) exemple : "le" "lièvre" "voit" "le" "lièvre" Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  13. end end end end end end On peut (…doit) lever les ambiguïtés d'une grammaire Grammaires ambiguës • Certaines grammaires sont ambiguës INSTR  si EXPR alors INSTR INSTR  si EXPR alors INSTR sinon INSTR EXPR  … siE1alorssi E2alors I1 sinonI2 Deux dérivations possibles : si E1 alors (si E2 alors I1) sinon I2 si E1 alors (si E2 alors I1 sinon I2) Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  14. Typologie des grammaires • Grammaires générales (Type 0) • Pas de contrainte sur la forme des règles de dérivation (sinon que le langage doit être "récursivement énumérable" i.e. : calculable par une machine de Turing) ( engendre le langage : {n : N1 0 n1 n2 n} ) Récursivement énumérable : boucle infinie possible dans la MT Langage récursif : terminaison assurée S TZ T  0T1C T   C1 1C CZ  Z21Z  1 Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  15. Typologie des grammaires • Grammaire propre • Pas de symboles inutiles (inaccessibles) • Pas de -productions Suppression (si possible) des règles de la forme A *  • Pas de productions unitaires Suppression des règles de la forme A * B Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  16. Typologie des grammaires (contextuelles) • Grammaires Contextuelles (Type 1) • Le RHS d'une règle est obligatoirement au moins aussi long que le LHS (exception éventuelle pour  ) engendre (à nouveau) le langage0n1n2n • Pour tester si un mot appartient au langage engendré par une grammaire contextuelle, on génère exhaustivement les mots de plus en plus longs en appliquant les règle de dérivation Si le mot étudié est de longueur "n", on dispose d'un critère d'arrêt Reconnaissables par des automates bornés linéairement S TZ T  0U1 T  01 U  0U1C U  01C C1  1C CZ  Z21Z 12 Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  17. S aB S  bA A  a A aS A  bAA B  b B  bS B  aBB Mots ayant autant de "a" que de "b" Retour Typologie des grammaires (Non contextuelles) • Grammaires non contextuelles (Type 2) (également : Hors contexte / Algébriques) La partie gauche d'une règle de dérivation est constituée d'une seule variable i.e. : Règles de la forme : A  X, avec : A  V et X  (V  T)* • Exemple : langages avec expressions parenthésées • Le graphe d'analyse syntaxique est un arbre On pourrait également avoir des productions de la forme : A  aBbA Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  18. Typologie des grammaires (non contextuelles) • Propriétés Une grammaire non contextuelle est reconnaissable par un automate à pile • Notation de Backus-Naur (applicable aux grammaires hors contexte) • Les terminaux sont des littéraux écrits en caractères gras • Les non terminaux sont des littéraux encadrés de signes < --- > • La dérivation est exprimée par le symbole " ::= " • Les alternatives sont séparées par des signes " | " Ex : <question> ::= { <projection> | <formule> } <projection> ::= <terme> | <projection>, <terme> <terme> ::= <variable> <attribut> … Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  19. Typologie des grammaires (non contextuelles) • Forme normale de Chomsky • Toute grammaire non contextuelle peut s'exprimer avec des règles de la forme suivante : A  BC D  d avec : A, B, C, D  V et d  T • la FN de Chomsky permet entre autres d'appliquer l'algorithme de Cocke-Youngue-Kasami pour décider si un mot appartient ou non au langage généré par la grammaire Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  20. Nb. : l'exemple de la page 17 est en FN Greibach Typologie des grammaires (non contextuelles) • Forme normale de Greibach • Toute grammaire non contextuelle peut s'exprimer avec des règles de la forme suivante : A  a B1 … Bm(m  0) avec : a  T  i : 1..m  Bi V • Cette forme normale permet de produire un AFN qui simule une grammaire non contextuelle • Certaines grammaires hors contexte sont ambiguës • La question de savoir si une grammaire hors contexte est ambiguë ou non est indécidable Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  21. Exemple : S A S C A  aA A  bA A  aB B  aB B  bC C  abC C   Mots de la forme : (1+(a+b)*aa*b)(ab)* Retour Typologie des grammaires (régulières) • Grammaires Régulières (Type3) (Linéaires droite/gauche) Les règles peuvent se mettre sous la forme (FN – Chomsky pour les GR) : A  uB et C  v avec : A, C V, B  T  V, u, v  T* Ici : Linéaire droite. Sinon (linéaire gauche) A  Bu Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  22. Typologie des grammaires (régulières) • Propriétés : • Une grammaire régulière est reconnaissable par un automate fini • Les mots sont représentables par des expressions régulières • L'ensemble des langages réguliers est dénombrable • Définition • Un langage régulier est un langage qui peut s'exprimer (être généré ) à l'aide d'une grammaire régulière Le langage {n : N  anbn} n'est pas régulier (cf. lemme de pompage) Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  23. Automates Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  24. Automates finis • Automate fini : (Q, , , Qo, F) • Un ensemble fini d'états : Q • Un ensemble d'événements (alphabet) :  (avec  ) • Une fonction de transition :   : Q x  P (Q) • Un ensemble d'états initiaux : Qo (Qo  Q) • Un ensemble d'états finals (acceptants) : F (F  Q) 2Q Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  25. Automates finis • Automate fini et grammaire • Un automate fini reconnaît une grammaire régulière • Toute grammaire régulière peut s'exprimer par un automate fini • Un mot est reconnu si la fonction de transition appliquée à ce mot permet à l'automate de terminer dans un état acceptant Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  26. Simule la grammaire régulière : S ::= A | C A ::= aA | bA | aB B ::= aB | bC C ::= abC |  Et le langage : (1+(a+b)*aa*b)(ab)* a ab a, b qo q1 q2 a b Automates finis • Exemple • Q = {qo; q1; q2} Qo = {qo; q2} F = {q2} •  = {a; b} •  = { ((qo,a) qo); ((qo,b) qo); ((qo,a) q1); ((q1,a) q1); ((q1,b) q2); (q2,ab) q2) } notation "abusive", mais admise Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  27. qo q1 q2 a, b a ab a b (1+ (a + b)*aa*b)(ab)* Automates finis (propriétés) • Propriétés d'un automate fini • Nombre fini d'états • Déterministe (AFD) ou non déterministe (AFN) • Plusieurs automates différents peuvent reconnaître le même langage • Des automates sont équivalents ssi ils reconnaissent le même langage • Tout AFN admet au moins un AFD équivalent • Un automate fini est représentable par une expression régulière Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  28. a a a a b b a c c c automates finis : équivalence de trace • Exemple – On peut définir plusieurs formes d'équivalences (bi-simulation …) Retardement du choix : Après le signal "a", le premier automate possède une seule trace possible, le second offre toujours deux possibilités langage commun : a(a+b)c Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  29. AFN a c b a {q3} q2 {q1} {q1,q2} {qo} q1 q3 qo d AFD équivalent a c d b c automates finis : transformation AFN  AFD langage commun : a(c+bc+d) Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  30. AFN a c b a qo q1 q2 q3 d {q0} a {q1,q2} d b c c {q1} {q3} automates finis : transformation AFN  AFD a b c d q1, q2 q0 q1, q2 q1 q3 q3 q3 q1 q3 Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  31. AFD avec   c b a q3 {q1} {qo,q1} {q2} {q3} q1 q2 qo d c AFD équivalent sans  c a b d automates finis : suppression des  -transitions Langage commun : (c + abc + ad) Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  32. Expressions Régulières • Définition (par induction) • "1" est une ER (neutre) • Si A est une ER, …………. A+ est une ER (itération non vide) • Si A est une ER, …………. A* est une ER (itération, vide permis) • Si A est une ER, …………. (A) est une ER (parenthèsage) • Si A et B sont des ER, …… A+B est une ER (alternative) • Si A et B sont des ER, …… AB est une ER (séquencement) • E ::= (E) | E+ | E* | E+E | E E | symb • symb ::= 1, a…z , A…Z Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  33. A X B Expressions Régulières • Calcul effectif des expressions régulières pour un AF • On remarque que d'un état donné, ou bien l'on boucle, ou bien l'on ne boucle pas • On écrit un système d'équation qui pour chaque état indique les possibilités pour l'état suivant • L'équation X = AX + B a pour solution X = A*B Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  34. b c a a q3 b d qo q1 q2 Expressions Régulières • Exemple • qo = a q1 + b q2 • q1 = b q1 + c q3 • q2 = a q1 + d q3 • q3 = e • Que l'on résout par substitution • q2 = a q1 + d • q1= b q1 + c q1 = b* c • qo = a b* c + b a b*c + bd qo = (a+ba)b*c + bd • Les règles de réécriture sont ea = a e = a aa* = a*a = a+ a + e = a (a+b)c = ac + bc c(a+b) = ca + cb a + b = b + a Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  35. Automates finis (automates à pile) • Automate à pile (Q, , , , qo, Z, F) • Un ensemble fini d'états : Q • Un ensemble d'événements (alphabet) :  (avec ) • Ensemble des symboles de la pile :  • Une fonction de transition :   : Q x  x P (Q x *) • Un état initial : qo(qo  Q ) • Z : symbole de pile vide (Z   ) • Un ensemble d'états finals (acceptants): F (F  Q ) Ou acceptation par "Pile Vide" • La transition dépend de l'état de la pile : automate à mémoire. Un tel automate simule les grammaires non contextuelles 2Q x * Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  36. a a Automates finis (automates à pile) • Transition dans un automate à pile • un événement est consommé (éventuellement ) • le symbole au sommet de la pile est dépilé • la transition s'effectue vers un autre état avec écriture (éventuelle) dans la pile (selon les règles édictées dans  ) Configuration : (q, P) (q', P') (q, pX) (q', p' X) • Reconnaissance d'un mot • Un mot est reconnu si l'automate termine • dans un état acceptant OU • avec une pile vide. • On peut transformer dans l'automate les états acceptants, de manière à assurer qu'ils sont atteints uniquement lorsque la pile est vide. Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  37. Indéterminisme Automate à pile : exemple • Exemple • Grammaire • Alphabet {0,1} • Règles S ::= 0S1S::= 01 • Forme normale de Greibach :S ::= 0S A S ::= 0 A A ::= 1 • Automate à pile associé • Reconnaissance du mot : "0011" (qo,,Z)(q,S)(q,0,S) (q, SA) (q,0,S)  (q, A) (q,1,A)  (q, ) mot restant à lire pile transition - Z (qo,,Z)(q, S) 0011 S (q,0,S) (q, SA) 011 SA (q,0,S) (q, A) 11 AA (q,1,A)  (q, ) 1 A (q,1,A)  (q, )  Z  pile vide  mot reconnu Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  38. Grammaire (qo,,Z)(q,S)(q,0,S) (q, SA) (q,0,S)  (q, A) (q,1,A)  (q, ) 0, S : SA 0, S : A 1, A :  Automate , Z : S q qo Exécution  0 0 1 1 qo,Z q,S q,SA q,AA q,A q,Z Automate à pile : exemple S ::= 0S A S ::= 0 A A ::= 1 Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  39. Produit synchronisé d'automates finis • Synchronisation de systèmes parallèles (concurrents) • Si deux automates s'exécutent de façon indépendante, ils sont équivalents à un seul automate "produit" (point de vue global) Automates indépendants : A1 (Q1, 1, 1, Qo1, F1) A2 (Q2, 2, 2, Qo2, F2) Automate Produit : P(Q1xQ2, 1x2, p, Qo1xQo2, F1xF2) avec : p = { q1,q'1:Q1; q2,q'2:Q2; a1:1; a2: 2 | ((q1,a1) q'1)  1  ((q2,a2) q'2)  2  (((q1,q2), (a1,a2)) (q'1,q'2))) } On peut (aisément) étendre ces définitions au cas des automates à pile Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  40. Produit synchronisé d'automates finis • Synchronisation de systèmes parallèles (concurrents) • Si deux automates s'exécutent de façon synchronisée, ils sont équivalents à un seul automate "produit synchronisé" Automates indépendants : A1 (Q1, 1, 1, Qo1, F1) A2 (Q2, 2, 2, Qo2, F2) Automate Produit Synchronisé: P (Q1xQ2, 1x2, s, Qo1xQo2, F1xF2) avec : s  p Seuls certains couples de transitions sont admis (Cette restriction exprime la synchronisation) Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  41. , a? A1*A2 : , a!  e,E e, R A1 : e ,  ,  a?, a! a! a? r a?,  a!,   a!,  R  a?,  a!, a? a? a! A2 : ,  ,  E a!, a! r,R r,E , a? , a!  a?, a? Produit d'automates finis : pas de synchronisation Exemple Pas de Synchronisation Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  42. A1 *Sync1 A2  A1 : e e,R a! a? ,  r  R a!, a? a?, a!  a? a! A2 : E ,  r,E  Produit d'automates finis : synchronisation complète Exemple Synchronisation complète Transmission instantanée Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  43. A1 *Sync2 A2 : , a?  e,E e, R A1 : , a! e a! a? ,  ,  r  a?, a! a!,  R  a!,  a?,  a? a! A2 : a!, a? a?,  E r,R r,E ,  ,   , a? , a! Produit synchronisé d'automates finis : synchronisation partielle Synchronisation avec délais de transmission Exemple Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  44. s? E1 E1 s! s! s? M1 E2 E2 s! E3 E3 s? b? a! b! c? c! a? Différents modes de synchronisation • Broadcast – Modèle synchrone centralisé • Modèle asynchrone autonome Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  45. Automates et vérification du logiciel • Un automate représente le comportement d'une classe (  DET; Nb. : Langage  ensemble des scénarios) • Comportement d'une implémentation ( automate : IMPL) • capturé à partir du texte source • observé par exécution du programme (test boîte noire) • Comportement spécifié - objectif de test (automate : SPEC) • les états acceptants sont les états terminaux d'un comportement correct • Ces deux automates partagent le même alphabet • On calcule l'automate produit synchronisé : IMPL * SPEC • Si les états terminaux du produit synchronisé sont tous des états correspondant à des états acceptants de SPEC, le programme est conforme à sa spécification, Sinon les traces non acceptantes indiquent des erreurs Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  46. Automates et Model Checking On peut utiliser les automates • Pour spécifier • des propriétés (Invariants d’états, Gardes) • des actions • Pour simuler des exécutions (génération de traces exécutables) • Pour tester des propriétés (Model Checking) • de logique • de logique temporelle Cela suppose que l’on puisse définir des variables et des règles de synchronisation Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  47. Nom état Invariant d’état CuvePleine Livraison CuveVide CEC = True Niv = CC Niv < SA CEC := False Automates et Model Checking évènement Nom état Garde Invariant d’état Action Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  48. Automates et Model Checking • Les systèmes déclarent • plusieurs process (P1, P2, P3) • des canaux de communication (c, d, f, h) • des variables et constantes globales • Les process déclarent des constantes et variables locales éventuellement de type “tableau” (array) L’usage des variables permet de simuler des automates à pile • La synchronisation s’effectue via les canaux ex. : signaux c? dans P1 et c! dans P2 sur le canal c Lorsque l’on simule l’activité d’un système, la synchronisation est activée Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  49. Automates et Model Checking • Un système correspond à l’ensemble des traces exécutables (i.e. : le langage de la grammaire associée) • L’ensemble de ces traces est (théoriquement … cf. : combinatoire) représentable par un arbre Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

  50. Opérateur sur les états : A : Tous les chemins E : Certains chemins : Uniformement sur tous les états ( aussi : [ ] ) : Nécessairement sur au moins un état ( aussi : <> ) Eléments de logique temporelle • On peut exprimer des propriétés sur l’ensemble des traces • formule de la forme X  P Opérateur sur les chemins : A / E Formules de la logique classique :     … Langages, Grammaires, Automates. Spécification et Preuve Formelle : METHODE "B"

More Related