Pumping up your language
A formal language can be shown to be non-regular using a theorem called the Pumping Lemma, which states that any string beyond a certain length which belongs to a regular language can be divided into three strings, where repeating the middle string produces another string in the language. A similar theorem, the uvwxy theorem, does the same thing for context-free languages.
Read more »