Mi pregunta es sencilla, cuando se convierte una gramática a CNF, ¿qué ocurre cuando una regla empieza a repetirse varias veces?
¿Es bueno terminar con reglas como $U_1 \rightarrow SB, U_2 \rightarrow SB, etc...$ ?, ¿O es mejor utilizar una única variable en este caso?
Un ejemplo que vi:
Tenemos...
$S_0 \rightarrow ASB|SB|AS$
$S \rightarrow ASB|SB|AS$
$etc...$
Y estamos en el último paso, así que tenemos que limpiar las reglas restantes que no están en CNF.
1.
$S_0 \rightarrow AU_1|SB|AS$
$S \rightarrow ASB|SB|AS$
$U_1 \rightarrow SB$
$etc...$
2.
$S_0 \rightarrow AU_1|SB|AS$
$S \rightarrow AU_2|SB|AS$
$U_1 \rightarrow SB$
$U_2 \rightarrow SB$
$etc...$
Así que mi pregunta es: ¿No puedo simplemente poner en el paso 2. $S \rightarrow AU_1|SB|AS$ en lugar de crear la variable $U_2$ ?