*70*

# BNF Notation

BNF stands for **Backus-Naur Form**. It is used to write a formal representation of a context-free grammar. It is also used to describe the syntax of a programming language.

BNF notation is basically just a variant of a context-free grammar.

### In BNF, productions have the form:

Where leftside ∈ (V_{n}∪ V_{t})+ and definition ∈ (V_{n}∪ V_{t})*. In BNF, the leftside contains one non-terminal.

We can define the several productions with the same leftside. All the productions are separated by a vertical bar symbol “|”.

There is the production for any grammar as follows:

In BNF, we can represent above grammar as follows:

Next TopicYACC