A
production or
production rule in computer science is a
rewrite rule specifying a symbol substitution that can be recursively performed to generate new symbol sequences. A finite set of productions
![](http://info.babylon.com/onlinebox.cgi?rt=GetFile&uri=!!ARV6FUJ2JP&type=0&index=1629)
is the main component in the specification of a
formal grammar (specifically a
generative grammar). The other components are a finite set
![](http://info.babylon.com/onlinebox.cgi?rt=GetFile&uri=!!ARV6FUJ2JP&type=0&index=668)
of
nonterminal symbols, a finite set (known as an alphabet)
![](http://info.babylon.com/onlinebox.cgi?rt=GetFile&uri=!!ARV6FUJ2JP&type=0&index=2188)
of
terminal symbols that is
disjoint from
![](http://info.babylon.com/onlinebox.cgi?rt=GetFile&uri=!!ARV6FUJ2JP&type=0&index=668)
and a distinguished symbol
![](http://info.babylon.com/onlinebox.cgi?rt=GetFile&uri=!!ARV6FUJ2JP&type=0&index=1474)
that is the start symbol.