Context Free Grammar
Def: For every ContextFreeLanguage there is a ContextFreeGrammar that generates it and a PushDownAutomata that recognizes it.
A context free grammar consists of a set of rewritting rules or productions of the form
symbol --> symbol symbol...