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 ∈ (Vn∪ Vt)+ and definition ∈ (Vn∪ Vt)*. 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: