How to determine whether a language is regular or not using Myhill-Nerode theorem? I already have got this notes from my lectures, so I don't want a theoretical answer something that repeats the same thing: Here are the steps to prove that a language is not regular using the Myhill-Nerode theorem: 1) Define the relation L on the language L as follows: For any two strings x and y in *, x L y if and only if, for any string z in *, either all of xz and yz are in L, or neither of them are in L. 2) Construct an infinite set of pairwise distinguishable strings {w1, w2, w3, ...} such that for any i and j, if i j, then w i and w j are not equivalent under the relation L. To show that the set of strings is pairwise distinguishable, you need to show that for any two distinct strings w i and w j , there exists a string z such that either w i z is in L and w j z is not in L, or w j z is in L and w i z is not in L. This can be done by constructing such a string z for each pair of strings. 3) Show that there are an infinite number of equivalence classes of strings under L, which implies that the language L is not regular. If you can successfully perform these steps and show that there are an infinite number of equivalence classes, you can conclude that the language L is not regular. Language is regular if and only if there are a finite number of equivalence classes of strings under a certain relation. I want an explanation with some examples (regular language and non-regular language) to get an understanding of this. .