Analyse syntaxique 1Qu'est-ce qui dit ?Langage : moyen de communicationconstructeurémetteur analyseurphrase récepteurde phrase de phraseémetteur : engendre la phrase selon la grammairerécepteur : doit reconnaître la phrase« La phrase appartient-elle au langage ? »tout système informatique interactif est un récepteur !Le problème de la reconnaissance est centralDEUG 2 2000Analyse syntaxique 2Analyse syntaxique : définitionAnalyse syntaxique =procédure permettant de décider si une phrase appartient à un langage.Dans la pratique, un analyseur syntaxique donne également la structure de la phraseconstructeurémetteur analyseurphrase récepteurde phrase de phraseGrammaire dulangageDEUG 2 2000Page 1Analyse syntaxique 3ExempleAXIOME ::= EXPREXPR ::= TERM + TERM | T ERM * TERMTERM ::= NOMBRE | ( EXPR )NOMBRE ::= CHIFFRE | CHIFFRE NOMBRECHIFFRE ::= 1 | 0Les phrases suivantes sont-elles des expressions ?"101" "1+10+11" "((((1+1))))*(0+0)"Peut-on écrire une fonction qui teste si les phrases appartiennent au langage ?DEUG 2 2000Analyse syntaxique 4Principe de baseUne chaîne est une phrase d'un langage si on peut trouver une application des règles qui l'engendre.Idée : interpréter une règle de grammaire comme une fonctiongénération : une règle-fonction insère des mots dans la phrasereconnaissance : une règle-fonction efface les mots !AXIOME ("1 + 1") =>EXPR ("1 + 1") =>(TERM; /+; TERM) ("1 + 1") =>(NOMBRE; /+; TERM) ("1 + 1") =>(/1; /+; ...