I am writing somthing about Ppumping Lemma. I know that the language $L = \{ a^nb^n| n  0 \}$ is context-free. But I don't understand how this language satisfies the conditions of pumping lemma (for context-free languages) ?if we pick the string $s = a^pb^p, |s| > p , |vxy| < p \land |vy| > 0$.it seems it will be out of the language when we pump it (pump up or down) or there is something I'm missing.Any explanation would help.Edit: I am applying pumping lemma to a^nb^n and it fails to stay in the language for all cases. So, why is it Context free?
why does ${a^nb^n}$ fit the pumping lemma for context-free languages?
context free;pumping lemma
This language satisfies the conditions of the Pumping lemma. (By the way, your question title is wrong: you are not asking why it is context-free; you are asking why it satisfies the conditions of the lemma, which it does.)Take the string s=a^mb^m and assume m>0. Don't use p or n, otherwise it is confusing, because those letters are used in the lemma. Now let v=a, y=b, x=, u=a^(m-1), z=b^(m-1). You can definitely pump it as much as you want. In other words, you take a string such as aaaaaabbbbb, then you pick the two middle letters: aaaa ab bbbb. Then you pump them: aaaa aaabbb bbbb. Still in the language.