Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Proving a Language to be regular

Pumping Lemma is used to prove a language to be not regular. But How a language can be
proved to be regular ? In particular,

Let L be a language. Define half(L) to be  
{ x | for some y such that |x| = |y|, xy is in L}.  
Prove for each regular L that half(L) is regular.  

Is there any trick or general procedure to tackle such kind of questions ?

like image 652
Happy Mittal Avatar asked Dec 26 '10 13:12

Happy Mittal


2 Answers

If you can correctly describe your language L by an NFA or DFA, then it will be regular.

There is a well known equality of NFAs, DFAs, regular grammars and regular expressions, so a representation of L in any of these formalisms should do.

like image 137
miku Avatar answered Sep 20 '22 23:09

miku


Provide a regular grammar or a finite automaton that matches the language. For the full list of properties you can prove to show a language is regular, see the first lines of the Wikipedia Article on regular languages.

like image 39
phihag Avatar answered Sep 21 '22 23:09

phihag