Explain the different operations on Regular language in TOC.


A language is a set of strings from some alphabet (finite or infinite). In other words, any subset L of E* is a language in TOC.

Some special languages are as follows −

  • {} The empty set/language, containing no string.
  • {s} A language containing one string, the empty string.

Examples

  • E = {0, 1}

    L = {x | x is in E* and x contains an even number of 0’s}

  • E = {0, 1, 2,., 9, .}

    L = {x | x is in E* and x forms a finite length real number}

    = {0, 1.5, 9.326,.}

  • E = {a, b, c,., z, A, B,., Z}

    L = {x | x is in E* and x is a Pascal reserved word}

    = {BEGIN, END, IF,...}

  • E = {Pascal reserved words} U { (, ), ., :, ;,...} U {Legal Pascal identifiers}

    L = {x | x is in E* and x is a syntactically correct Pascal program}

  • E = {English words}

    L = {x | x is in E* and x is a syntactically correct English sentence}

Operations on Regular Languages

Some of the operations on regular languages are as follows −

  • Union
  • Intersection
  • Difference
  • Concatenation
  • kleen * closure

Let us understand these operations one by one.

Union

If Ll and If L2 are two regular languages, their union Ll u L2 will also be regular.

For example, Ll = {an I n > O} and L2 = {bn I n > O}

L3 = Ll U L2 = {an U bn I n > O} is also regular.

Intersection

If Ll and If L2 are two regular languages, their intersection Ll n L2 will also be regular.

For example,

Ll= {am bn I n > 0 and m > O} and

L2= {am bn U bn am I n > 0 and m > O}

L3 = Ll n L2 = {am bn I n > 0 and m > O} is also regular.

Concatenation

If Ll and If L2 are two regular languages, their concatenation L1.L2 will also be regular.

For example,

Ll = {an I n > 0} and L2 = {bn I n > O}

L3 = L1.L2 = {am . bn I m > 0 and n > O} is also regular.

Kleene Closure

If Ll is a regular language, its Kleene closure Ll* will also be regular.

For example, Ll = (a U b ), Ll* = (a U b)*

Complement

If L(G) is a regular language, its complement L'(G) will also be regular. Complement of a language can be found by subtracting strings which are in L(G) from all possible strings.

For example,

L(G) = {an I n > 3}

L'(G) = {an I n <= 3}

Note: Two regular expressions are equivalent, if languages generated by them are the same. For example, (a+b*)* and (a+b)* generate the same language. Every string which is generated by (a+b*)* is also generated by (a+b)* and vice versa .

Example 1

Write the regular expression for the language accepting all combinations of a's, over the set l: = {a}

All combinations of a's mean a may be zero, single, double and so on. If a is appearing zero times, that means a null string. That is, we expect the set of {E, a, aa, aaa, ....}.

So we give a regular expression for this as follows −

R = a*

That is Kleen closure of a.

Updated on: 11-Jun-2021

11K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements