"GRAMMAR FOR FORMAL LANGUAGES"
A Grammar
, Automata
, Regular Expression
all are finite represent of any language where Language can be finite or infinite (consist of any number of strings).
A Grammar in Formal Languages defined by four tapuler objects: G(Vn, Σ, P, S) Where
Vn- Isfinite set
of variables.
Σ - Is finite set
of Language symbols (in grammar called terminals).
P - Is finite set
of Production Rules.
S - a Start variable an element in Variable set ( S ∈ Vn).
[answer]
So, in G(Vn, Σ, P, S) every element is finite that Why Grammar is called finite represent of a Language
.
In your question X production X ::= and S | ε is an example shows how grammar can be use to generate infinity large string even if production rules are finite!
Similarly any kind automata is also finite represent of a language
.
I would like to add:
Grammar with these four tuples can represent any kind of language that's why grammar is known as conman represent form of any language
. It also has practical usefulness in writing parser.
In theory study of formal languages is about representation of languages in finite form so that there nature can be understood and language classified.