1
$\begingroup$

I am just curious is there any non regular language whose subset is regular?

  • 1
    Sure, any finite subset of a language is regular. Or the set of palindromes in $\{a,b\}$ is irregular but the set of palindromes in one letter is regular, if you need an infinite example.2012-11-13
  • 0
    @Thomas what do you mean by a set of palindromes in one letter. Can u give an example2012-11-13
  • 0
    Palindromes in one letter are just any $a*$ or $b*$. Basically, any word with only one letter is a palindrome.2012-11-13
  • 3
    Ouch! You've asked 21 questions, and accepted only a handful of answers. If you have received answers which have been particularly helpful, please take the time to show appreciation by accepting such answers.2012-11-13
  • 0
    I can provide a [cheat sheet](https://dl.dropbox.com/u/31345439/Theo1.jpg) from my "Theoretical Computer Science" course (in German). Just have a look at the top picture with all the boxes. From top to bottom (on thr right hand side) the descriptions are: all languages $\Sigma^*$, semi-decidable (Type 0), decidable, LOOP-decidable, NP, P, context free (Type 2), regular (Type 3), finite. Hope this might help :)2012-11-13
  • 0
    @ChristianIvicevic the cheat sheet link 404'ed for me. Would you mind relinking?2015-09-13
  • 0
    @piperchester This comment is very old and it seems I deleted the file from my Dropbox - luckily I have an updated version. You will find the mentioned overview of languages on the last page of my [cheatsheet](http://www.christian-ivicevic.com/Files/Theo15/Cheatsheet.pdf).2015-09-23

3 Answers 3

6

The empty language is a regular subset of any language at all.

More generally, every finite subset of any language is regular.

For example, let $L$ be the language $\{ a^n | n\text{ is prime} \} = \{ aa, aaa, aaaaa, a^7, \ldots\}$. Let $R$ be the subset of $L$ consisting just of $\{ aa, aaaaa, a^{11}, a^{109} \}$. Then $L$ is not regular, but $R$ is.

  • 0
    Can u give an example?2012-11-13
  • 1
    @user34790: Every finite language is regular because you can create a enumerate all elements extensionally. Furthermore there exists a regular expression of the form "word1 | word2 | ... | wordN" which implies the regularity of all finite languages.2012-11-13
  • 0
    @MJD How is R regular?2012-11-13
  • 0
    Every finite set is regular. http://math.stackexchange.com/questions/216047/formally-prove-that-every-finite-language-is-regular/216075#2160752012-11-13
3

You are looking for regular "within" non-regular. Not an answer, but related, and more amusing is the following.

There operations on languages that (however complex the language) yield a regular language. As an example there is the operator "all subsequences" (sometimes called "sparse subwords"). Starting with $\{ a^n b^{n^2}\mid n\ge 1\}$ we get $a^* b^*$.

Shallit (in his book second course in formal language theory) starts with the languages of primes in ternary notation $\{ 2,10,12,21,102,111,122,201,212,1002,\dots\}$, and shows this gives the subsequence language $\Sigma^*2\Sigma^* \cup \Sigma^*1\Sigma^*0\Sigma^* \cup \Sigma^*1\Sigma^*1\Sigma^*1\Sigma^*$, $\Sigma = \{0,1,2\}$.

Nice, huh?

0

For example {a^n b^n| n>=0} is a non-regular language, but it has infinite number of subsets that are regular languages: 1) the empty set, 2) {lambda} 3) {ab} 4) {a^2 b^2} . . . and any finite combinations of these languages.