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?