15-453 Formal Languages, Automata, and Computation
Lecture 8: Context-Free Grammars
There are many languages which cannot be recognized by a finite
automaton. Context-free grammars (CFGs), originally developed for the
description of natural language, provide a more powerful means to define
languages. We define them and investigate some elementary examples and
properties of context-free grammars. CFGs play an important role in
programming languages, since they are used to describe their syntax.