At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga.
Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus.
Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.
if zero b's then there must be at least one a
if one b then there must be at least three a's
if two b's then tehre must be at least five a's
and so on
also first should come a's and only then b's
so we start with
S -> aQT (we must have at least one a)
Q -> aQ | ε (we can generate any number of a's before b)
T -> aaTb | ε (if we create at least one b we must put two a's before b)
Not the answer you are looking for? Search for more explanations.
Wow! Thanks! Here is what I came up with this morning toying around.
\[S_0 \rightarrow aaS_1b | aaS_1b | aS_1\]
\[S_1 \rightarrow S_0\epsilon | a\]
Is this equivalent?
no, for example you can't get just a, but according to rules you should be able to
however maybe you made mistake by typing because if it will be
S_1 -> S_0|ϵ|a
i think it would be ok
and aaS_1b is same as aaS_1b so why you mention it 2 times? :D
Yes you are right, I mistyped, and my computer was acting up. I did have S1->S0 | epsilon | a.
Thanks for the help!