SlideShare ist ein Scribd-Unternehmen logo
1 von 14
GRAMÁTICA DE
LIBRE CONTEXTO
¿QUÉ ES LA GRAMÁTICA DE LIBRE
CONTEXTO O GLC?
• Gramática
• Permite definir un lenguaje mediante reglas que nos permiten generar o producir
cadenas de un lenguaje.
• Estas gramáticas son similares a las gramáticas de los lenguajes naturales, pero
mucho más restrictivas y sencillas.
• Los lenguajes libres del contexto son aquellos que pueden ser reconocidos por un
autómata de pila determinístico o no determinístico.
DEFINICIÓN FORMAL DE LA GRAMÁTICA
• G = (VN, VT, S, P) donde:
• VN (vocabulario no terminal): conjunto finito de símbolos que permiten
representar estados intermedios de la generación de las palabras del lenguaje
• VT (vocabulario terminal): conjunto finito de los símbolos que forman las
palabras del lenguaje. N ∩ T = ᴓ
• S ∈ VN (símbolo inicial o axioma): a partir del que se aplican las reglas de la
gramática para obtener las distintas palabras del lenguaje.
• P es el conjunto de reglas de producción (reglas de derivación o reglas de
reescritura) que permiten generar las palabras del lenguaje.
UN EJEMPLO 1 PARA CIERTAS
EXPRESIONES ARITMÉTICAS
G = (VN, VT, S, P)
• VT={ +, -, , *, ( , ), id }
• VN= { E}
• S=E
• P:
1. E→E+E 4. E→ E * E
2. E→E- E 5. E→ E / E
3. E→(E) 6. E → id
Nota: También los podemos ponerlo como una sola producción con alternativas
E → E + E | E - E | E  E | E * E | ( E) | id
EJEMPLO 2: PARA UNA ORACIÓN DEFINIDA
• ORACIÓN SUJETO PREDICADO | PREDICADO
• SUJETO ARTÍCULO NOMBRE
• ARTICULO el | la
• NOMBRE casa | niño
• PREDICADO VERBO COMPLEMENTO
• VERBO corre | es
• COMPLEMENTO bien | obediente | bonita
BNF (BACKUS-NAUR FORM).
• Notación utilizada frecuentemente para escribir gramáticas de tipo 2 o libres
del contexto.
 Esta notación sigue las siguientes convenciones:
1. no terminales se escriben entre < >
2. terminales son cadenas de caracteres sin < >
3. en lugar de ® se utiliza :: = que se lee “se define como”
4. varias reglas del tipo
<A> :: = <B1>
<A> :: = <B2> Se pueden escribir como
… <A> :: = <B1> ½ <B2> ½ ... ½ <Bn>
<A> :: = <Bn>
DADA LA SIGUIENTE CADENA, PROPORCIONE LAS PRODUCCIONES
NECESARIAS EN GRAMÁTICA LIBRE DE CONTEXTO QUE GENERE
DICHA CADENA. PROPORCIONE UNA DEMOSTRACIÓN CON
DERIVACIÓN POR LA IZQUIERDA.
Cadena:
((a,a),a,(a))
Solución:
S -> (L) | a
L -> L,S | S
Gramática: G=(V,T,P,S) G=({S,L},{a,","},P,S)
Demostración:
S ==> (L) ==> (L,S) ==> (L,S,S) ==> (S,S,S) ==> ((L),S,S) ==>
==> ((L,S),S,S) ==> (S,S),S,S) ==> ((a,S),S,S) ==> ((a,a),S,S) ==>
==> ((a,a),a,S) ==> ((a,a),a,(L)) ==> ((a,a),a,(S)) ==> ((a,a),a,(a))
SEA LA GRAMÁTICA:
G=({S},{A,B},S,P), DONDE P={(S->ASB),(S->AB)}.
DETERMINAR EL LENGUAJE QUE GENERA
Solución:
S->aSb
S->ab
S==>aSb==>aaSbb==>aaaSbbb==>aaaaaSbbbbb ... ==>
==>a(n-1)Sb(n-1)==>anbn
L(G)={anbn / n>=1}
EJEMPLO 1: GENERADOR DE NOMBRE DE
PERSONAS
1. Hacer una gramática independiente del contexto (G.I.C), que genere nombres
de persona, mínimo un nombre y un apellido, máximo dos nombres y dos
apellidos. Cada nombre y apellido debe comenzar por mayúscula.
Nota: Se tiene en cuenta que Є=vacío; no se aceptan apellidos compuestos.
1. nombre → nom nom2 esp nom nom2
2. nom2 → esp nom │Є
3. nom → nom min │may
4. may → A│B│C│D│…│Z
5. min → a│b│c│d│…│z
6. esp → “ “
EJEMPLO 1: GENERADOR DE NOMBRE DE
PERSONAS
Ej: Ana Perez Zea
Resolución:
S= nombre (axioma inicial)
nombre= nom nom2 esp nom nom2
nom min Є esp nom min esp nom (3)(2)(3)(2)
nom min min Є esp nom min min esp nom min (3)(3)(3)
may min min Є esp nom min min min esp nom min min (3)(3)(3)
may min min Є esp nom min min min min esp may min min (3)(3)
may min min Є esp may min min min min esp may min min (3)
A n a P e r e z Z e a
EJEMPLO 1: GENERADOR DE NOMBRE DE
PERSONAS
ÁRBOL DE ANÁLISIS SINTÁCTICO
EJEMPLO 2: CÓDIGO EN LENGUAJE C
1. Hacer una gramática independiente del contexto (G.I.C), del siguiente código en C:
# include <stdio.h>
# include <stdio.h>
main()
{
int i, var1, var2, total;
clrscr();
printf(“Ingrese num 1:”);
scanf(“%d”,&var1);
printf(“Ingrese num 2:”);
scanf(“%d”,&var2);
total=var1+var2;
printf(“la suma de num 1 y num 2 es: ”,total);
getch();
Return 0;
}
EJEMPLO 2: CÓDIGO EN LENGUAJE C
Reglas de producción:
<CAB>::= <OPNUM><ESP>include
<ACA><LIB><CCA>
<LIB>::= stdio.h|conio.h
<OPNUM>::= #
<ACA>::= <
<CCA>::= >
<FUNC>::=<TIPOF><PR><AP><CP>
<ABLL><CELL>
<TIPOF>::= void|int|Є
<TIPOV>::= int|float|doublé
<PR>::= main
<AP>::= (
<CP>::= )
<FSENT>::= ;
<COMA>::= ,
<AMP>::= &
<VARS>::=<TIPOV><VAR><FSENT>
<VAR>::=<CADENA><COMA><VAR>|
<CADENA>
<FUNCR>::= <FR><AP><CP><FSENT>
<TIPFORM>::= %d|%i|%f|%s|%c
<FR>::= clrscr|getch|printf|scanf|return
<OPBASIC>::= +|-|*|/
<ABCO>::= “
<CECO>::= ”
EJEMPLO 2: CÓDIGO EN LENGUAJE C
<OPVAR>::=<VAR><OPBASIC><VAR>
<CADENA>::= <PALABRA><PALABRA2>
<PALABRA2>::=<ESP><CADENA>|Є
<PALABRA>::=<PALABRA><MIN>|<PALABRA><NUM>|<MAY>|<MIN>|<ESP>
<MAY>::= A|B|C|…|Z
<MIN>::= a|b|c|…|z
<NUM>::= 0|1|2|…|9
<FPRINTF>::=<FR><AP><ABCO><CADENA><CECO><CADENA2><CP><FSENT>
<CADENA2>::= <COMA><VAR>|Є
<FSCANF>::=<FR><AP><ABCO><TIPFORM><CECO><AMP><VAR><CP><FSENT>
<FRETURN>::=<FR><VAL><FSENT>
<VAL>::= 0|1
<ESP>::=“ “
<ABLL>::= {
<CELL>:: }

Weitere ähnliche Inhalte

Was ist angesagt?

Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticasSantiago Ramirez
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSDarwin Durand
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensambladoriagardea
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionjorge severino
 
Unidad 3 ensambladores
Unidad 3 ensambladoresUnidad 3 ensambladores
Unidad 3 ensambladoresGustavo Davila
 
Comandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbenchComandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbenchRobedgar MX
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interpreteperlallamas
 
Gramaticas de Chomsky
Gramaticas de ChomskyGramaticas de Chomsky
Gramaticas de ChomskyBertha Vega
 
Clase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlinkClase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlinkInfomania pro
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2perlallamas
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionjorge severino
 

Was ist angesagt? (20)

Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
PERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOSPERSISTENCIA BASADA EN ARCHIVOS
PERSISTENCIA BASADA EN ARCHIVOS
 
Analizador Léxico en C++
Analizador Léxico en C++Analizador Léxico en C++
Analizador Léxico en C++
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacion
 
Expresiones regulares y gramaticas
Expresiones regulares y gramaticasExpresiones regulares y gramaticas
Expresiones regulares y gramaticas
 
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo MinilenguajeCompiladores, Analisis Lexico, Ejemplo Minilenguaje
Compiladores, Analisis Lexico, Ejemplo Minilenguaje
 
GRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUASGRAMATICAS AMBIGUAS
GRAMATICAS AMBIGUAS
 
Unidad 3 ensambladores
Unidad 3 ensambladoresUnidad 3 ensambladores
Unidad 3 ensambladores
 
Tabla de símbolos
Tabla de símbolosTabla de símbolos
Tabla de símbolos
 
Comandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbenchComandos básicos para bases de datos mysql y workbench
Comandos básicos para bases de datos mysql y workbench
 
Gramática y autómatas
Gramática y autómatasGramática y autómatas
Gramática y autómatas
 
Tipos de autómatas, y operaciones de conjunto entre autómatas
Tipos de autómatas, y operaciones de conjunto entre autómatasTipos de autómatas, y operaciones de conjunto entre autómatas
Tipos de autómatas, y operaciones de conjunto entre autómatas
 
Ordenamientos externos
Ordenamientos externosOrdenamientos externos
Ordenamientos externos
 
Jerarquia de chomsky
Jerarquia de chomskyJerarquia de chomsky
Jerarquia de chomsky
 
Estructura de un interprete
Estructura de un interpreteEstructura de un interprete
Estructura de un interprete
 
Gramaticas de Chomsky
Gramaticas de ChomskyGramaticas de Chomsky
Gramaticas de Chomsky
 
Clase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlinkClase10 ejemplos asm con tasm y tlink
Clase10 ejemplos asm con tasm y tlink
 
Estructura de un compilador 2
Estructura de un compilador 2Estructura de un compilador 2
Estructura de un compilador 2
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacion
 

Andere mochten auch

Gramatica libre de contexto
Gramatica libre de contextoGramatica libre de contexto
Gramatica libre de contextoDaniel Molina
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO Guillermo Iván Prisco Pérez
 
Simplificación de gramáticas independientes de contexto
Simplificación de gramáticas independientes de contextoSimplificación de gramáticas independientes de contexto
Simplificación de gramáticas independientes de contextoEduardo Tello
 
Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)abelrod12
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contextoVerónica Es'Loo
 
Analisis Sintactico
Analisis SintacticoAnalisis Sintactico
Analisis Sintacticolauracecilia
 
Unidad 1 lenguajes regulares
Unidad 1 lenguajes regularesUnidad 1 lenguajes regulares
Unidad 1 lenguajes regularesluisita91
 

Andere mochten auch (8)

Gramatica libre de contexto
Gramatica libre de contextoGramatica libre de contexto
Gramatica libre de contexto
 
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
LENGUAJES LIBRES DE CONTEXTO Y GRAMATICA LIBRES DE CONTEXTO
 
Simplificación de gramáticas independientes de contexto
Simplificación de gramáticas independientes de contextoSimplificación de gramáticas independientes de contexto
Simplificación de gramáticas independientes de contexto
 
Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)Gramática de contexto libre abel rodriguez (08 1297)
Gramática de contexto libre abel rodriguez (08 1297)
 
Lenguajes libre de contexto
Lenguajes libre de contextoLenguajes libre de contexto
Lenguajes libre de contexto
 
Analisis Sintactico
Analisis SintacticoAnalisis Sintactico
Analisis Sintactico
 
Unidad 1 lenguajes regulares
Unidad 1 lenguajes regularesUnidad 1 lenguajes regulares
Unidad 1 lenguajes regulares
 
La gramatica
La gramaticaLa gramatica
La gramatica
 

Ähnlich wie Gramática de libre contexto

Ähnlich wie Gramática de libre contexto (20)

Gramáticas formales
Gramáticas formales Gramáticas formales
Gramáticas formales
 
lenguajes y_gramaticas
lenguajes y_gramaticaslenguajes y_gramaticas
lenguajes y_gramaticas
 
Gramaticas y lic
Gramaticas y licGramaticas y lic
Gramaticas y lic
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
La tex
La texLa tex
La tex
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
Presentacion automata grupo 1 unibe 02-02-2018
Presentacion automata grupo 1   unibe 02-02-2018Presentacion automata grupo 1   unibe 02-02-2018
Presentacion automata grupo 1 unibe 02-02-2018
 
Expresiones regulares y gramáticas
Expresiones regulares y gramáticasExpresiones regulares y gramáticas
Expresiones regulares y gramáticas
 
sintaxis de los lenguajes de programación
sintaxis de los lenguajes de programaciónsintaxis de los lenguajes de programación
sintaxis de los lenguajes de programación
 
Guion scripts
Guion scriptsGuion scripts
Guion scripts
 
Abro paréntesis, abro paréntesis, cierro parentesis, .
Abro paréntesis, abro paréntesis, cierro parentesis, .Abro paréntesis, abro paréntesis, cierro parentesis, .
Abro paréntesis, abro paréntesis, cierro parentesis, .
 
Abro paréntesis, abro paréntesis, cierro parentesis, .
Abro paréntesis, abro paréntesis, cierro parentesis, .Abro paréntesis, abro paréntesis, cierro parentesis, .
Abro paréntesis, abro paréntesis, cierro parentesis, .
 
Guia 2 expresiones algebraicas2013
Guia 2 expresiones algebraicas2013Guia 2 expresiones algebraicas2013
Guia 2 expresiones algebraicas2013
 
LaTeX
LaTeXLaTeX
LaTeX
 
Teoria de lenguajes
Teoria de lenguajesTeoria de lenguajes
Teoria de lenguajes
 
Automat1111
Automat1111Automat1111
Automat1111
 
Expresiones Regulares y Gramáticas
Expresiones Regulares y GramáticasExpresiones Regulares y Gramáticas
Expresiones Regulares y Gramáticas
 

Kürzlich hochgeladen

Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresJonathanCovena1
 
PLAN LECTOR 2024 integrado nivel inicial-miercoles 10.pptx
PLAN LECTOR 2024  integrado nivel inicial-miercoles 10.pptxPLAN LECTOR 2024  integrado nivel inicial-miercoles 10.pptx
PLAN LECTOR 2024 integrado nivel inicial-miercoles 10.pptxCamuchaCrdovaAlonso
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Katherine Concepcion Gonzalez
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024IES Vicent Andres Estelles
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Juan Martín Martín
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxpaogar2178
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfapunteshistoriamarmo
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docxEliaHernndez7
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfEduardoJosVargasCama1
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxBeatrizQuijano2
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdfDemetrio Ccesa Rayme
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfGruberACaraballo
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfMercedes Gonzalez
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxhenarfdez
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024IES Vicent Andres Estelles
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfRaulGomez822561
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfcarolinamartinezsev
 

Kürzlich hochgeladen (20)

Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
PLAN LECTOR 2024 integrado nivel inicial-miercoles 10.pptx
PLAN LECTOR 2024  integrado nivel inicial-miercoles 10.pptxPLAN LECTOR 2024  integrado nivel inicial-miercoles 10.pptx
PLAN LECTOR 2024 integrado nivel inicial-miercoles 10.pptx
 
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
Procedimientos para la planificación en los Centros Educativos tipo V ( multi...
 
Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docx
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdfPROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
PROPUESTA COMERCIAL SENA ETAPA 2 ACTIVIDAD 3.pdf
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
La Evaluacion Formativa SM6 Ccesa007.pdf
La Evaluacion Formativa SM6  Ccesa007.pdfLa Evaluacion Formativa SM6  Ccesa007.pdf
La Evaluacion Formativa SM6 Ccesa007.pdf
 
Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdfFeliz Día de la Madre - 5 de Mayo, 2024.pdf
Feliz Día de la Madre - 5 de Mayo, 2024.pdf
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 

Gramática de libre contexto

  • 2. ¿QUÉ ES LA GRAMÁTICA DE LIBRE CONTEXTO O GLC? • Gramática • Permite definir un lenguaje mediante reglas que nos permiten generar o producir cadenas de un lenguaje. • Estas gramáticas son similares a las gramáticas de los lenguajes naturales, pero mucho más restrictivas y sencillas. • Los lenguajes libres del contexto son aquellos que pueden ser reconocidos por un autómata de pila determinístico o no determinístico.
  • 3. DEFINICIÓN FORMAL DE LA GRAMÁTICA • G = (VN, VT, S, P) donde: • VN (vocabulario no terminal): conjunto finito de símbolos que permiten representar estados intermedios de la generación de las palabras del lenguaje • VT (vocabulario terminal): conjunto finito de los símbolos que forman las palabras del lenguaje. N ∩ T = ᴓ • S ∈ VN (símbolo inicial o axioma): a partir del que se aplican las reglas de la gramática para obtener las distintas palabras del lenguaje. • P es el conjunto de reglas de producción (reglas de derivación o reglas de reescritura) que permiten generar las palabras del lenguaje.
  • 4. UN EJEMPLO 1 PARA CIERTAS EXPRESIONES ARITMÉTICAS G = (VN, VT, S, P) • VT={ +, -, , *, ( , ), id } • VN= { E} • S=E • P: 1. E→E+E 4. E→ E * E 2. E→E- E 5. E→ E / E 3. E→(E) 6. E → id Nota: También los podemos ponerlo como una sola producción con alternativas E → E + E | E - E | E E | E * E | ( E) | id
  • 5. EJEMPLO 2: PARA UNA ORACIÓN DEFINIDA • ORACIÓN SUJETO PREDICADO | PREDICADO • SUJETO ARTÍCULO NOMBRE • ARTICULO el | la • NOMBRE casa | niño • PREDICADO VERBO COMPLEMENTO • VERBO corre | es • COMPLEMENTO bien | obediente | bonita
  • 6. BNF (BACKUS-NAUR FORM). • Notación utilizada frecuentemente para escribir gramáticas de tipo 2 o libres del contexto.  Esta notación sigue las siguientes convenciones: 1. no terminales se escriben entre < > 2. terminales son cadenas de caracteres sin < > 3. en lugar de ® se utiliza :: = que se lee “se define como” 4. varias reglas del tipo <A> :: = <B1> <A> :: = <B2> Se pueden escribir como … <A> :: = <B1> ½ <B2> ½ ... ½ <Bn> <A> :: = <Bn>
  • 7. DADA LA SIGUIENTE CADENA, PROPORCIONE LAS PRODUCCIONES NECESARIAS EN GRAMÁTICA LIBRE DE CONTEXTO QUE GENERE DICHA CADENA. PROPORCIONE UNA DEMOSTRACIÓN CON DERIVACIÓN POR LA IZQUIERDA. Cadena: ((a,a),a,(a)) Solución: S -> (L) | a L -> L,S | S Gramática: G=(V,T,P,S) G=({S,L},{a,","},P,S) Demostración: S ==> (L) ==> (L,S) ==> (L,S,S) ==> (S,S,S) ==> ((L),S,S) ==> ==> ((L,S),S,S) ==> (S,S),S,S) ==> ((a,S),S,S) ==> ((a,a),S,S) ==> ==> ((a,a),a,S) ==> ((a,a),a,(L)) ==> ((a,a),a,(S)) ==> ((a,a),a,(a))
  • 8. SEA LA GRAMÁTICA: G=({S},{A,B},S,P), DONDE P={(S->ASB),(S->AB)}. DETERMINAR EL LENGUAJE QUE GENERA Solución: S->aSb S->ab S==>aSb==>aaSbb==>aaaSbbb==>aaaaaSbbbbb ... ==> ==>a(n-1)Sb(n-1)==>anbn L(G)={anbn / n>=1}
  • 9. EJEMPLO 1: GENERADOR DE NOMBRE DE PERSONAS 1. Hacer una gramática independiente del contexto (G.I.C), que genere nombres de persona, mínimo un nombre y un apellido, máximo dos nombres y dos apellidos. Cada nombre y apellido debe comenzar por mayúscula. Nota: Se tiene en cuenta que Є=vacío; no se aceptan apellidos compuestos. 1. nombre → nom nom2 esp nom nom2 2. nom2 → esp nom │Є 3. nom → nom min │may 4. may → A│B│C│D│…│Z 5. min → a│b│c│d│…│z 6. esp → “ “
  • 10. EJEMPLO 1: GENERADOR DE NOMBRE DE PERSONAS Ej: Ana Perez Zea Resolución: S= nombre (axioma inicial) nombre= nom nom2 esp nom nom2 nom min Є esp nom min esp nom (3)(2)(3)(2) nom min min Є esp nom min min esp nom min (3)(3)(3) may min min Є esp nom min min min esp nom min min (3)(3)(3) may min min Є esp nom min min min min esp may min min (3)(3) may min min Є esp may min min min min esp may min min (3) A n a P e r e z Z e a
  • 11. EJEMPLO 1: GENERADOR DE NOMBRE DE PERSONAS ÁRBOL DE ANÁLISIS SINTÁCTICO
  • 12. EJEMPLO 2: CÓDIGO EN LENGUAJE C 1. Hacer una gramática independiente del contexto (G.I.C), del siguiente código en C: # include <stdio.h> # include <stdio.h> main() { int i, var1, var2, total; clrscr(); printf(“Ingrese num 1:”); scanf(“%d”,&var1); printf(“Ingrese num 2:”); scanf(“%d”,&var2); total=var1+var2; printf(“la suma de num 1 y num 2 es: ”,total); getch(); Return 0; }
  • 13. EJEMPLO 2: CÓDIGO EN LENGUAJE C Reglas de producción: <CAB>::= <OPNUM><ESP>include <ACA><LIB><CCA> <LIB>::= stdio.h|conio.h <OPNUM>::= # <ACA>::= < <CCA>::= > <FUNC>::=<TIPOF><PR><AP><CP> <ABLL><CELL> <TIPOF>::= void|int|Є <TIPOV>::= int|float|doublé <PR>::= main <AP>::= ( <CP>::= ) <FSENT>::= ; <COMA>::= , <AMP>::= & <VARS>::=<TIPOV><VAR><FSENT> <VAR>::=<CADENA><COMA><VAR>| <CADENA> <FUNCR>::= <FR><AP><CP><FSENT> <TIPFORM>::= %d|%i|%f|%s|%c <FR>::= clrscr|getch|printf|scanf|return <OPBASIC>::= +|-|*|/ <ABCO>::= “ <CECO>::= ”
  • 14. EJEMPLO 2: CÓDIGO EN LENGUAJE C <OPVAR>::=<VAR><OPBASIC><VAR> <CADENA>::= <PALABRA><PALABRA2> <PALABRA2>::=<ESP><CADENA>|Є <PALABRA>::=<PALABRA><MIN>|<PALABRA><NUM>|<MAY>|<MIN>|<ESP> <MAY>::= A|B|C|…|Z <MIN>::= a|b|c|…|z <NUM>::= 0|1|2|…|9 <FPRINTF>::=<FR><AP><ABCO><CADENA><CECO><CADENA2><CP><FSENT> <CADENA2>::= <COMA><VAR>|Є <FSCANF>::=<FR><AP><ABCO><TIPFORM><CECO><AMP><VAR><CP><FSENT> <FRETURN>::=<FR><VAL><FSENT> <VAL>::= 0|1 <ESP>::=“ “ <ABLL>::= { <CELL>:: }