(Este es un post cruzado de https://cstheory.stackexchange.com/questions/11676/determining-if-a-grammar-can-be-converted-to-ll1-llk con la esperanza de conseguir un público más amplio).
Me gustaría saber si hay una manera de determinar si una gramática libre de contexto se puede convertir en
- una gramática LL(1)
- una gramática LL(k), sea cual sea el valor de k (por lo que el algoritmo debe dar el valor de k)
Por "puede convertirse en", quiero decir que la nueva gramática (LL) debe generar el mismo lenguaje que la antigua gramática.
Si no se puede hacer, agradecería algunas referencias. También me interesan las formas de conseguir el mismo resultado en condiciones más restrictivas (por ejemplo, sólo para gramáticas libres de contexto no ambiguas).