automationregular-languagedfanfapumping-lemma

Why L={wxw^R| w, x belongs to {a,b}^+ } is a regular language


Using pumping lemma, we can easily prove that the language L1 = {WcW^R|W ∈ {a,b}*} is not a regular language. (the alphabet is {a,b,c}; W^R represents the reverse string W)

However, If we replace character c with "x"(x ∈ {a,b}+), say, L2 = {WxW^R| x, W ∈ {a,b}^+}, then L2 is a regular language.

Could you give me some ideas?


Solution

  • If we replace character c with x where (x ∈ {a,b}+), say, L2 = {WXWR| x, W ∈ {a,b}+}, then L2 is a regular language.

    Yes, L2 is Regular Language :).

    You can write regular expression for L2 too.

    Language L2 = {WXWR| x, W ∈ {a,b}+} means:

    Example of this kind of strings can be following:

    aabababa, as follows:

       a    ababab    a  
      --   --------   --
       w     X        W^R  
    

    or it can be also:

    babababb, as follows:

       b    ababab    b
      --   --------   --
       w     X        W^R
    

    See length of W is not a constraint in language definition.

    so any string WXWR can be assume equals to a(a + b)+a or b(a + b)+b

        a    (a + b)+   a
       ---   --------  ---
        W      X       W^R  
    

    or

        b    (a + b)+   b
       ---   --------  ---
        W      X       W^R    
    

    And Regular Expression for this language is: a(a + b)+a + b(a + b)+b

    Don't mix WXWR with WCWR, its X with + that makes language regular. Think by including X that is (a + b)* we can have finite choice for W that is a and b (finite is regular).

    Language WXWR can be say: if start with a ends with a and if start with b end with b. so correspondingly we need two final states.

    ITs DFA is as given below.

    DFA