backus naur form

21
Forma de Backus Naur Universidad Gerardo Barrios Facultad de Ciencia y Tecnolog´ ıa Lic. Victor L´opez Sandoval [email protected]

Upload: ivanalejandro

Post on 08-Dec-2015

380 views

Category:

Documents


3 download

TRANSCRIPT

Forma de Backus Naur

Universidad Gerardo Barrios

Facultad de Ciencia y Tecnologıa

Lic. Victor Lopez [email protected]

Contenido

Universidad Gerardo Barrios Forma de Backus Naur

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

Recordemos

¿Que es una produccion?.

¿Que es derivacion?

¿Que una Gramatica Formal?

Universidad Gerardo Barrios Forma de Backus Naur

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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