La gramàtica lliure de context és una gramàtica formal, la sintaxi o l'estructura d'un llenguatge formal es pot descriure mitjançant la gramàtica lliure de context (CFG), un tipus de gramàtica formal. La gramàtica té quatre tuples: (V,T,P,S).
V - It is the collection of variables or nonterminal symbols. T - It is a set of terminals. P - It is the production rules that consist of both terminals and nonterminals. S - It is the Starting symbol.>
Es diu que una gramàtica és la gramàtica lliure de context si cada producció té la forma de:
pivot del servidor sql
G ->(V∪T)*, on G ∊ V>
- I el costat esquerre de la G, aquí a l'exemple només pot ser una variable, no pot ser un terminal.
- Però al costat dret aquí pot ser una variable o una terminal o totes dues combinacions de variable i terminal.
L'equació anterior indica que tota producció que conté qualsevol combinació de la variable 'V' o el terminal 'T' es diu que és una gramàtica lliure de context.
Per exemple, la gramàtica A = { S, a, b, P, S} té producció:
- Aquí S és el símbol inicial.
- {a,b} són els terminals representats generalment amb caràcters petits.
- P és variable juntament amb S.
S->aS S-> bSa>
però
Limitacions de la gramàtica lliure de context
A part de tots els usos i la importància de la gramàtica lliure de context en el disseny del compilador i en l'àmbit de la informàtica, hi ha algunes limitacions que s'aborden, és a dir, els CFG són menys expressius, i ni l'anglès ni el llenguatge de programació es poden expressar amb Context-Free. Gramàtica. La gramàtica lliure de context pot ser ambigua i significa que podem generar diversos arbres d'anàlisi de la mateixa entrada. Per a algunes gramàtiques, la gramàtica lliure de context pot ser menys eficient a causa de la complexitat temporal exponencial. I l'informe d'errors menys precís com el sistema d'informe d'errors de CFG no és tan precís que pugui donar missatges i informació d'error més detallats.