Decidability of regularity of context-free grammar

540 Views Asked by At

I've searched for a long time, but cannot find this. Maybe it's an open problem, but it seems not that hard.

Let's say I have a context-free grammar, say in Chomsky normal form for definiteness. Is there an algorithm to check whether it generates a regular language?

Of course, some simple cases can be easily decided, but I want to know whether there is a general procedure. I also know that for general grammars it is undecidable. If it is an open problem, so be it, but I won't think it is just because I haven't been able to find the answer. :-)

1

There are 1 best solutions below

2
On BEST ANSWER

The following theorems are proved in Jeffrey Shallit's A Second Course in Formal Languages and Automata Theory.

Theorem 6.6.6. It is undecidable whether, given a CFG $G$, $L(G)$ is regular.

Theorem 6.6.7. There exists no algorithm that, given a CFG $G$ such that $L(G)$ is regular, outputs a DFA that accepts $L(G)$.