Tell me more ×
Theoretical Computer Science Stack Exchange is a question and answer site for theoretical computer scientists and researchers in related fields. It's 100% free, no registration required.

It would be nice to collect a list of conditions that imply that a context-free language L is regular, i.e. conditions of the form: "if a given CFG/PDA has property P, then its languages is regular"

The property P does not have to characterize the CFGs generating regular languages. Furthermore, P does not have to be decidable, and P should "somehow depend" on the language being context-free ("the syntactic monoid of L is finite", "L is decidable in space o(log log n)" and so on, are not what I am looking for).

share|improve this question
seems very likely the general question is undecidable. the analogy is that there are other theorems that "is B actually A" where A is a "smaller" language class than B is undecidable. I recall a question on here wrt maybe CFLs that was similar but cant find it right now. – vzn Jun 1 '12 at 0:49
by "regularity" you mean, is it really a regular language right? – vzn Jun 1 '12 at 1:16
3  
ok found it. this question is very similar to this one, "is a CFG actually a RL" & is known to be undecidable – vzn Jun 1 '12 at 1:21
3  
@vzn I think OP is not looking for an algorithm to decide regularity of CFLs but rather for some sufficient conditions. For example, the regularity of a language of a TM is undecidable, but one sufficient condition is that if a language is decidable in $o(n log n)$, then it must be regular. – aelguindy Jun 1 '12 at 8:30
agreed, distinction is valid. but its also critical to know at same time the general problem is undecidable. "sufficient conditions" are generally closely connected with algorithms eg in the example you gave of o(n lg n) time complexity. – vzn Jun 1 '12 at 15:19

1 Answer

  1. Every unary context-free language is regular. (e.g. a direct consequence of Parikh's theorem)

  2. If every iterative/pumping pair of a context-free language L is degenerated, then L is regular, i.e. L is regular if, for all words x,u,y,v,z it satisfies: $$xu^nyv^nz \in L, \text{for all } n \geq 0 \implies xu^iyv^jz \in L, \text{ for all }i,j \geq 0.$$This was proved by Ehrenfeucht, Rozenberg, "Strong iterative pairs and the regularity of context-free languages", 1983. See "Context-free languages" by Berstel and Boasson for an exposition.

  3. If a context-free language is commutative and linear, then it is regular. (Ehrenfeucht, Haussler, Rozenberg, "On regularity of Context-free Languages", 1983)

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.