Language is defined as:
$L = \{a \space | \space a ∈ \{0,1\}^*\ ∧ \space len(a) \text{ is a prime number}\}$
How to prove that this language is not context-free? By far I was trying to prove it using the Pumping lemma, but struggled to find a suitable string on which to perform the proof.
Clearly $1^p$ belongs to $L$ for any prime $p$. If $L$ were regular, then, by the pumping lemma, for large enough prime $p$, you can write $1^p$ as $xyz$, where $y$ is non-empty and any string of the form $xy^mz$ belongs to $L$. Choose a large enough prime $p$, and let $a$, $b$ and $c$ be the lengths of the corresponding $x$, $y$ and $z$ respectively. Then the length of $xy^mz$ is $a + mb + c$, which must be prime if $xy^mz \in L$. But as $b \neq 0$, the numbers $a + mb + c$ cannot all be prime, so $L$ cannot be regular.