For every language L over the alphabet Σ, let superstring(L) = {$xyz$ | $y ∈$ L and $x, z ∈ Σ*$}. Prove that if L is a context-free language, then superstring(L) is also a context-free language.
I know (and able to demonstrate) that context-free language are closed under prefix, suffix and substring (also reverse).
So I can write substring(L) = prefix(suffix(L)) = prefix(prefix($L^R$)$^R$)
Can I formulate a similar reasoning for superstring? I would leave aside thinking that are based on the complement of substring, since context-free language aren't closed under complement operation.