• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deNϵ.
• Enfin, si la grammaire originale produisait le mot vide, on ajoute la règleS′→ϵ.
14
Suppression des ϵ-transition
• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deNϵ.
• Enfin, si la grammaire originale produisait le mot vide, on ajoute la règleS′→ϵ.
Suppression des ϵ-transition
• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deNϵ.
• Enfin, si la grammaire originale produisait le mot vide, on ajoute la règleS′→ϵ.
14
Suppression des ϵ-transition
• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deNϵ.
• Enfin, si la grammaire originale produisait le mot vide, on ajoute la règleS′→ϵ.
Suppression des ϵ-transition
• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deNϵ.
• Enfin, si la grammaire originale produisait le mot vide, on ajoute la règleS′→ϵ.
14
Suppression des ϵ-transition
• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deNϵ.
• Enfin, si la grammaire originale produisait le mot vide, on ajoute la règleS′→ϵ.
Suppression des ϵ-transition
• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deNϵ.
• Enfin, si la grammaire originale produisait le mot vide, on ajoute la règleS′→ϵ.
14
Suppression des ϵ-transition
• ϵ-transition :A→ϵ.
• On peut transformer la grammaire de telle manière que l’on ait un axiome qui n’apparaît dans la partie droite d’aucune règle et telle qu’il n’y ait pas d’ϵ-transition excepté pour l’axiome.
• Pour avoir un axiome qui n’apparaît dans aucune partie droite :
• On ajoute un nouveau non-terminalS′, défini comme axiome, ainsi que la règleS′→S.
• Pour supprimer lesϵ-transitions :
• On calculeNϵ={X∈N|X→∗ ϵ}.
• Pour toute règleA→α∈P, on ajoute aussi toutes les règles A→α′oùα′est obtenu en supprimant deαun ou plusieurs symboles deN .
• Pour calculerNϵ={X∈N|X→∗ ϵ}:
Nϵ={}
continue = True while continue :
continue = False
pour tout(X→α)∈PetX∈/ Nϵ:
si tous les symboles deαsont dansNϵ:// notamment siα=ϵ
Nϵ=Nϵ+X continue = True
15
• Pour calculerNϵ={X∈N|X→∗ ϵ}: Nϵ={}
continue = True while continue :
continue = False
pour tout(X→α)∈PetX∈/ Nϵ:
si tous les symboles deαsont dansNϵ:// notamment siα=ϵ
Nϵ=Nϵ+X continue = True
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
• A→aCdE// suppression des deux B
• A→aBCBd// suppression du E
• A→aCBd// suppression du premier B et du E
• A→aBCd// suppression du second B et du E
• A→aCd// suppression des deux B et du E
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
• A→aCdE// suppression des deux B
• A→aBCBd// suppression du E
• A→aCBd// suppression du premier B et du E
• A→aBCd// suppression du second B et du E
• A→aCd// suppression des deux B et du E
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
• A→aCdE// suppression des deux B
• A→aBCBd// suppression du E
• A→aCBd// suppression du premier B et du E
• A→aBCd// suppression du second B et du E
• A→aCd// suppression des deux B et du E
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
• A→aCdE// suppression des deux B
• A→aBCBd// suppression du E
• A→aCBd// suppression du premier B et du E
• A→aBCd// suppression du second B et du E
• A→aCd// suppression des deux B et du E
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
Suppression dans les règles des symboles deNϵ
Pour
• A→aBCBdE;
• Nϵ={B,E}.
Les règles obtenues sont :
• A→aBCBdE// pas de suppression
• A→aCBdE// suppression du premier B
• A→aBCdE// suppression du second B
• A→aCdE// suppression des deux B
• A→aBCBd// suppression du E
• A→aCBd// suppression du premier B et du E