Top Banner
Forma de Backus Naur Universidad Gerardo Barrios Facultad de Ciencia y Tecnolog´ ıa Lic. Victor L´opez Sandoval [email protected]
21
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Backus Naur Form

Forma de Backus Naur

Universidad Gerardo Barrios

Facultad de Ciencia y Tecnologıa

Lic. Victor Lopez [email protected]

Page 2: Backus Naur Form

Contenido

Universidad Gerardo Barrios Forma de Backus Naur

Page 3: Backus Naur Form

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

Page 4: Backus Naur Form

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

Page 5: Backus Naur Form

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

Page 6: Backus Naur Form

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

Page 7: Backus Naur Form

Introduccion

El formato Backus-Naur (BNF) es un sistema notacional para especificartipos de datos o categorıas sintacticas, tambien especifica la sintaxis de loslenguajes de programacion mediante reglas de produccion o de re-escritura.

La forma BNF, en realidad, es un conjunto de normas, que nos permitensimplificar la escritura de las gramaticas. Ası que, se suele usar esta formaalternativa para describir la gramatica y que remonta su origen a la descrip-cion que, del sanscrito, hizo el gramatico hindu Panini. No es una notacionestandarizada, aunque esta bien establecida.

Universidad Gerardo Barrios Forma de Backus Naur

Page 8: Backus Naur Form

Introduccion

El formato Backus-Naur (BNF) es un sistema notacional para especificartipos de datos o categorıas sintacticas, tambien especifica la sintaxis de loslenguajes de programacion mediante reglas de produccion o de re-escritura.

La forma BNF, en realidad, es un conjunto de normas, que nos permitensimplificar la escritura de las gramaticas. Ası que, se suele usar esta formaalternativa para describir la gramatica y que remonta su origen a la descrip-cion que, del sanscrito, hizo el gramatico hindu Panini. No es una notacionestandarizada, aunque esta bien establecida.

Universidad Gerardo Barrios Forma de Backus Naur

Page 9: Backus Naur Form

Introduccion

El formato Backus-Naur (BNF) es un sistema notacional para especificartipos de datos o categorıas sintacticas, tambien especifica la sintaxis de loslenguajes de programacion mediante reglas de produccion o de re-escritura.

La forma BNF, en realidad, es un conjunto de normas, que nos permitensimplificar la escritura de las gramaticas. Ası que, se suele usar esta formaalternativa para describir la gramatica y que remonta su origen a la descrip-cion que, del sanscrito, hizo el gramatico hindu Panini. No es una notacionestandarizada, aunque esta bien establecida.

Universidad Gerardo Barrios Forma de Backus Naur

Page 10: Backus Naur Form

Conceptos Basicos

Vamos a definir de manera preliminar los siguientes conceptos:

Forma Sentencial

Dada una gramatica GF =(∑

T ,∑

N , S, P). Una palabra x se denomina

forma sentencial, si se obtiene a partir de una derivacion con las reglas deproduccion de GF . Formalmente, x es una forma sentencial si

S → x

Sentencia

Si una forma sentencial x cumple que x ∈ Σ∗T se dice que x es una sentenciao instruccion de GR. Es decir, las sentencias estaran compuestasunicamente por sımbolos terminales.

Universidad Gerardo Barrios Forma de Backus Naur

Page 11: Backus Naur Form

Conceptos Basicos

Vamos a definir de manera preliminar los siguientes conceptos:

Forma Sentencial

Dada una gramatica GF =(∑

T ,∑

N , S, P). Una palabra x se denomina

forma sentencial, si se obtiene a partir de una derivacion con las reglas deproduccion de GF . Formalmente, x es una forma sentencial si

S → x

Sentencia

Si una forma sentencial x cumple que x ∈ Σ∗T se dice que x es una sentenciao instruccion de GR. Es decir, las sentencias estaran compuestasunicamente por sımbolos terminales.

Universidad Gerardo Barrios Forma de Backus Naur

Page 12: Backus Naur Form

Conceptos Basicos

Vamos a definir de manera preliminar los siguientes conceptos:

Forma Sentencial

Dada una gramatica GF =(∑

T ,∑

N , S, P). Una palabra x se denomina

forma sentencial, si se obtiene a partir de una derivacion con las reglas deproduccion de GF . Formalmente, x es una forma sentencial si

S → x

Sentencia

Si una forma sentencial x cumple que x ∈ Σ∗T se dice que x es una sentenciao instruccion de GR. Es decir, las sentencias estaran compuestasunicamente por sımbolos terminales.

Universidad Gerardo Barrios Forma de Backus Naur

Page 13: Backus Naur Form

Conceptos Basicos

Lenguaje Generado

Dada una gramatica GF =(∑

T ,∑

N , S, P). Se llama lenguaje asociado a

la GF , o lenguaje generado por la GF , o lenguaje descrito por GF , alconjunto denotado por L(G), tal que:

L(G) = {x|S → x;x ∈ Σ∗T }

Es decir, que el lenguaje generado por una gramatica es el conjunto detodas las sentencias de la gramatica.

Como se puede apreciar, esta es la forma en que una gramatica genera unlenguaje.

A nivel general, las gramaticas generan los lenguajes, dependiendo principal-mente de los sımbolos que se usan y de las producciones que se definen parala gramatica.

Universidad Gerardo Barrios Forma de Backus Naur

Page 14: Backus Naur Form

Conceptos Basicos

Lenguaje Generado

Dada una gramatica GF =(∑

T ,∑

N , S, P). Se llama lenguaje asociado a

la GF , o lenguaje generado por la GF , o lenguaje descrito por GF , alconjunto denotado por L(G), tal que:

L(G) = {x|S → x;x ∈ Σ∗T }

Es decir, que el lenguaje generado por una gramatica es el conjunto detodas las sentencias de la gramatica.

Como se puede apreciar, esta es la forma en que una gramatica genera unlenguaje.

A nivel general, las gramaticas generan los lenguajes, dependiendo principal-mente de los sımbolos que se usan y de las producciones que se definen parala gramatica.

Universidad Gerardo Barrios Forma de Backus Naur

Page 15: Backus Naur Form

Conceptos Basicos

Lenguaje Generado

Dada una gramatica GF =(∑

T ,∑

N , S, P). Se llama lenguaje asociado a

la GF , o lenguaje generado por la GF , o lenguaje descrito por GF , alconjunto denotado por L(G), tal que:

L(G) = {x|S → x;x ∈ Σ∗T }

Es decir, que el lenguaje generado por una gramatica es el conjunto detodas las sentencias de la gramatica.

Como se puede apreciar, esta es la forma en que una gramatica genera unlenguaje.

A nivel general, las gramaticas generan los lenguajes, dependiendo principal-mente de los sımbolos que se usan y de las producciones que se definen parala gramatica.

Universidad Gerardo Barrios Forma de Backus Naur

Page 16: Backus Naur Form

Backus Naur Form

Las reglas para la BNF son las siguientes:

BNF

Los sımbolos no terminales X ∈∑

N se representan por 〈X〉.

Los sımbolos terminales se escriben entre comillas (“a′′, “b′′, “c′′, ...).

El sımbolo asociado a las producciones “→” se reemplaza por “::=”.

Si existen dos reglas de la forma u ::= v y u ::= w se puedenrepresentar de la forma: u ::= v|w

Universidad Gerardo Barrios Forma de Backus Naur

Page 17: Backus Naur Form

Backus Naur Form

Las reglas para la BNF son las siguientes:

BNF

Los sımbolos no terminales X ∈∑

N se representan por 〈X〉.Los sımbolos terminales se escriben entre comillas (“a′′, “b′′, “c′′, ...).

El sımbolo asociado a las producciones “→” se reemplaza por “::=”.

Si existen dos reglas de la forma u ::= v y u ::= w se puedenrepresentar de la forma: u ::= v|w

Universidad Gerardo Barrios Forma de Backus Naur

Page 18: Backus Naur Form

Backus Naur Form

Las reglas para la BNF son las siguientes:

BNF

Los sımbolos no terminales X ∈∑

N se representan por 〈X〉.Los sımbolos terminales se escriben entre comillas (“a′′, “b′′, “c′′, ...).

El sımbolo asociado a las producciones “→” se reemplaza por “::=”.

Si existen dos reglas de la forma u ::= v y u ::= w se puedenrepresentar de la forma: u ::= v|w

Universidad Gerardo Barrios Forma de Backus Naur

Page 19: Backus Naur Form

Backus Naur Form

Las reglas para la BNF son las siguientes:

BNF

Los sımbolos no terminales X ∈∑

N se representan por 〈X〉.Los sımbolos terminales se escriben entre comillas (“a′′, “b′′, “c′′, ...).

El sımbolo asociado a las producciones “→” se reemplaza por “::=”.

Si existen dos reglas de la forma u ::= v y u ::= w se puedenrepresentar de la forma: u ::= v|w

Universidad Gerardo Barrios Forma de Backus Naur

Page 20: Backus Naur Form

Backus Naur Form

Las reglas para la BNF son las siguientes:

BNF

Los sımbolos no terminales X ∈∑

N se representan por 〈X〉.Los sımbolos terminales se escriben entre comillas (“a′′, “b′′, “c′′, ...).

El sımbolo asociado a las producciones “→” se reemplaza por “::=”.

Si existen dos reglas de la forma u ::= v y u ::= w se puedenrepresentar de la forma: u ::= v|w

Universidad Gerardo Barrios Forma de Backus Naur

Page 21: Backus Naur Form

Actividad

Construya una gramatica formal, con al menos 5 producciones yreescribalo en la forma BNF.

¿Que gramatica genera el lenguaje L = {1, 11, 111, 1111, ...}? Escriba lagramatica en su forma BNF

Universidad Gerardo Barrios Forma de Backus Naur