Erreur dans l'exemple de suppression de la récursivité à gauche

Re: Erreur dans l'exemple de suppression de la récursivité à gauche

par Delestre Nicolas,
Nombre de réponses : 0

Bonjour,

Vous avez tout à fait raison.

La suppression d'une règle récursive à gauche de type A  Aα | β avec β qui ne commence pas par A consiste à remplacer ces deux règles par :

  • A → βA'
  • A' →  αA' | ε

On peut généraliser cela en remplaçant A 12 | .. | n |  β1 |  β2 ... |  βm par :

  • A  β1A' |  β2A' ... |  βmA'
  • A' α1A' |  α2A' | .. | αnA' | ε

Dans l'exemple du cours (transparent 12 du cours Analyse Syntaxique), on a :

  • E → E add T | E sous T | T 

donc

  • α1 = add T
  • α2 = sous T
  • β1 = T. 

On doit donc remplacer ces trois règles par les règles suivantes :

  • E → TE'
  • E' → add T E' | sous T E' | ε

Merci pour cette rectification. Je vais ajouter un erratum au cours.

Cordialement.