IFT313 Froduald Kabanza Département dinformatique Université de Sherbrooke Révision finale.

download IFT313 Froduald Kabanza Département dinformatique Université de Sherbrooke Révision finale.

of 24

  • date post

    04-Apr-2015
  • Category

    Documents

  • view

    102
  • download

    0

Embed Size (px)

Transcript of IFT313 Froduald Kabanza Département dinformatique Université de Sherbrooke Révision finale.

  • Page 1
  • IFT313 Froduald Kabanza Dpartement dinformatique Universit de Sherbrooke Rvision finale
  • Page 2
  • IFT313 Froduald Kabanza2 Analyse Lexicale - Expressions rgulires Savoir ce quun langage rgulier. tre capable dcrire une expression rgulire dcrivant un langage donn. tre capable de faire une recherche dans un fichier texte en utilisant grep. tre capable dcrire un programme cherchant des patterns dans un fichier texte avec regex.
  • Page 3
  • IFT313 Froduald Kabanza3 Analyse lexicale - Automates tats finis tre capable dcrire une automate fini acceptant un langage donn. tre capable de programmer un automate fini reconnaissant les tokens dun langage donn.
  • Page 4
  • IFT313 Froduald Kabanza4 Analyse lexicale de Exp. Reg. AFN tre capable dcrire un automate fini acceptant le langage dcrit par une expression rgulire donne.
  • Page 5
  • IFT313 Froduald Kabanza5 Analyse lexical de AFN AFD tre capable dcrire un automate fini dterministe correspondant un automate fini non dterministe. tre capable de simuler un AFN.
  • Page 6
  • IFT313 Froduald Kabanza6 Analyse lexical gnrateurs danalyseurs lexicaux Savoir utiliser JFLEX pour gnrer un analyseur lexical.
  • Page 7
  • IFT313 Froduald Kabanza7 Minimisation dun AFD Savoir minimiser la taille (nombre dtats) dun AFD.
  • Page 8
  • IFT313 Froduald Kabanza8 Analyse syntaxique - grammaires Savoir reconnatre et expliquer les diffrentes types de grammaires. Pouvoir donner une grammaire acceptant un langage donn. Pouvoir dcrire le langage accept par une grammaire donne. Connatre le rapport entre les grammaires et les automates finis. Pouvoir expliquer le concept darbre danalyse. Pouvoir expliquer ce quune grammaire ambigu.
  • Page 9
  • IFT313 Froduald Kabanza9 Analyse syntaxique automate pile Savoir dcrire un automate pile acceptant un langage donn ? Savoir simuler lexcution dun automate pile ? Exprimer le pouvoir dexpressivit dun automate pile ?
  • Page 10
  • IFT313 Froduald Kabanza10 Analyse syntaxique LL automate pile LL Pouvoir dcrire et simuler un automate pile LL pour une grammaire donne.
  • Page 11
  • IFT313 Froduald Kabanza11 Analyse syntaxique LL Nullable, First, Follow, table danalyse Savoir dfinir les concepts de symboles nullables, densemble first et densemble follow pour une grammaire. Pouvoir dcrire et appliquer un algorithme pour calculer les symboles nullables, lensemble first et lensemble follow pour une grammaire. Savoir calculer une table danalyse LL(1) pour une grammaire LL(1) donne. Pouvoir dterminer si une grammaire est LL(1)
  • Page 12
  • IFT313 Froduald Kabanza12 Analyse syntaxique LL non-rcursif Comprendre et pouvoir dcrire et simuler lalgorithme danalyse LL (1) non-rcursif. Pouvoir transformer une grammaire non LL(1) en une grammaire LL (1) Pouvoir transformer une grammaires ambigu en une grammaire non-ambigu. Pouvoir liminer la rcursivit gauche (left recursion). Pouvoir utiliser la factorisation gauche (left factoring)
  • Page 13
  • IFT313 Froduald Kabanza13 Analyse syntaxique LL rcursif Pouvoir programmer un analyseur syntaxique rcursif pour une grammaire donne. Connatre les fondements dun gnrateur danalyseur syntaxique LL tel que JavaCC.
  • Page 14
  • IFT313 Froduald Kabanza14 Analyse syntaxique - grammaires Savoir reconnatre et expliquer les diffrentes types de grammaires. Pouvoir donner une grammaire acceptant un langage donn. Pouvoir dcrire le langage accept par une grammaire donne. Connatre le rapport entre les grammaires et les automates finis. Pouvoir expliquer le concept darbre danalyse. Pouvoir expliquer ce quune grammaire ambigu.
  • Page 15
  • IFT313 Froduald Kabanza15 Analyse syntaxique automate pile Savoir dcrire un automate pile acceptant un langage donn ? Savoir simuler lexcution dun automate pile ? Exprimer le pouvoir dexpressivit dun automate pile ?
  • Page 16
  • IFT313 Froduald Kabanza16 Analyse syntaxique LL automate pile LL Pouvoir dcrire et simuler un automate pile LL pour une grammaire donne.
  • Page 17
  • IFT313 Froduald Kabanza17 Analyse syntaxique LL Nullable, First, Follow, table danalyse Savoir dfinir les concepts de symboles nullables, densemble first et densemble follow pour une grammaire. Pouvoir dcrire et appliquer un algorithme pour calculer les symboles nullables, lensemble first et lensemble follow pour une grammaire. Savoir calculer une table danalyse LL(1) pour une grammaire LL(1) donne. Pouvoir dterminer si une grammaire est LL(1)
  • Page 18
  • IFT313 Froduald Kabanza18 Analyse syntaxique LL non-rcursif Comprendre et pouvoir dcrire et simuler lalgorithme danalyse LL (1) non-rcursif. Pouvoir transformer une grammaire non LL(1) en une grammaire LL (1) Pouvoir transformer une grammaires ambigu en une grammaire non-ambigu. Pouvoir liminer la rcursivit gauche (left recursion). Pouvoir utiliser la factorisation gauche (left factoring)
  • Page 19
  • IFT313 Froduald Kabanza19 Analyse syntaxique LL rcursif Pouvoir programmer un analyseur syntaxique rcursif pour une grammaire donne. Connatre les fondements dun gnrateur danalyseur syntaxique LL tel que JavaCC.
  • Page 20
  • IFT313 Froduald Kabanza20 Automate pile LR Notion de poigne (handle) Pouvoir dfinir et simuler un automate pile LR. Pouvoir dfinir la notion de poigne (handle).
  • Page 21
  • IFT313 Froduald Kabanza21 Prfixes viables lments LR(0) AFD LR()) Pouvoir calculer lAFD des prfixes viables. Pouvoir gnrer une table danalyse LR(0). Pouvoir dcrire le driver LR(0) et le simuler.
  • Page 22
  • IFT313 Froduald Kabanza22 Analyse LR(0) Analyse SLR(1) Pouvoir dfinir et simuler lalgorithme danalyse LR (Driver LR) Pouvoir gnrer une table danalyse SLR(1) pour une grammaire donne. Pouvoir reconnatre les grammaires SLR(1).
  • Page 23
  • IFT313 Froduald Kabanza23 Analyse LR(1) Analyse LALR(1) Pouvoir dfinir ce quun lment LR(1). Pouvoir calculer lAFD LR(1). Pouvoir construire la table danalyse LR(1). Pouvoir reconnatre des grammaires LR(1). Pouvoir calculer lAFD LALR(1) Pouvoir construire la table danalyse LALR(1). Pouvoir reconnatre des grammaires LALR(1). Comprendre les forces relatives des analyses LR(0), SLR(1), LR(1) et LALR(1). Connatre lhirarchie entre les diffrentes classes de grammaires hors- contexte : LL(0), LL(1), LR(0), LR(1), SLR(1), LALR(1).
  • Page 24
  • IFT313 Froduald Kabanza24 Java CUP Pouvoir spcifier une grammaire avec Java CUP Pouvoir spcifier des actions smantiques avec Java CUP