I am given the language:
$L = $ {${a^kb^k | k > 0 }$}*
And i am asked to design a Context Free Grammar for this language. Can anyone help me in this one? Like if there is a step by step guide that i should follow? I'm kind of confused with the kleene star in the end as i don't know how is the information supposed to be saved in order to be repeated. I am new and i don't know many things about CFG's. Please if you think that my question is too general please don't down-vote, please tell me where to go, like find a tutorial somewhere because i have seen a few in YouTube and i didn't find anything that would help me in this kind of CFG. Thanks.
You don’t have to save anything. If $L_0=\{a^kb^k:k>0\}$, your $L$ is simply $L_0^*$, the language of all finite strings of words in $L_0$. Thus, besides the empty word you get all words in $L_0$, all words in $L_0^2$, and so on. For instance, you get $aabb$, $abaaabbb$, and $abaabbabaaabbb$. If you can design a CFG for $L_0$, it takes only a very minor addition to convert it to a CFG for $L$, so I would begin by working on a CFG for $L_0$; there is one with only two productions.